diff --git a/CHANGES b/CHANGES
--- a/CHANGES
+++ b/CHANGES
@@ -3,3 +3,6 @@
 
 0.5.1: 3 Aug 2011
    * support for delete 
+
+0.6.7: 18 Oct 2011
+   * implement almost all TH1 class methods
diff --git a/HROOT.cabal b/HROOT.cabal
--- a/HROOT.cabal
+++ b/HROOT.cabal
@@ -1,5 +1,5 @@
 Name:		HROOT
-Version:	0.6.6
+Version:	0.6.7
 Synopsis:	Wrapper for ROOT
 Description: 	Haskell FFI binding for ROOT  
 Homepage:       http://ianwookim.org/HROOT
@@ -31,7 +31,7 @@
 --   default-language: Haskell2010
 --   type: exitcode-stdio-1.0
 --   main-is: compiletest.hs
---   build-depends: base>4, base<5, HROOT==0.6.6
+--   build-depends: base>4, base<5, HROOT==0.6.7
 --   hs-source-dirs: test
 
 Library
@@ -144,6 +144,7 @@
                        HROOT.Class.TList
                        HROOT.Class.TKey
                        HROOT.Class.TDatime
+                       HROOT.Class.TVirtualHistPainter
   
 
 --                      HROOT
diff --git a/csrc/HROOT.cpp b/csrc/HROOT.cpp
--- a/csrc/HROOT.cpp
+++ b/csrc/HROOT.cpp
@@ -138,7 +138,7 @@
 #include "TKey.h"
 #include "TLegendEntry.h"
 #include "TDatime.h"
-
+#include "TVirtualHistPainter.h"
 
 using namespace std;
 
@@ -195,6 +195,14 @@
 
 #undef ROOT_TNAMED_DEFINITIONVIRT
 #define ROOT_TNAMED_DEFINITIONVIRT(Type)\
+void Type ## _SetName ( Type ## _p p, const char * name )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetName(name);\
+}\
+void Type ## _SetNameTitle ( Type ## _p p, const char * name, const char * title )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetNameTitle(name, title);\
+}\
 void Type ## _SetTitle ( Type ## _p p, const char * name )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetTitle(name);\
@@ -225,10 +233,66 @@
 
 #undef ROOT_TATTAXIS_DEFINITIONVIRT
 #define ROOT_TATTAXIS_DEFINITIONVIRT(Type)\
+int  Type ## _GetNdivisions ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetNdivisions();\
+}\
+int  Type ## _GetAxisColor ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetAxisColor();\
+}\
+int  Type ## _GetLabelColor ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetLabelColor();\
+}\
+int  Type ## _GetLabelFont ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetLabelFont();\
+}\
+double Type ## _GetLabelOffset ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetLabelOffset();\
+}\
+double Type ## _GetLabelSize ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetLabelSize();\
+}\
+double Type ## _GetTitleOffset ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetTitleOffset();\
+}\
+double Type ## _GetTitleSize ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetTitleSize();\
+}\
+double Type ## _GetTickLength ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetTickLength();\
+}\
+int  Type ## _GetTitleFont ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetTitleFont();\
+}\
+void Type ## _SetNdivisions ( Type ## _p p, int  n, int optim )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetNdivisions(n, optim);\
+}\
+void Type ## _SetAxisColor ( Type ## _p p, int  color )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetAxisColor(color);\
+}\
 void Type ## _SetLabelColor ( Type ## _p p, int  color )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetLabelColor(color);\
 }\
+void Type ## _SetLabelFont ( Type ## _p p, int  font )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetLabelFont(font);\
+}\
+void Type ## _SetLabelOffset ( Type ## _p p, double offset )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetLabelOffset(offset);\
+}\
 void Type ## _SetLabelSize ( Type ## _p p, double size )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetLabelSize(size);\
@@ -241,9 +305,17 @@
 {\
 to_nonconst<Type,Type ## _t>(p)->SetTitleOffset(offset);\
 }\
-void Type ## _SetNdivisions ( Type ## _p p, int  n, int optim )\
+void Type ## _SetTitleSize ( Type ## _p p, double size )\
 {\
-to_nonconst<Type,Type ## _t>(p)->SetNdivisions(n, optim);\
+to_nonconst<Type,Type ## _t>(p)->SetTitleSize(size);\
+}\
+void Type ## _SetTitleColor ( Type ## _p p, int  color )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetTitleColor(color);\
+}\
+void Type ## _SetTitleFont ( Type ## _p p, int  font )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetTitleFont(font);\
 }
 
 #undef ROOT_TATTBBOX_DEFINITIONVIRT
@@ -672,43 +744,43 @@
 {\
 to_nonconst<Type,Type ## _t>(p)->FitPanel();\
 }\
-int  Type ## _GetNdivisions ( Type ## _p p, const char * axis )\
+int  Type ## _getNdivisionA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetNdivisions(axis);\
 }\
-int  Type ## _GetAxisColor ( Type ## _p p, const char * axis )\
+int  Type ## _getAxisColorA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetAxisColor(axis);\
 }\
-int  Type ## _GetLabelColor ( Type ## _p p, const char * axis )\
+int  Type ## _getLabelColorA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetLabelColor(axis);\
 }\
-int  Type ## _GetLabelFont ( Type ## _p p, const char * axis )\
+int  Type ## _getLabelFontA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetLabelFont(axis);\
 }\
-double Type ## _GetLabelOffset ( Type ## _p p, const char * axis )\
+double Type ## _getLabelOffsetA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetLabelOffset(axis);\
 }\
-double Type ## _GetLabelSize ( Type ## _p p, const char * axis )\
+double Type ## _getLabelSizeA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetLabelSize(axis);\
 }\
-int  Type ## _GetTitleFont ( Type ## _p p, const char * axis )\
+int  Type ## _getTitleFontA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetTitleFont(axis);\
 }\
-double Type ## _GetTitleOffset ( Type ## _p p, const char * axis )\
+double Type ## _getTitleOffsetA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetTitleOffset(axis);\
 }\
-double Type ## _GetTitleSize ( Type ## _p p, const char * axis )\
+double Type ## _getTitleSizeA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetTitleSize(axis);\
 }\
-double Type ## _GetTickLength ( Type ## _p p, const char * axis )\
+double Type ## _getTickLengthA ( Type ## _p p, const char * axis )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetTickLength(axis);\
 }\
@@ -780,11 +852,187 @@
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetCellError(binx, biny);\
 }\
+double Type ## _GetEntries ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetEntries();\
+}\
+double Type ## _GetEffectiveEntries ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetEffectiveEntries();\
+}\
+TF1_p Type ## _GetFunction ( Type ## _p p, const char * name )\
+{\
+return to_nonconst<TF1_t,TF1>((TF1*)to_nonconst<Type,Type ## _t>(p)->GetFunction(name));\
+}\
+int  Type ## _GetDimension ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetDimension();\
+}\
+double Type ## _GetKurtosis ( Type ## _p p, int  axis )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetKurtosis(axis);\
+}\
+void Type ## _GetLowEdge ( Type ## _p p, double * edge )\
+{\
+to_nonconst<Type,Type ## _t>(p)->GetLowEdge(edge);\
+}\
+double Type ## _GetMaximum ( Type ## _p p, double maxval )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetMaximum(maxval);\
+}\
+int  Type ## _GetMaximumBin ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetMaximumBin();\
+}\
+double Type ## _GetMaximumStored ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetMaximumStored();\
+}\
+double Type ## _GetMinimum ( Type ## _p p, double minval )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetMinimum(minval);\
+}\
+int  Type ## _GetMinimumBin ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetMinimumBin();\
+}\
+double Type ## _GetMinimumStored ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetMinimumStored();\
+}\
+double Type ## _GetMean ( Type ## _p p, int  axis )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetMean(axis);\
+}\
+double Type ## _GetMeanError ( Type ## _p p, int  axis )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetMeanError(axis);\
+}\
+double Type ## _GetNbinsX ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetNbinsX();\
+}\
+double Type ## _GetNbinsY ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetNbinsY();\
+}\
+double Type ## _GetNbinsZ ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetNbinsZ();\
+}\
+int  Type ## _GetQuantiles ( Type ## _p p, int  nprobSum, double * q, double * pbSum )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetQuantiles(nprobSum, q, pbSum);\
+}\
+double Type ## _GetRandom ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetRandom();\
+}\
+void Type ## _GetStats ( Type ## _p p, double * stats )\
+{\
+to_nonconst<Type,Type ## _t>(p)->GetStats(stats);\
+}\
+double Type ## _GetSumOfWeights ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetSumOfWeights();\
+}\
+TArrayD_p Type ## _GetSumw2 ( Type ## _p p )\
+{\
+return to_nonconst<TArrayD_t,TArrayD>((TArrayD*)to_nonconst<Type,Type ## _t>(p)->GetSumw2());\
+}\
+int  Type ## _GetSumw2N ( Type ## _p p )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetSumw2N();\
+}\
+double Type ## _GetRMS ( Type ## _p p, int  axis )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetRMS(axis);\
+}\
+double Type ## _GetRMSError ( Type ## _p p, int  axis )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetRMSError(axis);\
+}\
+double Type ## _GetSkewness ( Type ## _p p, int  axis )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->GetSkewness(axis);\
+}\
+double Type ## _integral1 ( Type ## _p p, int  binx1, int  binx2, const char * option )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->Integral(binx1, binx2, option);\
+}\
+double Type ## _interpolate1 ( Type ## _p p, double x )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->Interpolate(x);\
+}\
+double Type ## _interpolate2 ( Type ## _p p, double x, double y )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->Interpolate(x, y);\
+}\
+double Type ## _interpolate3 ( Type ## _p p, double x, double y, double z )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->Interpolate(x, y, z);\
+}\
+double Type ## _KolmogorovTest ( Type ## _p p, TH1_p h2, const char * option )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->KolmogorovTest(to_nonconst<TH1,TH1_t>(h2), option);\
+}\
+void Type ## _LabelsDeflate ( Type ## _p p, const char * axis )\
+{\
+to_nonconst<Type,Type ## _t>(p)->LabelsDeflate(axis);\
+}\
+void Type ## _LabelsInflate ( Type ## _p p, const char * axis )\
+{\
+to_nonconst<Type,Type ## _t>(p)->LabelsInflate(axis);\
+}\
+void Type ## _LabelsOption ( Type ## _p p, const char * option, const char * axis )\
+{\
+to_nonconst<Type,Type ## _t>(p)->LabelsOption(option, axis);\
+}\
+void Type ## _multiflyF ( Type ## _p p, TF1_p h1, double c1 )\
+{\
+to_nonconst<Type,Type ## _t>(p)->Multiply(to_nonconst<TF1,TF1_t>(h1), c1);\
+}\
+void Type ## _Multiply ( Type ## _p p, TH1_p h1, TH1_p h2, double c1, double c2, const char * option )\
+{\
+to_nonconst<Type,Type ## _t>(p)->Multiply(to_nonconst<TH1,TH1_t>(h1), to_nonconst<TH1,TH1_t>(h2), c1, c2, option);\
+}\
+void Type ## _Paint ( Type ## _p p )\
+{\
+to_nonconst<Type,Type ## _t>(p)->Paint();\
+}\
+void Type ## _PutStats ( Type ## _p p, double * stats )\
+{\
+to_nonconst<Type,Type ## _t>(p)->PutStats(stats);\
+}\
+TH1_p Type ## _Rebin ( Type ## _p p, int  ngroup, const char * newname, double * xbins )\
+{\
+return to_nonconst<TH1_t,TH1>((TH1*)to_nonconst<Type,Type ## _t>(p)->Rebin(ngroup, newname, xbins));\
+}\
+void Type ## _RebinAxis ( Type ## _p p, double x, TAxis_p axis )\
+{\
+to_nonconst<Type,Type ## _t>(p)->RebinAxis(x, to_nonconst<TAxis,TAxis_t>(axis));\
+}\
+void Type ## _Rebuild ( Type ## _p p, const char * option )\
+{\
+to_nonconst<Type,Type ## _t>(p)->Rebuild(option);\
+}\
+void Type ## _RecursiveRemove ( Type ## _p p, TObject_p obj )\
+{\
+to_nonconst<Type,Type ## _t>(p)->RecursiveRemove(to_nonconst<TObject,TObject_t>(obj));\
+}\
+void Type ## _Reset ( Type ## _p p, const char * option )\
+{\
+to_nonconst<Type,Type ## _t>(p)->Reset(option);\
+}\
+void Type ## _ResetStats ( Type ## _p p )\
+{\
+to_nonconst<Type,Type ## _t>(p)->ResetStats();\
+}\
 void Type ## _Scale ( Type ## _p p, double c1, const char * option )\
 {\
 to_nonconst<Type,Type ## _t>(p)->Scale(c1, option);\
 }\
-void Type ## _SetAxisColor ( Type ## _p p, int  color, const char * axis )\
+void Type ## _setAxisColorA ( Type ## _p p, int  color, const char * axis )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetAxisColor(color, axis);\
 }\
@@ -836,6 +1084,58 @@
 {\
 to_nonconst<Type,Type ## _t>(p)->SetBins(nx, xBins, ny, yBins, nz, zBins);\
 }\
+void Type ## _SetBinsLength ( Type ## _p p, int  bin )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetBinsLength(bin);\
+}\
+void Type ## _SetBuffer ( Type ## _p p, int  buffersize, const char * option )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetBuffer(buffersize, option);\
+}\
+void Type ## _SetCellContent ( Type ## _p p, int  binx, int  biny, double content )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetCellContent(binx, biny, content);\
+}\
+void Type ## _SetContent ( Type ## _p p, double * content )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetContent(content);\
+}\
+void Type ## _SetContour ( Type ## _p p, int  nlevels, double * levels )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetContour(nlevels, levels);\
+}\
+void Type ## _SetContourLevel ( Type ## _p p, int  level, double value )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetContourLevel(level, value);\
+}\
+void Type ## _SetDirectory ( Type ## _p p, TDirectory_p dir )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetDirectory(to_nonconst<TDirectory,TDirectory_t>(dir));\
+}\
+void Type ## _SetEntries ( Type ## _p p, double n )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetEntries(n);\
+}\
+void Type ## _SetError ( Type ## _p p, double * error )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetError(error);\
+}\
+void Type ## _setLabelColorA ( Type ## _p p, int  color, const char * axis )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetLabelColor(color, axis);\
+}\
+void Type ## _setLabelSizeA ( Type ## _p p, double size, const char * axis )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetLabelSize(size, axis);\
+}\
+void Type ## _setLabelFontA ( Type ## _p p, int  font, const char * axis )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetLabelFont(font, axis);\
+}\
+void Type ## _setLabelOffsetA ( Type ## _p p, double offset, const char * axis )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetLabelOffset(offset, axis);\
+}\
 void Type ## _SetMaximum ( Type ## _p p, double maximum )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetMaximum(maximum);\
@@ -844,6 +1144,18 @@
 {\
 to_nonconst<Type,Type ## _t>(p)->SetMinimum(minimum);\
 }\
+void Type ## _SetNormFactor ( Type ## _p p, double factor )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetNormFactor(factor);\
+}\
+void Type ## _SetStats ( Type ## _p p, int stats )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetStats(stats);\
+}\
+void Type ## _SetOption ( Type ## _p p, const char * option )\
+{\
+to_nonconst<Type,Type ## _t>(p)->SetOption(option);\
+}\
 void Type ## _SetXTitle ( Type ## _p p, const char * title )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetXTitle(title);\
@@ -855,6 +1167,22 @@
 void Type ## _SetZTitle ( Type ## _p p, const char * title )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetZTitle(title);\
+}\
+TH1_p Type ## _ShowBackground ( Type ## _p p, int  niter, const char * option )\
+{\
+return to_nonconst<TH1_t,TH1>((TH1*)to_nonconst<Type,Type ## _t>(p)->ShowBackground(niter, option));\
+}\
+int  Type ## _ShowPeaks ( Type ## _p p, double sigma, const char * option, double threshold )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->ShowPeaks(sigma, option, threshold);\
+}\
+void Type ## _Smooth ( Type ## _p p, int  ntimes, const char * option )\
+{\
+to_nonconst<Type,Type ## _t>(p)->Smooth(ntimes, option);\
+}\
+void Type ## _Sumw2 ( Type ## _p p )\
+{\
+to_nonconst<Type,Type ## _t>(p)->Sumw2();\
 }
 
 #undef ROOT_TH2_DEFINITIONVIRT
@@ -891,22 +1219,10 @@
 {\
 return to_nonconst<Type,Type ## _t>(p)->GetCovariance(axis1, axis2);\
 }\
-void Type ## _GetStats ( Type ## _p p, double * stats )\
-{\
-to_nonconst<Type,Type ## _t>(p)->GetStats(stats);\
-}\
-double Type ## _Integral ( Type ## _p p, int  binx1, int  binx2, int  biny1, int  biny2, const char * option )\
+double Type ## _integral2 ( Type ## _p p, int  binx1, int  binx2, int  biny1, int  biny2, const char * option )\
 {\
 return to_nonconst<Type,Type ## _t>(p)->Integral(binx1, binx2, biny1, biny2, option);\
 }\
-double Type ## _Interpolate ( Type ## _p p, double x, double y, double z )\
-{\
-return to_nonconst<Type,Type ## _t>(p)->Interpolate(x, y, z);\
-}\
-double Type ## _KolmogorovTest ( Type ## _p p, TH1_p h2, const char * option )\
-{\
-return to_nonconst<Type,Type ## _t>(p)->KolmogorovTest(to_nonconst<TH1,TH1_t>(h2), option);\
-}\
 TH2_p Type ## _RebinX ( Type ## _p p, int  ngroup, const char * newname )\
 {\
 return to_nonconst<TH2_t,TH2>((TH2*)to_nonconst<Type,Type ## _t>(p)->RebinX(ngroup, newname));\
@@ -919,14 +1235,6 @@
 {\
 return to_nonconst<TH2_t,TH2>((TH2*)to_nonconst<Type,Type ## _t>(p)->Rebin2D(nxgroup, nygroup, newname));\
 }\
-void Type ## _PutStats ( Type ## _p p, double * stats )\
-{\
-to_nonconst<Type,Type ## _t>(p)->PutStats(stats);\
-}\
-void Type ## _Reset ( Type ## _p p, const char * option )\
-{\
-to_nonconst<Type,Type ## _t>(p)->Reset(option);\
-}\
 void Type ## _SetShowProjectionX ( Type ## _p p, int  nbins )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetShowProjectionX(nbins);\
@@ -934,18 +1242,6 @@
 void Type ## _SetShowProjectionY ( Type ## _p p, int  nbins )\
 {\
 to_nonconst<Type,Type ## _t>(p)->SetShowProjectionY(nbins);\
-}\
-TH1_p Type ## _ShowBackground ( Type ## _p p, int  niter, const char * option )\
-{\
-return to_nonconst<TH1_t,TH1>((TH1*)to_nonconst<Type,Type ## _t>(p)->ShowBackground(niter, option));\
-}\
-int  Type ## _ShowPeaks ( Type ## _p p, double sigma, const char * option, double threshold )\
-{\
-return to_nonconst<Type,Type ## _t>(p)->ShowPeaks(sigma, option, threshold);\
-}\
-void Type ## _Smooth ( Type ## _p p, int  ntimes, const char * option )\
-{\
-to_nonconst<Type,Type ## _t>(p)->Smooth(ntimes, option);\
 }
 
 #undef ROOT_TH3_DEFINITIONVIRT
@@ -1112,6 +1408,13 @@
 return to_nonconst<Type,Type ## _t>(p)->Convert(toGMT);\
 }
 
+#undef ROOT_TVIRTUALHISTPAINTER_DEFINITIONVIRT
+#define ROOT_TVIRTUALHISTPAINTER_DEFINITIONVIRT(Type)\
+int  Type ## _DistanceToPrimitive ( Type ## _p p, int  px, int  py )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->DistanceToPrimitive(px, py);\
+}
+
 #undef ROOT_DELETABLE_DEFINITIONNONVIRT
 #define ROOT_DELETABLE_DEFINITIONNONVIRT(Type)\
 
@@ -1661,6 +1964,18 @@
 TAxis_p Type ## _tH1GetZaxis ( Type ## _p p )\
 {\
 return to_nonconst<TAxis_t,TAxis>((TAxis*)to_nonconst<Type,Type ## _t>(p)->GetZaxis());\
+}\
+int Type ## _tH1IsBinOverflow ( Type ## _p p, int  bin )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->IsBinOverflow(bin);\
+}\
+int Type ## _tH1IsBinUnderflow ( Type ## _p p, int  bin )\
+{\
+return to_nonconst<Type,Type ## _t>(p)->IsBinUnderflow(bin);\
+}\
+void Type ## _tH1UseCurrentStyle ( Type ## _p p )\
+{\
+to_nonconst<Type,Type ## _t>(p)->UseCurrentStyle();\
 }
 
 #undef ROOT_TH2_DEFINITIONNONVIRT
@@ -1858,6 +2173,10 @@
 return to_nonconst<Type ## _t, Type >(newp);\
 }
 
+#undef ROOT_TVIRTUALHISTPAINTER_DEFINITIONNONVIRT
+#define ROOT_TVIRTUALHISTPAINTER_DEFINITIONNONVIRT(Type)\
+
+
 ROOT_DELETABLE_DEFINITIONVIRT(TDatime)
 ROOT_DELETABLE_DEFINITIONVIRT(TKey)
 ROOT_DELETABLE_DEFINITIONVIRT(TList)
@@ -2710,3 +3029,4 @@
 ROOT_TLIST_DEFINITIONNONVIRT(TList)
 ROOT_TKEY_DEFINITIONNONVIRT(TKey)
 ROOT_TDATIME_DEFINITIONNONVIRT(TDatime)
+ROOT_TVIRTUALHISTPAINTER_DEFINITIONNONVIRT(TVirtualHistPainter)
diff --git a/csrc/HROOT.h b/csrc/HROOT.h
--- a/csrc/HROOT.h
+++ b/csrc/HROOT.h
@@ -26,6 +26,8 @@
 
 #undef ROOT_TNAMED_DECLARATIONVIRT
 #define ROOT_TNAMED_DECLARATIONVIRT(Type) \
+void Type ## _SetName ( Type ## _p p, const char * name ); \
+void Type ## _SetNameTitle ( Type ## _p p, const char * name, const char * title ); \
 void Type ## _SetTitle ( Type ## _p p, const char * name )
 
 #undef ROOT_TDICTIONARY_DECLARATIONVIRT
@@ -47,11 +49,27 @@
 
 #undef ROOT_TATTAXIS_DECLARATIONVIRT
 #define ROOT_TATTAXIS_DECLARATIONVIRT(Type) \
+int  Type ## _GetNdivisions ( Type ## _p p ); \
+int  Type ## _GetAxisColor ( Type ## _p p ); \
+int  Type ## _GetLabelColor ( Type ## _p p ); \
+int  Type ## _GetLabelFont ( Type ## _p p ); \
+double Type ## _GetLabelOffset ( Type ## _p p ); \
+double Type ## _GetLabelSize ( Type ## _p p ); \
+double Type ## _GetTitleOffset ( Type ## _p p ); \
+double Type ## _GetTitleSize ( Type ## _p p ); \
+double Type ## _GetTickLength ( Type ## _p p ); \
+int  Type ## _GetTitleFont ( Type ## _p p ); \
+void Type ## _SetNdivisions ( Type ## _p p, int  n, int optim ); \
+void Type ## _SetAxisColor ( Type ## _p p, int  color ); \
 void Type ## _SetLabelColor ( Type ## _p p, int  color ); \
+void Type ## _SetLabelFont ( Type ## _p p, int  font ); \
+void Type ## _SetLabelOffset ( Type ## _p p, double offset ); \
 void Type ## _SetLabelSize ( Type ## _p p, double size ); \
 void Type ## _SetTickLength ( Type ## _p p, double length ); \
 void Type ## _SetTitleOffset ( Type ## _p p, double offset ); \
-void Type ## _SetNdivisions ( Type ## _p p, int  n, int optim )
+void Type ## _SetTitleSize ( Type ## _p p, double size ); \
+void Type ## _SetTitleColor ( Type ## _p p, int  color ); \
+void Type ## _SetTitleFont ( Type ## _p p, int  font )
 
 #undef ROOT_TATTBBOX_DECLARATIONVIRT
 #define ROOT_TATTBBOX_DECLARATIONVIRT(Type) \
@@ -362,16 +380,16 @@
 int  Type ## _FindFirstBinAbove ( Type ## _p p, double threshold, int  axis ); \
 int  Type ## _FindLastBinAbove ( Type ## _p p, double threshold, int  axis ); \
 void Type ## _FitPanel ( Type ## _p p ); \
-int  Type ## _GetNdivisions ( Type ## _p p, const char * axis ); \
-int  Type ## _GetAxisColor ( Type ## _p p, const char * axis ); \
-int  Type ## _GetLabelColor ( Type ## _p p, const char * axis ); \
-int  Type ## _GetLabelFont ( Type ## _p p, const char * axis ); \
-double Type ## _GetLabelOffset ( Type ## _p p, const char * axis ); \
-double Type ## _GetLabelSize ( Type ## _p p, const char * axis ); \
-int  Type ## _GetTitleFont ( Type ## _p p, const char * axis ); \
-double Type ## _GetTitleOffset ( Type ## _p p, const char * axis ); \
-double Type ## _GetTitleSize ( Type ## _p p, const char * axis ); \
-double Type ## _GetTickLength ( Type ## _p p, const char * axis ); \
+int  Type ## _getNdivisionA ( Type ## _p p, const char * axis ); \
+int  Type ## _getAxisColorA ( Type ## _p p, const char * axis ); \
+int  Type ## _getLabelColorA ( Type ## _p p, const char * axis ); \
+int  Type ## _getLabelFontA ( Type ## _p p, const char * axis ); \
+double Type ## _getLabelOffsetA ( Type ## _p p, const char * axis ); \
+double Type ## _getLabelSizeA ( Type ## _p p, const char * axis ); \
+int  Type ## _getTitleFontA ( Type ## _p p, const char * axis ); \
+double Type ## _getTitleOffsetA ( Type ## _p p, const char * axis ); \
+double Type ## _getTitleSizeA ( Type ## _p p, const char * axis ); \
+double Type ## _getTickLengthA ( Type ## _p p, const char * axis ); \
 double Type ## _GetBarOffset ( Type ## _p p ); \
 double Type ## _GetBarWidth ( Type ## _p p ); \
 int  Type ## _GetContour ( Type ## _p p, double * levels ); \
@@ -389,8 +407,52 @@
 double Type ## _GetBinWidth ( Type ## _p p, int  bin ); \
 double Type ## _GetCellContent ( Type ## _p p, int  binx, int  biny ); \
 double Type ## _GetCellError ( Type ## _p p, int  binx, int  biny ); \
+double Type ## _GetEntries ( Type ## _p p ); \
+double Type ## _GetEffectiveEntries ( Type ## _p p ); \
+TF1_p Type ## _GetFunction ( Type ## _p p, const char * name ); \
+int  Type ## _GetDimension ( Type ## _p p ); \
+double Type ## _GetKurtosis ( Type ## _p p, int  axis ); \
+void Type ## _GetLowEdge ( Type ## _p p, double * edge ); \
+double Type ## _GetMaximum ( Type ## _p p, double maxval ); \
+int  Type ## _GetMaximumBin ( Type ## _p p ); \
+double Type ## _GetMaximumStored ( Type ## _p p ); \
+double Type ## _GetMinimum ( Type ## _p p, double minval ); \
+int  Type ## _GetMinimumBin ( Type ## _p p ); \
+double Type ## _GetMinimumStored ( Type ## _p p ); \
+double Type ## _GetMean ( Type ## _p p, int  axis ); \
+double Type ## _GetMeanError ( Type ## _p p, int  axis ); \
+double Type ## _GetNbinsX ( Type ## _p p ); \
+double Type ## _GetNbinsY ( Type ## _p p ); \
+double Type ## _GetNbinsZ ( Type ## _p p ); \
+int  Type ## _GetQuantiles ( Type ## _p p, int  nprobSum, double * q, double * pbSum ); \
+double Type ## _GetRandom ( Type ## _p p ); \
+void Type ## _GetStats ( Type ## _p p, double * stats ); \
+double Type ## _GetSumOfWeights ( Type ## _p p ); \
+TArrayD_p Type ## _GetSumw2 ( Type ## _p p ); \
+int  Type ## _GetSumw2N ( Type ## _p p ); \
+double Type ## _GetRMS ( Type ## _p p, int  axis ); \
+double Type ## _GetRMSError ( Type ## _p p, int  axis ); \
+double Type ## _GetSkewness ( Type ## _p p, int  axis ); \
+double Type ## _integral1 ( Type ## _p p, int  binx1, int  binx2, const char * option ); \
+double Type ## _interpolate1 ( Type ## _p p, double x ); \
+double Type ## _interpolate2 ( Type ## _p p, double x, double y ); \
+double Type ## _interpolate3 ( Type ## _p p, double x, double y, double z ); \
+double Type ## _KolmogorovTest ( Type ## _p p, TH1_p h2, const char * option ); \
+void Type ## _LabelsDeflate ( Type ## _p p, const char * axis ); \
+void Type ## _LabelsInflate ( Type ## _p p, const char * axis ); \
+void Type ## _LabelsOption ( Type ## _p p, const char * option, const char * axis ); \
+void Type ## _multiflyF ( Type ## _p p, TF1_p h1, double c1 ); \
+void Type ## _Multiply ( Type ## _p p, TH1_p h1, TH1_p h2, double c1, double c2, const char * option ); \
+void Type ## _Paint ( Type ## _p p ); \
+void Type ## _PutStats ( Type ## _p p, double * stats ); \
+TH1_p Type ## _Rebin ( Type ## _p p, int  ngroup, const char * newname, double * xbins ); \
+void Type ## _RebinAxis ( Type ## _p p, double x, TAxis_p axis ); \
+void Type ## _Rebuild ( Type ## _p p, const char * option ); \
+void Type ## _RecursiveRemove ( Type ## _p p, TObject_p obj ); \
+void Type ## _Reset ( Type ## _p p, const char * option ); \
+void Type ## _ResetStats ( Type ## _p p ); \
 void Type ## _Scale ( Type ## _p p, double c1, const char * option ); \
-void Type ## _SetAxisColor ( Type ## _p p, int  color, const char * axis ); \
+void Type ## _setAxisColorA ( Type ## _p p, int  color, const char * axis ); \
 void Type ## _SetAxisRange ( Type ## _p p, double xmin, double xmax, const char * axis ); \
 void Type ## _SetBarOffset ( Type ## _p p, double offset ); \
 void Type ## _SetBarWidth ( Type ## _p p, double width ); \
@@ -403,11 +465,31 @@
 void Type ## _setBins1 ( Type ## _p p, int  nx, double * xBins ); \
 void Type ## _setBins2 ( Type ## _p p, int  nx, double * xBins, int  ny, double * yBins ); \
 void Type ## _setBins3 ( Type ## _p p, int  nx, double * xBins, int  ny, double * yBins, int  nz, double * zBins ); \
+void Type ## _SetBinsLength ( Type ## _p p, int  bin ); \
+void Type ## _SetBuffer ( Type ## _p p, int  buffersize, const char * option ); \
+void Type ## _SetCellContent ( Type ## _p p, int  binx, int  biny, double content ); \
+void Type ## _SetContent ( Type ## _p p, double * content ); \
+void Type ## _SetContour ( Type ## _p p, int  nlevels, double * levels ); \
+void Type ## _SetContourLevel ( Type ## _p p, int  level, double value ); \
+void Type ## _SetDirectory ( Type ## _p p, TDirectory_p dir ); \
+void Type ## _SetEntries ( Type ## _p p, double n ); \
+void Type ## _SetError ( Type ## _p p, double * error ); \
+void Type ## _setLabelColorA ( Type ## _p p, int  color, const char * axis ); \
+void Type ## _setLabelSizeA ( Type ## _p p, double size, const char * axis ); \
+void Type ## _setLabelFontA ( Type ## _p p, int  font, const char * axis ); \
+void Type ## _setLabelOffsetA ( Type ## _p p, double offset, const char * axis ); \
 void Type ## _SetMaximum ( Type ## _p p, double maximum ); \
 void Type ## _SetMinimum ( Type ## _p p, double minimum ); \
+void Type ## _SetNormFactor ( Type ## _p p, double factor ); \
+void Type ## _SetStats ( Type ## _p p, int stats ); \
+void Type ## _SetOption ( Type ## _p p, const char * option ); \
 void Type ## _SetXTitle ( Type ## _p p, const char * title ); \
 void Type ## _SetYTitle ( Type ## _p p, const char * title ); \
-void Type ## _SetZTitle ( Type ## _p p, const char * title )
+void Type ## _SetZTitle ( Type ## _p p, const char * title ); \
+TH1_p Type ## _ShowBackground ( Type ## _p p, int  niter, const char * option ); \
+int  Type ## _ShowPeaks ( Type ## _p p, double sigma, const char * option, double threshold ); \
+void Type ## _Smooth ( Type ## _p p, int  ntimes, const char * option ); \
+void Type ## _Sumw2 ( Type ## _p p )
 
 #undef ROOT_TH2_DECLARATIONVIRT
 #define ROOT_TH2_DECLARATIONVIRT(Type) \
@@ -419,20 +501,12 @@
 void Type ## _FitSlicesY ( Type ## _p p, TF1_p f1, int  firstxbin, int  lastxbin, int  cut, const char * option, TObjArray_p arr ); \
 double Type ## _GetCorrelationFactor ( Type ## _p p, int  axis1, int  axis2 ); \
 double Type ## _GetCovariance ( Type ## _p p, int  axis1, int  axis2 ); \
-void Type ## _GetStats ( Type ## _p p, double * stats ); \
-double Type ## _Integral ( Type ## _p p, int  binx1, int  binx2, int  biny1, int  biny2, const char * option ); \
-double Type ## _Interpolate ( Type ## _p p, double x, double y, double z ); \
-double Type ## _KolmogorovTest ( Type ## _p p, TH1_p h2, const char * option ); \
+double Type ## _integral2 ( Type ## _p p, int  binx1, int  binx2, int  biny1, int  biny2, const char * option ); \
 TH2_p Type ## _RebinX ( Type ## _p p, int  ngroup, const char * newname ); \
 TH2_p Type ## _RebinY ( Type ## _p p, int  ngroup, const char * newname ); \
 TH2_p Type ## _Rebin2D ( Type ## _p p, int  nxgroup, int  nygroup, const char * newname ); \
-void Type ## _PutStats ( Type ## _p p, double * stats ); \
-void Type ## _Reset ( Type ## _p p, const char * option ); \
 void Type ## _SetShowProjectionX ( Type ## _p p, int  nbins ); \
-void Type ## _SetShowProjectionY ( Type ## _p p, int  nbins ); \
-TH1_p Type ## _ShowBackground ( Type ## _p p, int  niter, const char * option ); \
-int  Type ## _ShowPeaks ( Type ## _p p, double sigma, const char * option, double threshold ); \
-void Type ## _Smooth ( Type ## _p p, int  ntimes, const char * option )
+void Type ## _SetShowProjectionY ( Type ## _p p, int  nbins )
 
 #undef ROOT_TH3_DECLARATIONVIRT
 #define ROOT_TH3_DECLARATIONVIRT(Type) \
@@ -580,6 +654,10 @@
 #define ROOT_TDATIME_DECLARATIONVIRT(Type) \
 unsigned int  Type ## _Convert ( Type ## _p p, int toGMT )
 
+#undef ROOT_TVIRTUALHISTPAINTER_DECLARATIONVIRT
+#define ROOT_TVIRTUALHISTPAINTER_DECLARATIONVIRT(Type) \
+int  Type ## _DistanceToPrimitive ( Type ## _p p, int  px, int  py )
+
 #undef ROOT_DELETABLE_DECLARATIONNONVIRT
 #define ROOT_DELETABLE_DECLARATIONNONVIRT(Type) \
 
@@ -820,7 +898,10 @@
 TDirectory_p Type ## _tH1GetDirectory ( Type ## _p p ); \
 TAxis_p Type ## _tH1GetXaxis ( Type ## _p p ); \
 TAxis_p Type ## _tH1GetYaxis ( Type ## _p p ); \
-TAxis_p Type ## _tH1GetZaxis ( Type ## _p p )
+TAxis_p Type ## _tH1GetZaxis ( Type ## _p p ); \
+int Type ## _tH1IsBinOverflow ( Type ## _p p, int  bin ); \
+int Type ## _tH1IsBinUnderflow ( Type ## _p p, int  bin ); \
+void Type ## _tH1UseCurrentStyle ( Type ## _p p )
 #undef ROOT_TH2_DECLARATIONNONVIRT
 #define ROOT_TH2_DECLARATIONNONVIRT(Type) \
 TH1D_p Type ## _tH2ProjectionX ( Type ## _p p, const char * name, int  firstybin, int  lastybin, const char * option ); \
@@ -933,7 +1014,10 @@
 #undef ROOT_TDATIME_DECLARATIONNONVIRT
 #define ROOT_TDATIME_DECLARATIONNONVIRT(Type) \
 Type ## _p Type ## _newTDatime ( int  year, int  month, int  day, int  hour, int  min, int  sec )
+#undef ROOT_TVIRTUALHISTPAINTER_DECLARATIONNONVIRT
+#define ROOT_TVIRTUALHISTPAINTER_DECLARATIONNONVIRT(Type) \
 
+
 ROOT_TYPE_DECLARATION(Deletable);
 ROOT_TYPE_DECLARATION(TObject);
 ROOT_TYPE_DECLARATION(TNamed);
@@ -1049,6 +1133,7 @@
 ROOT_TYPE_DECLARATION(TList);
 ROOT_TYPE_DECLARATION(TKey);
 ROOT_TYPE_DECLARATION(TDatime);
+ROOT_TYPE_DECLARATION(TVirtualHistPainter);
 
 ROOT_DELETABLE_DECLARATIONVIRT(TDatime);
 ROOT_DELETABLE_DECLARATIONVIRT(TKey);
@@ -2016,6 +2101,8 @@
 ROOT_TKEY_DECLARATIONNONVIRT(TKey);
 
 ROOT_TDATIME_DECLARATIONNONVIRT(TDatime);
+
+ROOT_TVIRTUALHISTPAINTER_DECLARATIONNONVIRT(TVirtualHistPainter);
 
 
 #ifdef __cplusplus
diff --git a/src/HROOT/Class/FFI.hsc b/src/HROOT/Class/FFI.hsc
--- a/src/HROOT/Class/FFI.hsc
+++ b/src/HROOT/Class/FFI.hsc
@@ -48,5401 +48,8015 @@
   :: (Ptr RawTNamed) -> IO ()
 foreign import ccall "HROOT.h TNamed_newTNamed" c_tnamed_newtnamed 
   :: CString -> CString -> IO (Ptr RawTNamed)
-foreign import ccall "HROOT.h TNamed_SetTitle" c_tnamed_settitle 
-  :: (Ptr RawTNamed) -> CString -> IO ()
-
-
-
-
-
-
-
-
-
-
-
-foreign import ccall "HROOT.h TClass_SetTitle" c_tclass_settitle 
-  :: (Ptr RawTClass) -> CString -> IO ()
-foreign import ccall "HROOT.h TClass_GetName" c_tclass_getname 
-  :: (Ptr RawTClass) -> IO CString
-foreign import ccall "HROOT.h TClass_Draw" c_tclass_draw 
-  :: (Ptr RawTClass) -> CString -> IO ()
-foreign import ccall "HROOT.h TClass_FindObject" c_tclass_findobject 
-  :: (Ptr RawTClass) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TClass_SaveAs" c_tclass_saveas 
-  :: (Ptr RawTClass) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TClass_Write" c_tclass_write 
-  :: (Ptr RawTClass) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TClass_IsA" c_tclass_isa 
-  :: (Ptr RawTClass) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TClass_printObj" c_tclass_printobj 
-  :: (Ptr RawTClass) -> CString -> IO ()
-foreign import ccall "HROOT.h TClass_delete" c_tclass_delete 
-  :: (Ptr RawTClass) -> IO ()
-
-foreign import ccall "HROOT.h TFormula_SetTitle" c_tformula_settitle 
-  :: (Ptr RawTFormula) -> CString -> IO ()
-foreign import ccall "HROOT.h TFormula_GetName" c_tformula_getname 
-  :: (Ptr RawTFormula) -> IO CString
-foreign import ccall "HROOT.h TFormula_Draw" c_tformula_draw 
-  :: (Ptr RawTFormula) -> CString -> IO ()
-foreign import ccall "HROOT.h TFormula_FindObject" c_tformula_findobject 
-  :: (Ptr RawTFormula) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TFormula_SaveAs" c_tformula_saveas 
-  :: (Ptr RawTFormula) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TFormula_Write" c_tformula_write 
-  :: (Ptr RawTFormula) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TFormula_IsA" c_tformula_isa 
-  :: (Ptr RawTFormula) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TFormula_printObj" c_tformula_printobj 
-  :: (Ptr RawTFormula) -> CString -> IO ()
-foreign import ccall "HROOT.h TFormula_delete" c_tformula_delete 
-  :: (Ptr RawTFormula) -> IO ()
-foreign import ccall "HROOT.h TFormula_newTFormula" c_tformula_newtformula 
-  :: CString -> CString -> IO (Ptr RawTFormula)
-foreign import ccall "HROOT.h TFormula_GetParameter" c_tformula_getparameter 
-  :: (Ptr RawTFormula) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TFormula_SetParameter" c_tformula_setparameter 
-  :: (Ptr RawTFormula) -> CInt -> CDouble -> IO ()
-
-foreign import ccall "HROOT.h TAtt3D_delete" c_tatt3d_delete 
-  :: (Ptr RawTAtt3D) -> IO ()
-
-foreign import ccall "HROOT.h TAttAxis_delete" c_tattaxis_delete 
-  :: (Ptr RawTAttAxis) -> IO ()
-foreign import ccall "HROOT.h TAttAxis_newTAttAxis" c_tattaxis_newtattaxis 
-  :: IO (Ptr RawTAttAxis)
-foreign import ccall "HROOT.h TAttAxis_SetLabelColor" c_tattaxis_setlabelcolor 
-  :: (Ptr RawTAttAxis) -> CInt -> IO ()
-foreign import ccall "HROOT.h TAttAxis_SetLabelSize" c_tattaxis_setlabelsize 
-  :: (Ptr RawTAttAxis) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TAttAxis_SetTickLength" c_tattaxis_setticklength 
-  :: (Ptr RawTAttAxis) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TAttAxis_SetTitleOffset" c_tattaxis_settitleoffset 
-  :: (Ptr RawTAttAxis) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TAttAxis_SetNdivisions" c_tattaxis_setndivisions 
-  :: (Ptr RawTAttAxis) -> CInt -> CInt -> IO ()
-
-foreign import ccall "HROOT.h TAttBBox_delete" c_tattbbox_delete 
-  :: (Ptr RawTAttBBox) -> IO ()
-
-foreign import ccall "HROOT.h TAttCanvas_delete" c_tattcanvas_delete 
-  :: (Ptr RawTAttCanvas) -> IO ()
-foreign import ccall "HROOT.h TAttCanvas_newTAttCanvas" c_tattcanvas_newtattcanvas 
-  :: IO (Ptr RawTAttCanvas)
-
-foreign import ccall "HROOT.h TAttFill_delete" c_tattfill_delete 
-  :: (Ptr RawTAttFill) -> IO ()
-foreign import ccall "HROOT.h TAttFill_newTAttFill" c_tattfill_newtattfill 
-  :: CInt -> CInt -> IO (Ptr RawTAttFill)
-foreign import ccall "HROOT.h TAttFill_SetFillColor" c_tattfill_setfillcolor 
-  :: (Ptr RawTAttFill) -> CInt -> IO ()
-foreign import ccall "HROOT.h TAttFill_SetFillStyle" c_tattfill_setfillstyle 
-  :: (Ptr RawTAttFill) -> CInt -> IO ()
-
-foreign import ccall "HROOT.h TAttImage_delete" c_tattimage_delete 
-  :: (Ptr RawTAttImage) -> IO ()
-
-foreign import ccall "HROOT.h TAttLine_delete" c_tattline_delete 
-  :: (Ptr RawTAttLine) -> IO ()
-foreign import ccall "HROOT.h TAttLine_newTAttLine" c_tattline_newtattline 
-  :: CInt -> CInt -> CInt -> IO (Ptr RawTAttLine)
-foreign import ccall "HROOT.h TAttLine_SetLineColor" c_tattline_setlinecolor 
-  :: (Ptr RawTAttLine) -> CInt -> IO ()
-
-foreign import ccall "HROOT.h TAttMarker_delete" c_tattmarker_delete 
-  :: (Ptr RawTAttMarker) -> IO ()
-foreign import ccall "HROOT.h TAttMarker_newTAttMarker" c_tattmarker_newtattmarker 
-  :: CInt -> CInt -> CInt -> IO (Ptr RawTAttMarker)
-
-foreign import ccall "HROOT.h TAttPad_delete" c_tattpad_delete 
-  :: (Ptr RawTAttPad) -> IO ()
-foreign import ccall "HROOT.h TAttPad_newTAttPad" c_tattpad_newtattpad 
-  :: IO (Ptr RawTAttPad)
-
-foreign import ccall "HROOT.h TAttParticle_SetTitle" c_tattparticle_settitle 
-  :: (Ptr RawTAttParticle) -> CString -> IO ()
-foreign import ccall "HROOT.h TAttParticle_GetName" c_tattparticle_getname 
-  :: (Ptr RawTAttParticle) -> IO CString
-foreign import ccall "HROOT.h TAttParticle_Draw" c_tattparticle_draw 
-  :: (Ptr RawTAttParticle) -> CString -> IO ()
-foreign import ccall "HROOT.h TAttParticle_FindObject" c_tattparticle_findobject 
-  :: (Ptr RawTAttParticle) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TAttParticle_SaveAs" c_tattparticle_saveas 
-  :: (Ptr RawTAttParticle) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TAttParticle_Write" c_tattparticle_write 
-  :: (Ptr RawTAttParticle) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TAttParticle_IsA" c_tattparticle_isa 
-  :: (Ptr RawTAttParticle) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TAttParticle_printObj" c_tattparticle_printobj 
-  :: (Ptr RawTAttParticle) -> CString -> IO ()
-foreign import ccall "HROOT.h TAttParticle_delete" c_tattparticle_delete 
-  :: (Ptr RawTAttParticle) -> IO ()
-
-foreign import ccall "HROOT.h TAttText_delete" c_tatttext_delete 
-  :: (Ptr RawTAttText) -> IO ()
-foreign import ccall "HROOT.h TAttText_newTAttText" c_tatttext_newtatttext 
-  :: CInt -> CDouble -> CInt -> CInt -> CDouble -> IO (Ptr RawTAttText)
-foreign import ccall "HROOT.h TAttText_SetTextColor" c_tatttext_settextcolor 
-  :: (Ptr RawTAttText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TAttText_SetTextAlign" c_tatttext_settextalign 
-  :: (Ptr RawTAttText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TAttText_SetTextSize" c_tatttext_settextsize 
-  :: (Ptr RawTAttText) -> CDouble -> IO ()
-
-foreign import ccall "HROOT.h THStack_SetTitle" c_thstack_settitle 
-  :: (Ptr RawTHStack) -> CString -> IO ()
-foreign import ccall "HROOT.h THStack_GetName" c_thstack_getname 
-  :: (Ptr RawTHStack) -> IO CString
-foreign import ccall "HROOT.h THStack_Draw" c_thstack_draw 
-  :: (Ptr RawTHStack) -> CString -> IO ()
-foreign import ccall "HROOT.h THStack_FindObject" c_thstack_findobject 
-  :: (Ptr RawTHStack) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h THStack_SaveAs" c_thstack_saveas 
-  :: (Ptr RawTHStack) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h THStack_Write" c_thstack_write 
-  :: (Ptr RawTHStack) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h THStack_IsA" c_thstack_isa 
-  :: (Ptr RawTHStack) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h THStack_printObj" c_thstack_printobj 
-  :: (Ptr RawTHStack) -> CString -> IO ()
-foreign import ccall "HROOT.h THStack_delete" c_thstack_delete 
-  :: (Ptr RawTHStack) -> IO ()
-foreign import ccall "HROOT.h THStack_newTHStack" c_thstack_newthstack 
-  :: CString -> CString -> IO (Ptr RawTHStack)
-
-foreign import ccall "HROOT.h TF1_GetParameter" c_tf1_getparameter 
-  :: (Ptr RawTF1) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TF1_SetParameter" c_tf1_setparameter 
-  :: (Ptr RawTF1) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TF1_SetLineColor" c_tf1_setlinecolor 
-  :: (Ptr RawTF1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TF1_SetFillColor" c_tf1_setfillcolor 
-  :: (Ptr RawTF1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TF1_SetFillStyle" c_tf1_setfillstyle 
-  :: (Ptr RawTF1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TF1_SetTitle" c_tf1_settitle 
-  :: (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TF1_GetName" c_tf1_getname 
-  :: (Ptr RawTF1) -> IO CString
-foreign import ccall "HROOT.h TF1_Draw" c_tf1_draw 
-  :: (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TF1_FindObject" c_tf1_findobject 
-  :: (Ptr RawTF1) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TF1_SaveAs" c_tf1_saveas 
-  :: (Ptr RawTF1) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TF1_Write" c_tf1_write 
-  :: (Ptr RawTF1) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TF1_IsA" c_tf1_isa 
-  :: (Ptr RawTF1) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TF1_printObj" c_tf1_printobj 
-  :: (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TF1_delete" c_tf1_delete 
-  :: (Ptr RawTF1) -> IO ()
-foreign import ccall "HROOT.h TF1_newTF1" c_tf1_newtf1 
-  :: CString -> CString -> CDouble -> CDouble -> IO (Ptr RawTF1)
-
-foreign import ccall "HROOT.h TGraph_SetTitle" c_tgraph_settitle 
-  :: (Ptr RawTGraph) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraph_SetLineColor" c_tgraph_setlinecolor 
-  :: (Ptr RawTGraph) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraph_SetFillColor" c_tgraph_setfillcolor 
-  :: (Ptr RawTGraph) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraph_SetFillStyle" c_tgraph_setfillstyle 
-  :: (Ptr RawTGraph) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraph_GetName" c_tgraph_getname 
-  :: (Ptr RawTGraph) -> IO CString
-foreign import ccall "HROOT.h TGraph_Draw" c_tgraph_draw 
-  :: (Ptr RawTGraph) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraph_FindObject" c_tgraph_findobject 
-  :: (Ptr RawTGraph) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TGraph_SaveAs" c_tgraph_saveas 
-  :: (Ptr RawTGraph) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TGraph_Write" c_tgraph_write 
-  :: (Ptr RawTGraph) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TGraph_IsA" c_tgraph_isa 
-  :: (Ptr RawTGraph) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TGraph_printObj" c_tgraph_printobj 
-  :: (Ptr RawTGraph) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraph_delete" c_tgraph_delete 
-  :: (Ptr RawTGraph) -> IO ()
-foreign import ccall "HROOT.h TGraph_newTGraph" c_tgraph_newtgraph 
-  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraph)
-
-foreign import ccall "HROOT.h TGraphAsymmErrors_SetTitle" c_tgraphasymmerrors_settitle 
-  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphAsymmErrors_SetLineColor" c_tgraphasymmerrors_setlinecolor 
-  :: (Ptr RawTGraphAsymmErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphAsymmErrors_SetFillColor" c_tgraphasymmerrors_setfillcolor 
-  :: (Ptr RawTGraphAsymmErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphAsymmErrors_SetFillStyle" c_tgraphasymmerrors_setfillstyle 
-  :: (Ptr RawTGraphAsymmErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphAsymmErrors_GetName" c_tgraphasymmerrors_getname 
-  :: (Ptr RawTGraphAsymmErrors) -> IO CString
-foreign import ccall "HROOT.h TGraphAsymmErrors_Draw" c_tgraphasymmerrors_draw 
-  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphAsymmErrors_FindObject" c_tgraphasymmerrors_findobject 
-  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TGraphAsymmErrors_SaveAs" c_tgraphasymmerrors_saveas 
-  :: (Ptr RawTGraphAsymmErrors) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphAsymmErrors_Write" c_tgraphasymmerrors_write 
-  :: (Ptr RawTGraphAsymmErrors) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TGraphAsymmErrors_IsA" c_tgraphasymmerrors_isa 
-  :: (Ptr RawTGraphAsymmErrors) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TGraphAsymmErrors_printObj" c_tgraphasymmerrors_printobj 
-  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphAsymmErrors_delete" c_tgraphasymmerrors_delete 
-  :: (Ptr RawTGraphAsymmErrors) -> IO ()
-foreign import ccall "HROOT.h TGraphAsymmErrors_newTGraphAsymmErrors" c_tgraphasymmerrors_newtgraphasymmerrors 
-  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraphAsymmErrors)
-
-foreign import ccall "HROOT.h TCutG_SetTitle" c_tcutg_settitle 
-  :: (Ptr RawTCutG) -> CString -> IO ()
-foreign import ccall "HROOT.h TCutG_SetLineColor" c_tcutg_setlinecolor 
-  :: (Ptr RawTCutG) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCutG_SetFillColor" c_tcutg_setfillcolor 
-  :: (Ptr RawTCutG) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCutG_SetFillStyle" c_tcutg_setfillstyle 
-  :: (Ptr RawTCutG) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCutG_GetName" c_tcutg_getname 
-  :: (Ptr RawTCutG) -> IO CString
-foreign import ccall "HROOT.h TCutG_Draw" c_tcutg_draw 
-  :: (Ptr RawTCutG) -> CString -> IO ()
-foreign import ccall "HROOT.h TCutG_FindObject" c_tcutg_findobject 
-  :: (Ptr RawTCutG) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TCutG_SaveAs" c_tcutg_saveas 
-  :: (Ptr RawTCutG) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TCutG_Write" c_tcutg_write 
-  :: (Ptr RawTCutG) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TCutG_IsA" c_tcutg_isa 
-  :: (Ptr RawTCutG) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TCutG_printObj" c_tcutg_printobj 
-  :: (Ptr RawTCutG) -> CString -> IO ()
-foreign import ccall "HROOT.h TCutG_delete" c_tcutg_delete 
-  :: (Ptr RawTCutG) -> IO ()
-foreign import ccall "HROOT.h TCutG_newTCutG" c_tcutg_newtcutg 
-  :: CString -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTCutG)
-
-foreign import ccall "HROOT.h TGraphBentErrors_SetTitle" c_tgraphbenterrors_settitle 
-  :: (Ptr RawTGraphBentErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphBentErrors_SetLineColor" c_tgraphbenterrors_setlinecolor 
-  :: (Ptr RawTGraphBentErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphBentErrors_SetFillColor" c_tgraphbenterrors_setfillcolor 
-  :: (Ptr RawTGraphBentErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphBentErrors_SetFillStyle" c_tgraphbenterrors_setfillstyle 
-  :: (Ptr RawTGraphBentErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphBentErrors_GetName" c_tgraphbenterrors_getname 
-  :: (Ptr RawTGraphBentErrors) -> IO CString
-foreign import ccall "HROOT.h TGraphBentErrors_Draw" c_tgraphbenterrors_draw 
-  :: (Ptr RawTGraphBentErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphBentErrors_FindObject" c_tgraphbenterrors_findobject 
-  :: (Ptr RawTGraphBentErrors) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TGraphBentErrors_SaveAs" c_tgraphbenterrors_saveas 
-  :: (Ptr RawTGraphBentErrors) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphBentErrors_Write" c_tgraphbenterrors_write 
-  :: (Ptr RawTGraphBentErrors) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TGraphBentErrors_IsA" c_tgraphbenterrors_isa 
-  :: (Ptr RawTGraphBentErrors) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TGraphBentErrors_printObj" c_tgraphbenterrors_printobj 
-  :: (Ptr RawTGraphBentErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphBentErrors_delete" c_tgraphbenterrors_delete 
-  :: (Ptr RawTGraphBentErrors) -> IO ()
-foreign import ccall "HROOT.h TGraphBentErrors_newTGraphBentErrors" c_tgraphbenterrors_newtgraphbenterrors 
-  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraphBentErrors)
-
-foreign import ccall "HROOT.h TGraphErrors_SetTitle" c_tgrapherrors_settitle 
-  :: (Ptr RawTGraphErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphErrors_SetLineColor" c_tgrapherrors_setlinecolor 
-  :: (Ptr RawTGraphErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphErrors_SetFillColor" c_tgrapherrors_setfillcolor 
-  :: (Ptr RawTGraphErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphErrors_SetFillStyle" c_tgrapherrors_setfillstyle 
-  :: (Ptr RawTGraphErrors) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphErrors_GetName" c_tgrapherrors_getname 
-  :: (Ptr RawTGraphErrors) -> IO CString
-foreign import ccall "HROOT.h TGraphErrors_Draw" c_tgrapherrors_draw 
-  :: (Ptr RawTGraphErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphErrors_FindObject" c_tgrapherrors_findobject 
-  :: (Ptr RawTGraphErrors) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TGraphErrors_SaveAs" c_tgrapherrors_saveas 
-  :: (Ptr RawTGraphErrors) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphErrors_Write" c_tgrapherrors_write 
-  :: (Ptr RawTGraphErrors) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TGraphErrors_IsA" c_tgrapherrors_isa 
-  :: (Ptr RawTGraphErrors) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TGraphErrors_printObj" c_tgrapherrors_printobj 
-  :: (Ptr RawTGraphErrors) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphErrors_delete" c_tgrapherrors_delete 
-  :: (Ptr RawTGraphErrors) -> IO ()
-foreign import ccall "HROOT.h TGraphErrors_newTGraphErrors" c_tgrapherrors_newtgrapherrors 
-  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraphErrors)
-
-foreign import ccall "HROOT.h TGraphPolar_SetTitle" c_tgraphpolar_settitle 
-  :: (Ptr RawTGraphPolar) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphPolar_SetLineColor" c_tgraphpolar_setlinecolor 
-  :: (Ptr RawTGraphPolar) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphPolar_SetFillColor" c_tgraphpolar_setfillcolor 
-  :: (Ptr RawTGraphPolar) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphPolar_SetFillStyle" c_tgraphpolar_setfillstyle 
-  :: (Ptr RawTGraphPolar) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphPolar_GetName" c_tgraphpolar_getname 
-  :: (Ptr RawTGraphPolar) -> IO CString
-foreign import ccall "HROOT.h TGraphPolar_Draw" c_tgraphpolar_draw 
-  :: (Ptr RawTGraphPolar) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphPolar_FindObject" c_tgraphpolar_findobject 
-  :: (Ptr RawTGraphPolar) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TGraphPolar_SaveAs" c_tgraphpolar_saveas 
-  :: (Ptr RawTGraphPolar) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphPolar_Write" c_tgraphpolar_write 
-  :: (Ptr RawTGraphPolar) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TGraphPolar_IsA" c_tgraphpolar_isa 
-  :: (Ptr RawTGraphPolar) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TGraphPolar_printObj" c_tgraphpolar_printobj 
-  :: (Ptr RawTGraphPolar) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphPolar_delete" c_tgraphpolar_delete 
-  :: (Ptr RawTGraphPolar) -> IO ()
-foreign import ccall "HROOT.h TGraphPolar_newTGraphPolar" c_tgraphpolar_newtgraphpolar 
-  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraphPolar)
-
-foreign import ccall "HROOT.h TGraphQQ_SetTitle" c_tgraphqq_settitle 
-  :: (Ptr RawTGraphQQ) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphQQ_SetLineColor" c_tgraphqq_setlinecolor 
-  :: (Ptr RawTGraphQQ) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphQQ_SetFillColor" c_tgraphqq_setfillcolor 
-  :: (Ptr RawTGraphQQ) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphQQ_SetFillStyle" c_tgraphqq_setfillstyle 
-  :: (Ptr RawTGraphQQ) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGraphQQ_GetName" c_tgraphqq_getname 
-  :: (Ptr RawTGraphQQ) -> IO CString
-foreign import ccall "HROOT.h TGraphQQ_Draw" c_tgraphqq_draw 
-  :: (Ptr RawTGraphQQ) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphQQ_FindObject" c_tgraphqq_findobject 
-  :: (Ptr RawTGraphQQ) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TGraphQQ_SaveAs" c_tgraphqq_saveas 
-  :: (Ptr RawTGraphQQ) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphQQ_Write" c_tgraphqq_write 
-  :: (Ptr RawTGraphQQ) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TGraphQQ_IsA" c_tgraphqq_isa 
-  :: (Ptr RawTGraphQQ) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TGraphQQ_printObj" c_tgraphqq_printobj 
-  :: (Ptr RawTGraphQQ) -> CString -> IO ()
-foreign import ccall "HROOT.h TGraphQQ_delete" c_tgraphqq_delete 
-  :: (Ptr RawTGraphQQ) -> IO ()
-foreign import ccall "HROOT.h TGraphQQ_newTGraphQQ" c_tgraphqq_newtgraphqq 
-  :: CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO (Ptr RawTGraphQQ)
-
-foreign import ccall "HROOT.h TEllipse_GetName" c_tellipse_getname 
-  :: (Ptr RawTEllipse) -> IO CString
-foreign import ccall "HROOT.h TEllipse_Draw" c_tellipse_draw 
-  :: (Ptr RawTEllipse) -> CString -> IO ()
-foreign import ccall "HROOT.h TEllipse_FindObject" c_tellipse_findobject 
-  :: (Ptr RawTEllipse) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TEllipse_SaveAs" c_tellipse_saveas 
-  :: (Ptr RawTEllipse) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TEllipse_Write" c_tellipse_write 
-  :: (Ptr RawTEllipse) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TEllipse_IsA" c_tellipse_isa 
-  :: (Ptr RawTEllipse) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TEllipse_printObj" c_tellipse_printobj 
-  :: (Ptr RawTEllipse) -> CString -> IO ()
-foreign import ccall "HROOT.h TEllipse_SetLineColor" c_tellipse_setlinecolor 
-  :: (Ptr RawTEllipse) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEllipse_SetFillColor" c_tellipse_setfillcolor 
-  :: (Ptr RawTEllipse) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEllipse_SetFillStyle" c_tellipse_setfillstyle 
-  :: (Ptr RawTEllipse) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEllipse_delete" c_tellipse_delete 
-  :: (Ptr RawTEllipse) -> IO ()
-foreign import ccall "HROOT.h TEllipse_newTEllipse" c_tellipse_newtellipse 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTEllipse)
-
-foreign import ccall "HROOT.h TArc_GetName" c_tarc_getname 
-  :: (Ptr RawTArc) -> IO CString
-foreign import ccall "HROOT.h TArc_Draw" c_tarc_draw 
-  :: (Ptr RawTArc) -> CString -> IO ()
-foreign import ccall "HROOT.h TArc_FindObject" c_tarc_findobject 
-  :: (Ptr RawTArc) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TArc_SaveAs" c_tarc_saveas 
-  :: (Ptr RawTArc) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TArc_Write" c_tarc_write 
-  :: (Ptr RawTArc) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TArc_IsA" c_tarc_isa 
-  :: (Ptr RawTArc) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TArc_printObj" c_tarc_printobj 
-  :: (Ptr RawTArc) -> CString -> IO ()
-foreign import ccall "HROOT.h TArc_SetLineColor" c_tarc_setlinecolor 
-  :: (Ptr RawTArc) -> CInt -> IO ()
-foreign import ccall "HROOT.h TArc_SetFillColor" c_tarc_setfillcolor 
-  :: (Ptr RawTArc) -> CInt -> IO ()
-foreign import ccall "HROOT.h TArc_SetFillStyle" c_tarc_setfillstyle 
-  :: (Ptr RawTArc) -> CInt -> IO ()
-foreign import ccall "HROOT.h TArc_delete" c_tarc_delete 
-  :: (Ptr RawTArc) -> IO ()
-foreign import ccall "HROOT.h TArc_newTArc" c_tarc_newtarc 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTArc)
-
-foreign import ccall "HROOT.h TCrown_GetName" c_tcrown_getname 
-  :: (Ptr RawTCrown) -> IO CString
-foreign import ccall "HROOT.h TCrown_Draw" c_tcrown_draw 
-  :: (Ptr RawTCrown) -> CString -> IO ()
-foreign import ccall "HROOT.h TCrown_FindObject" c_tcrown_findobject 
-  :: (Ptr RawTCrown) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TCrown_SaveAs" c_tcrown_saveas 
-  :: (Ptr RawTCrown) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TCrown_Write" c_tcrown_write 
-  :: (Ptr RawTCrown) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TCrown_IsA" c_tcrown_isa 
-  :: (Ptr RawTCrown) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TCrown_printObj" c_tcrown_printobj 
-  :: (Ptr RawTCrown) -> CString -> IO ()
-foreign import ccall "HROOT.h TCrown_SetLineColor" c_tcrown_setlinecolor 
-  :: (Ptr RawTCrown) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCrown_SetFillColor" c_tcrown_setfillcolor 
-  :: (Ptr RawTCrown) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCrown_SetFillStyle" c_tcrown_setfillstyle 
-  :: (Ptr RawTCrown) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCrown_delete" c_tcrown_delete 
-  :: (Ptr RawTCrown) -> IO ()
-foreign import ccall "HROOT.h TCrown_newTCrown" c_tcrown_newtcrown 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTCrown)
-
-foreign import ccall "HROOT.h TLine_GetName" c_tline_getname 
-  :: (Ptr RawTLine) -> IO CString
-foreign import ccall "HROOT.h TLine_Draw" c_tline_draw 
-  :: (Ptr RawTLine) -> CString -> IO ()
-foreign import ccall "HROOT.h TLine_FindObject" c_tline_findobject 
-  :: (Ptr RawTLine) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TLine_SaveAs" c_tline_saveas 
-  :: (Ptr RawTLine) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TLine_Write" c_tline_write 
-  :: (Ptr RawTLine) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TLine_IsA" c_tline_isa 
-  :: (Ptr RawTLine) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TLine_printObj" c_tline_printobj 
-  :: (Ptr RawTLine) -> CString -> IO ()
-foreign import ccall "HROOT.h TLine_SetLineColor" c_tline_setlinecolor 
-  :: (Ptr RawTLine) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLine_delete" c_tline_delete 
-  :: (Ptr RawTLine) -> IO ()
-foreign import ccall "HROOT.h TLine_newTLine" c_tline_newtline 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTLine)
-
-foreign import ccall "HROOT.h TArrow_SetFillColor" c_tarrow_setfillcolor 
-  :: (Ptr RawTArrow) -> CInt -> IO ()
-foreign import ccall "HROOT.h TArrow_SetFillStyle" c_tarrow_setfillstyle 
-  :: (Ptr RawTArrow) -> CInt -> IO ()
-foreign import ccall "HROOT.h TArrow_GetName" c_tarrow_getname 
-  :: (Ptr RawTArrow) -> IO CString
-foreign import ccall "HROOT.h TArrow_Draw" c_tarrow_draw 
-  :: (Ptr RawTArrow) -> CString -> IO ()
-foreign import ccall "HROOT.h TArrow_FindObject" c_tarrow_findobject 
-  :: (Ptr RawTArrow) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TArrow_SaveAs" c_tarrow_saveas 
-  :: (Ptr RawTArrow) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TArrow_Write" c_tarrow_write 
-  :: (Ptr RawTArrow) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TArrow_IsA" c_tarrow_isa 
-  :: (Ptr RawTArrow) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TArrow_printObj" c_tarrow_printobj 
-  :: (Ptr RawTArrow) -> CString -> IO ()
-foreign import ccall "HROOT.h TArrow_SetLineColor" c_tarrow_setlinecolor 
-  :: (Ptr RawTArrow) -> CInt -> IO ()
-foreign import ccall "HROOT.h TArrow_delete" c_tarrow_delete 
-  :: (Ptr RawTArrow) -> IO ()
-foreign import ccall "HROOT.h TArrow_newTArrow" c_tarrow_newtarrow 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CString -> IO (Ptr RawTArrow)
-
-foreign import ccall "HROOT.h TGaxis_SetTextColor" c_tgaxis_settextcolor 
-  :: (Ptr RawTGaxis) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGaxis_SetTextAlign" c_tgaxis_settextalign 
-  :: (Ptr RawTGaxis) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGaxis_SetTextSize" c_tgaxis_settextsize 
-  :: (Ptr RawTGaxis) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TGaxis_GetName" c_tgaxis_getname 
-  :: (Ptr RawTGaxis) -> IO CString
-foreign import ccall "HROOT.h TGaxis_Draw" c_tgaxis_draw 
-  :: (Ptr RawTGaxis) -> CString -> IO ()
-foreign import ccall "HROOT.h TGaxis_FindObject" c_tgaxis_findobject 
-  :: (Ptr RawTGaxis) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TGaxis_SaveAs" c_tgaxis_saveas 
-  :: (Ptr RawTGaxis) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TGaxis_Write" c_tgaxis_write 
-  :: (Ptr RawTGaxis) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TGaxis_IsA" c_tgaxis_isa 
-  :: (Ptr RawTGaxis) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TGaxis_printObj" c_tgaxis_printobj 
-  :: (Ptr RawTGaxis) -> CString -> IO ()
-foreign import ccall "HROOT.h TGaxis_SetLineColor" c_tgaxis_setlinecolor 
-  :: (Ptr RawTGaxis) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGaxis_delete" c_tgaxis_delete 
-  :: (Ptr RawTGaxis) -> IO ()
-foreign import ccall "HROOT.h TGaxis_newTGaxis" c_tgaxis_newtgaxis 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CString -> CDouble -> IO (Ptr RawTGaxis)
-
-foreign import ccall "HROOT.h TShape_SetTitle" c_tshape_settitle 
-  :: (Ptr RawTShape) -> CString -> IO ()
-foreign import ccall "HROOT.h TShape_SetLineColor" c_tshape_setlinecolor 
-  :: (Ptr RawTShape) -> CInt -> IO ()
-foreign import ccall "HROOT.h TShape_SetFillColor" c_tshape_setfillcolor 
-  :: (Ptr RawTShape) -> CInt -> IO ()
-foreign import ccall "HROOT.h TShape_SetFillStyle" c_tshape_setfillstyle 
-  :: (Ptr RawTShape) -> CInt -> IO ()
-foreign import ccall "HROOT.h TShape_GetName" c_tshape_getname 
-  :: (Ptr RawTShape) -> IO CString
-foreign import ccall "HROOT.h TShape_Draw" c_tshape_draw 
-  :: (Ptr RawTShape) -> CString -> IO ()
-foreign import ccall "HROOT.h TShape_FindObject" c_tshape_findobject 
-  :: (Ptr RawTShape) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TShape_SaveAs" c_tshape_saveas 
-  :: (Ptr RawTShape) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TShape_Write" c_tshape_write 
-  :: (Ptr RawTShape) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TShape_IsA" c_tshape_isa 
-  :: (Ptr RawTShape) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TShape_printObj" c_tshape_printobj 
-  :: (Ptr RawTShape) -> CString -> IO ()
-foreign import ccall "HROOT.h TShape_delete" c_tshape_delete 
-  :: (Ptr RawTShape) -> IO ()
-foreign import ccall "HROOT.h TShape_newTShape" c_tshape_newtshape 
-  :: CString -> CString -> CString -> IO (Ptr RawTShape)
-
-foreign import ccall "HROOT.h TBRIK_SetTitle" c_tbrik_settitle 
-  :: (Ptr RawTBRIK) -> CString -> IO ()
-foreign import ccall "HROOT.h TBRIK_SetLineColor" c_tbrik_setlinecolor 
-  :: (Ptr RawTBRIK) -> CInt -> IO ()
-foreign import ccall "HROOT.h TBRIK_SetFillColor" c_tbrik_setfillcolor 
-  :: (Ptr RawTBRIK) -> CInt -> IO ()
-foreign import ccall "HROOT.h TBRIK_SetFillStyle" c_tbrik_setfillstyle 
-  :: (Ptr RawTBRIK) -> CInt -> IO ()
-foreign import ccall "HROOT.h TBRIK_GetName" c_tbrik_getname 
-  :: (Ptr RawTBRIK) -> IO CString
-foreign import ccall "HROOT.h TBRIK_Draw" c_tbrik_draw 
-  :: (Ptr RawTBRIK) -> CString -> IO ()
-foreign import ccall "HROOT.h TBRIK_FindObject" c_tbrik_findobject 
-  :: (Ptr RawTBRIK) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TBRIK_SaveAs" c_tbrik_saveas 
-  :: (Ptr RawTBRIK) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TBRIK_Write" c_tbrik_write 
-  :: (Ptr RawTBRIK) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TBRIK_IsA" c_tbrik_isa 
-  :: (Ptr RawTBRIK) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TBRIK_printObj" c_tbrik_printobj 
-  :: (Ptr RawTBRIK) -> CString -> IO ()
-foreign import ccall "HROOT.h TBRIK_delete" c_tbrik_delete 
-  :: (Ptr RawTBRIK) -> IO ()
-foreign import ccall "HROOT.h TBRIK_newTBRIK" c_tbrik_newtbrik 
-  :: CString -> CString -> CString -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTBRIK)
-
-foreign import ccall "HROOT.h TTUBE_SetTitle" c_ttube_settitle 
-  :: (Ptr RawTTUBE) -> CString -> IO ()
-foreign import ccall "HROOT.h TTUBE_SetLineColor" c_ttube_setlinecolor 
-  :: (Ptr RawTTUBE) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTUBE_SetFillColor" c_ttube_setfillcolor 
-  :: (Ptr RawTTUBE) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTUBE_SetFillStyle" c_ttube_setfillstyle 
-  :: (Ptr RawTTUBE) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTUBE_GetName" c_ttube_getname 
-  :: (Ptr RawTTUBE) -> IO CString
-foreign import ccall "HROOT.h TTUBE_Draw" c_ttube_draw 
-  :: (Ptr RawTTUBE) -> CString -> IO ()
-foreign import ccall "HROOT.h TTUBE_FindObject" c_ttube_findobject 
-  :: (Ptr RawTTUBE) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TTUBE_SaveAs" c_ttube_saveas 
-  :: (Ptr RawTTUBE) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TTUBE_Write" c_ttube_write 
-  :: (Ptr RawTTUBE) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TTUBE_IsA" c_ttube_isa 
-  :: (Ptr RawTTUBE) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TTUBE_printObj" c_ttube_printobj 
-  :: (Ptr RawTTUBE) -> CString -> IO ()
-foreign import ccall "HROOT.h TTUBE_delete" c_ttube_delete 
-  :: (Ptr RawTTUBE) -> IO ()
-foreign import ccall "HROOT.h TTUBE_newTTUBE" c_ttube_newttube 
-  :: CString -> CString -> CString -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTTUBE)
-
-foreign import ccall "HROOT.h TPCON_SetTitle" c_tpcon_settitle 
-  :: (Ptr RawTPCON) -> CString -> IO ()
-foreign import ccall "HROOT.h TPCON_SetLineColor" c_tpcon_setlinecolor 
-  :: (Ptr RawTPCON) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPCON_SetFillColor" c_tpcon_setfillcolor 
-  :: (Ptr RawTPCON) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPCON_SetFillStyle" c_tpcon_setfillstyle 
-  :: (Ptr RawTPCON) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPCON_GetName" c_tpcon_getname 
-  :: (Ptr RawTPCON) -> IO CString
-foreign import ccall "HROOT.h TPCON_Draw" c_tpcon_draw 
-  :: (Ptr RawTPCON) -> CString -> IO ()
-foreign import ccall "HROOT.h TPCON_FindObject" c_tpcon_findobject 
-  :: (Ptr RawTPCON) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPCON_SaveAs" c_tpcon_saveas 
-  :: (Ptr RawTPCON) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPCON_Write" c_tpcon_write 
-  :: (Ptr RawTPCON) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPCON_IsA" c_tpcon_isa 
-  :: (Ptr RawTPCON) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPCON_printObj" c_tpcon_printobj 
-  :: (Ptr RawTPCON) -> CString -> IO ()
-foreign import ccall "HROOT.h TPCON_delete" c_tpcon_delete 
-  :: (Ptr RawTPCON) -> IO ()
-foreign import ccall "HROOT.h TPCON_newTPCON" c_tpcon_newtpcon 
-  :: CString -> CString -> CString -> CDouble -> CDouble -> CInt -> IO (Ptr RawTPCON)
-
-foreign import ccall "HROOT.h TSPHE_SetTitle" c_tsphe_settitle 
-  :: (Ptr RawTSPHE) -> CString -> IO ()
-foreign import ccall "HROOT.h TSPHE_SetLineColor" c_tsphe_setlinecolor 
-  :: (Ptr RawTSPHE) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSPHE_SetFillColor" c_tsphe_setfillcolor 
-  :: (Ptr RawTSPHE) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSPHE_SetFillStyle" c_tsphe_setfillstyle 
-  :: (Ptr RawTSPHE) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSPHE_GetName" c_tsphe_getname 
-  :: (Ptr RawTSPHE) -> IO CString
-foreign import ccall "HROOT.h TSPHE_Draw" c_tsphe_draw 
-  :: (Ptr RawTSPHE) -> CString -> IO ()
-foreign import ccall "HROOT.h TSPHE_FindObject" c_tsphe_findobject 
-  :: (Ptr RawTSPHE) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TSPHE_SaveAs" c_tsphe_saveas 
-  :: (Ptr RawTSPHE) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TSPHE_Write" c_tsphe_write 
-  :: (Ptr RawTSPHE) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TSPHE_IsA" c_tsphe_isa 
-  :: (Ptr RawTSPHE) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TSPHE_printObj" c_tsphe_printobj 
-  :: (Ptr RawTSPHE) -> CString -> IO ()
-foreign import ccall "HROOT.h TSPHE_delete" c_tsphe_delete 
-  :: (Ptr RawTSPHE) -> IO ()
-foreign import ccall "HROOT.h TSPHE_newTSPHE" c_tsphe_newtsphe 
-  :: CString -> CString -> CString -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTSPHE)
-
-foreign import ccall "HROOT.h TXTRU_SetTitle" c_txtru_settitle 
-  :: (Ptr RawTXTRU) -> CString -> IO ()
-foreign import ccall "HROOT.h TXTRU_SetLineColor" c_txtru_setlinecolor 
-  :: (Ptr RawTXTRU) -> CInt -> IO ()
-foreign import ccall "HROOT.h TXTRU_SetFillColor" c_txtru_setfillcolor 
-  :: (Ptr RawTXTRU) -> CInt -> IO ()
-foreign import ccall "HROOT.h TXTRU_SetFillStyle" c_txtru_setfillstyle 
-  :: (Ptr RawTXTRU) -> CInt -> IO ()
-foreign import ccall "HROOT.h TXTRU_GetName" c_txtru_getname 
-  :: (Ptr RawTXTRU) -> IO CString
-foreign import ccall "HROOT.h TXTRU_Draw" c_txtru_draw 
-  :: (Ptr RawTXTRU) -> CString -> IO ()
-foreign import ccall "HROOT.h TXTRU_FindObject" c_txtru_findobject 
-  :: (Ptr RawTXTRU) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TXTRU_SaveAs" c_txtru_saveas 
-  :: (Ptr RawTXTRU) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TXTRU_Write" c_txtru_write 
-  :: (Ptr RawTXTRU) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TXTRU_IsA" c_txtru_isa 
-  :: (Ptr RawTXTRU) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TXTRU_printObj" c_txtru_printobj 
-  :: (Ptr RawTXTRU) -> CString -> IO ()
-foreign import ccall "HROOT.h TXTRU_delete" c_txtru_delete 
-  :: (Ptr RawTXTRU) -> IO ()
-foreign import ccall "HROOT.h TXTRU_newTXTRU" c_txtru_newtxtru 
-  :: CString -> CString -> CString -> CInt -> CInt -> IO (Ptr RawTXTRU)
-
-foreign import ccall "HROOT.h TBox_GetName" c_tbox_getname 
-  :: (Ptr RawTBox) -> IO CString
-foreign import ccall "HROOT.h TBox_Draw" c_tbox_draw 
-  :: (Ptr RawTBox) -> CString -> IO ()
-foreign import ccall "HROOT.h TBox_FindObject" c_tbox_findobject 
-  :: (Ptr RawTBox) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TBox_SaveAs" c_tbox_saveas 
-  :: (Ptr RawTBox) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TBox_Write" c_tbox_write 
-  :: (Ptr RawTBox) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TBox_IsA" c_tbox_isa 
-  :: (Ptr RawTBox) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TBox_printObj" c_tbox_printobj 
-  :: (Ptr RawTBox) -> CString -> IO ()
-foreign import ccall "HROOT.h TBox_SetLineColor" c_tbox_setlinecolor 
-  :: (Ptr RawTBox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TBox_SetFillColor" c_tbox_setfillcolor 
-  :: (Ptr RawTBox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TBox_SetFillStyle" c_tbox_setfillstyle 
-  :: (Ptr RawTBox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TBox_delete" c_tbox_delete 
-  :: (Ptr RawTBox) -> IO ()
-foreign import ccall "HROOT.h TBox_newTBox" c_tbox_newtbox 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTBox)
-
-foreign import ccall "HROOT.h TPave_GetName" c_tpave_getname 
-  :: (Ptr RawTPave) -> IO CString
-foreign import ccall "HROOT.h TPave_Draw" c_tpave_draw 
-  :: (Ptr RawTPave) -> CString -> IO ()
-foreign import ccall "HROOT.h TPave_FindObject" c_tpave_findobject 
-  :: (Ptr RawTPave) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPave_SaveAs" c_tpave_saveas 
-  :: (Ptr RawTPave) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPave_Write" c_tpave_write 
-  :: (Ptr RawTPave) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPave_IsA" c_tpave_isa 
-  :: (Ptr RawTPave) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPave_printObj" c_tpave_printobj 
-  :: (Ptr RawTPave) -> CString -> IO ()
-foreign import ccall "HROOT.h TPave_SetLineColor" c_tpave_setlinecolor 
-  :: (Ptr RawTPave) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPave_SetFillColor" c_tpave_setfillcolor 
-  :: (Ptr RawTPave) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPave_SetFillStyle" c_tpave_setfillstyle 
-  :: (Ptr RawTPave) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPave_delete" c_tpave_delete 
-  :: (Ptr RawTPave) -> IO ()
-foreign import ccall "HROOT.h TPave_newTPave" c_tpave_newtpave 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CString -> IO (Ptr RawTPave)
-
-foreign import ccall "HROOT.h TPaveText_SetTextColor" c_tpavetext_settextcolor 
-  :: (Ptr RawTPaveText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveText_SetTextAlign" c_tpavetext_settextalign 
-  :: (Ptr RawTPaveText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveText_SetTextSize" c_tpavetext_settextsize 
-  :: (Ptr RawTPaveText) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TPaveText_GetName" c_tpavetext_getname 
-  :: (Ptr RawTPaveText) -> IO CString
-foreign import ccall "HROOT.h TPaveText_Draw" c_tpavetext_draw 
-  :: (Ptr RawTPaveText) -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveText_FindObject" c_tpavetext_findobject 
-  :: (Ptr RawTPaveText) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPaveText_SaveAs" c_tpavetext_saveas 
-  :: (Ptr RawTPaveText) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveText_Write" c_tpavetext_write 
-  :: (Ptr RawTPaveText) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPaveText_IsA" c_tpavetext_isa 
-  :: (Ptr RawTPaveText) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPaveText_printObj" c_tpavetext_printobj 
-  :: (Ptr RawTPaveText) -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveText_SetLineColor" c_tpavetext_setlinecolor 
-  :: (Ptr RawTPaveText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveText_SetFillColor" c_tpavetext_setfillcolor 
-  :: (Ptr RawTPaveText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveText_SetFillStyle" c_tpavetext_setfillstyle 
-  :: (Ptr RawTPaveText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveText_delete" c_tpavetext_delete 
-  :: (Ptr RawTPaveText) -> IO ()
-foreign import ccall "HROOT.h TPaveText_newTPaveText" c_tpavetext_newtpavetext 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CString -> IO (Ptr RawTPaveText)
-
-foreign import ccall "HROOT.h TDiamond_SetTextColor" c_tdiamond_settextcolor 
-  :: (Ptr RawTDiamond) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDiamond_SetTextAlign" c_tdiamond_settextalign 
-  :: (Ptr RawTDiamond) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDiamond_SetTextSize" c_tdiamond_settextsize 
-  :: (Ptr RawTDiamond) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TDiamond_GetName" c_tdiamond_getname 
-  :: (Ptr RawTDiamond) -> IO CString
-foreign import ccall "HROOT.h TDiamond_Draw" c_tdiamond_draw 
-  :: (Ptr RawTDiamond) -> CString -> IO ()
-foreign import ccall "HROOT.h TDiamond_FindObject" c_tdiamond_findobject 
-  :: (Ptr RawTDiamond) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TDiamond_SaveAs" c_tdiamond_saveas 
-  :: (Ptr RawTDiamond) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TDiamond_Write" c_tdiamond_write 
-  :: (Ptr RawTDiamond) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TDiamond_IsA" c_tdiamond_isa 
-  :: (Ptr RawTDiamond) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TDiamond_printObj" c_tdiamond_printobj 
-  :: (Ptr RawTDiamond) -> CString -> IO ()
-foreign import ccall "HROOT.h TDiamond_SetLineColor" c_tdiamond_setlinecolor 
-  :: (Ptr RawTDiamond) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDiamond_SetFillColor" c_tdiamond_setfillcolor 
-  :: (Ptr RawTDiamond) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDiamond_SetFillStyle" c_tdiamond_setfillstyle 
-  :: (Ptr RawTDiamond) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDiamond_delete" c_tdiamond_delete 
-  :: (Ptr RawTDiamond) -> IO ()
-foreign import ccall "HROOT.h TDiamond_newTDiamond" c_tdiamond_newtdiamond 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTDiamond)
-
-foreign import ccall "HROOT.h TPaveStats_SetTextColor" c_tpavestats_settextcolor 
-  :: (Ptr RawTPaveStats) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveStats_SetTextAlign" c_tpavestats_settextalign 
-  :: (Ptr RawTPaveStats) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveStats_SetTextSize" c_tpavestats_settextsize 
-  :: (Ptr RawTPaveStats) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TPaveStats_GetName" c_tpavestats_getname 
-  :: (Ptr RawTPaveStats) -> IO CString
-foreign import ccall "HROOT.h TPaveStats_Draw" c_tpavestats_draw 
-  :: (Ptr RawTPaveStats) -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveStats_FindObject" c_tpavestats_findobject 
-  :: (Ptr RawTPaveStats) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPaveStats_SaveAs" c_tpavestats_saveas 
-  :: (Ptr RawTPaveStats) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveStats_Write" c_tpavestats_write 
-  :: (Ptr RawTPaveStats) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPaveStats_IsA" c_tpavestats_isa 
-  :: (Ptr RawTPaveStats) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPaveStats_printObj" c_tpavestats_printobj 
-  :: (Ptr RawTPaveStats) -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveStats_SetLineColor" c_tpavestats_setlinecolor 
-  :: (Ptr RawTPaveStats) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveStats_SetFillColor" c_tpavestats_setfillcolor 
-  :: (Ptr RawTPaveStats) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveStats_SetFillStyle" c_tpavestats_setfillstyle 
-  :: (Ptr RawTPaveStats) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveStats_delete" c_tpavestats_delete 
-  :: (Ptr RawTPaveStats) -> IO ()
-foreign import ccall "HROOT.h TPaveStats_newTPaveStats" c_tpavestats_newtpavestats 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CString -> IO (Ptr RawTPaveStats)
-
-foreign import ccall "HROOT.h TPavesText_SetTextColor" c_tpavestext_settextcolor 
-  :: (Ptr RawTPavesText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPavesText_SetTextAlign" c_tpavestext_settextalign 
-  :: (Ptr RawTPavesText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPavesText_SetTextSize" c_tpavestext_settextsize 
-  :: (Ptr RawTPavesText) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TPavesText_GetName" c_tpavestext_getname 
-  :: (Ptr RawTPavesText) -> IO CString
-foreign import ccall "HROOT.h TPavesText_Draw" c_tpavestext_draw 
-  :: (Ptr RawTPavesText) -> CString -> IO ()
-foreign import ccall "HROOT.h TPavesText_FindObject" c_tpavestext_findobject 
-  :: (Ptr RawTPavesText) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPavesText_SaveAs" c_tpavestext_saveas 
-  :: (Ptr RawTPavesText) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPavesText_Write" c_tpavestext_write 
-  :: (Ptr RawTPavesText) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPavesText_IsA" c_tpavestext_isa 
-  :: (Ptr RawTPavesText) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPavesText_printObj" c_tpavestext_printobj 
-  :: (Ptr RawTPavesText) -> CString -> IO ()
-foreign import ccall "HROOT.h TPavesText_SetLineColor" c_tpavestext_setlinecolor 
-  :: (Ptr RawTPavesText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPavesText_SetFillColor" c_tpavestext_setfillcolor 
-  :: (Ptr RawTPavesText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPavesText_SetFillStyle" c_tpavestext_setfillstyle 
-  :: (Ptr RawTPavesText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPavesText_delete" c_tpavestext_delete 
-  :: (Ptr RawTPavesText) -> IO ()
-foreign import ccall "HROOT.h TPavesText_newTPavesText" c_tpavestext_newtpavestext 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CString -> IO (Ptr RawTPavesText)
-
-foreign import ccall "HROOT.h TLegend_SetTextColor" c_tlegend_settextcolor 
-  :: (Ptr RawTLegend) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegend_SetTextAlign" c_tlegend_settextalign 
-  :: (Ptr RawTLegend) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegend_SetTextSize" c_tlegend_settextsize 
-  :: (Ptr RawTLegend) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TLegend_GetName" c_tlegend_getname 
-  :: (Ptr RawTLegend) -> IO CString
-foreign import ccall "HROOT.h TLegend_Draw" c_tlegend_draw 
-  :: (Ptr RawTLegend) -> CString -> IO ()
-foreign import ccall "HROOT.h TLegend_FindObject" c_tlegend_findobject 
-  :: (Ptr RawTLegend) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TLegend_SaveAs" c_tlegend_saveas 
-  :: (Ptr RawTLegend) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TLegend_Write" c_tlegend_write 
-  :: (Ptr RawTLegend) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TLegend_IsA" c_tlegend_isa 
-  :: (Ptr RawTLegend) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TLegend_printObj" c_tlegend_printobj 
-  :: (Ptr RawTLegend) -> CString -> IO ()
-foreign import ccall "HROOT.h TLegend_SetLineColor" c_tlegend_setlinecolor 
-  :: (Ptr RawTLegend) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegend_SetFillColor" c_tlegend_setfillcolor 
-  :: (Ptr RawTLegend) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegend_SetFillStyle" c_tlegend_setfillstyle 
-  :: (Ptr RawTLegend) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegend_delete" c_tlegend_delete 
-  :: (Ptr RawTLegend) -> IO ()
-foreign import ccall "HROOT.h TLegend_newTLegend" c_tlegend_newtlegend 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CString -> CString -> IO (Ptr RawTLegend)
-foreign import ccall "HROOT.h TLegend_AddEntry" c_tlegend_addentry 
-  :: (Ptr RawTLegend) -> (Ptr RawTObject) -> CString -> CString -> IO (Ptr RawTLegendEntry)
-
-foreign import ccall "HROOT.h TLegendEntry_GetName" c_tlegendentry_getname 
-  :: (Ptr RawTLegendEntry) -> IO CString
-foreign import ccall "HROOT.h TLegendEntry_Draw" c_tlegendentry_draw 
-  :: (Ptr RawTLegendEntry) -> CString -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_FindObject" c_tlegendentry_findobject 
-  :: (Ptr RawTLegendEntry) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TLegendEntry_SaveAs" c_tlegendentry_saveas 
-  :: (Ptr RawTLegendEntry) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_Write" c_tlegendentry_write 
-  :: (Ptr RawTLegendEntry) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TLegendEntry_IsA" c_tlegendentry_isa 
-  :: (Ptr RawTLegendEntry) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TLegendEntry_printObj" c_tlegendentry_printobj 
-  :: (Ptr RawTLegendEntry) -> CString -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_SetTextColor" c_tlegendentry_settextcolor 
-  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_SetTextAlign" c_tlegendentry_settextalign 
-  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_SetTextSize" c_tlegendentry_settextsize 
-  :: (Ptr RawTLegendEntry) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_SetLineColor" c_tlegendentry_setlinecolor 
-  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_SetFillColor" c_tlegendentry_setfillcolor 
-  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_SetFillStyle" c_tlegendentry_setfillstyle 
-  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLegendEntry_delete" c_tlegendentry_delete 
-  :: (Ptr RawTLegendEntry) -> IO ()
-
-foreign import ccall "HROOT.h TPaveLabel_SetTextColor" c_tpavelabel_settextcolor 
-  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_SetTextAlign" c_tpavelabel_settextalign 
-  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_SetTextSize" c_tpavelabel_settextsize 
-  :: (Ptr RawTPaveLabel) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_GetName" c_tpavelabel_getname 
-  :: (Ptr RawTPaveLabel) -> IO CString
-foreign import ccall "HROOT.h TPaveLabel_Draw" c_tpavelabel_draw 
-  :: (Ptr RawTPaveLabel) -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_FindObject" c_tpavelabel_findobject 
-  :: (Ptr RawTPaveLabel) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPaveLabel_SaveAs" c_tpavelabel_saveas 
-  :: (Ptr RawTPaveLabel) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_Write" c_tpavelabel_write 
-  :: (Ptr RawTPaveLabel) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPaveLabel_IsA" c_tpavelabel_isa 
-  :: (Ptr RawTPaveLabel) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPaveLabel_printObj" c_tpavelabel_printobj 
-  :: (Ptr RawTPaveLabel) -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_SetLineColor" c_tpavelabel_setlinecolor 
-  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_SetFillColor" c_tpavelabel_setfillcolor 
-  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_SetFillStyle" c_tpavelabel_setfillstyle 
-  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_delete" c_tpavelabel_delete 
-  :: (Ptr RawTPaveLabel) -> IO ()
-foreign import ccall "HROOT.h TPaveLabel_newTPaveLabel" c_tpavelabel_newtpavelabel 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CString -> CString -> IO (Ptr RawTPaveLabel)
-
-foreign import ccall "HROOT.h TPaveClass_SetTextColor" c_tpaveclass_settextcolor 
-  :: (Ptr RawTPaveClass) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveClass_SetTextAlign" c_tpaveclass_settextalign 
-  :: (Ptr RawTPaveClass) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveClass_SetTextSize" c_tpaveclass_settextsize 
-  :: (Ptr RawTPaveClass) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TPaveClass_GetName" c_tpaveclass_getname 
-  :: (Ptr RawTPaveClass) -> IO CString
-foreign import ccall "HROOT.h TPaveClass_Draw" c_tpaveclass_draw 
-  :: (Ptr RawTPaveClass) -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveClass_FindObject" c_tpaveclass_findobject 
-  :: (Ptr RawTPaveClass) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPaveClass_SaveAs" c_tpaveclass_saveas 
-  :: (Ptr RawTPaveClass) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveClass_Write" c_tpaveclass_write 
-  :: (Ptr RawTPaveClass) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPaveClass_IsA" c_tpaveclass_isa 
-  :: (Ptr RawTPaveClass) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPaveClass_printObj" c_tpaveclass_printobj 
-  :: (Ptr RawTPaveClass) -> CString -> IO ()
-foreign import ccall "HROOT.h TPaveClass_SetLineColor" c_tpaveclass_setlinecolor 
-  :: (Ptr RawTPaveClass) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveClass_SetFillColor" c_tpaveclass_setfillcolor 
-  :: (Ptr RawTPaveClass) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveClass_SetFillStyle" c_tpaveclass_setfillstyle 
-  :: (Ptr RawTPaveClass) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPaveClass_delete" c_tpaveclass_delete 
-  :: (Ptr RawTPaveClass) -> IO ()
-
-foreign import ccall "HROOT.h TWbox_GetName" c_twbox_getname 
-  :: (Ptr RawTWbox) -> IO CString
-foreign import ccall "HROOT.h TWbox_Draw" c_twbox_draw 
-  :: (Ptr RawTWbox) -> CString -> IO ()
-foreign import ccall "HROOT.h TWbox_FindObject" c_twbox_findobject 
-  :: (Ptr RawTWbox) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TWbox_SaveAs" c_twbox_saveas 
-  :: (Ptr RawTWbox) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TWbox_Write" c_twbox_write 
-  :: (Ptr RawTWbox) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TWbox_IsA" c_twbox_isa 
-  :: (Ptr RawTWbox) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TWbox_printObj" c_twbox_printobj 
-  :: (Ptr RawTWbox) -> CString -> IO ()
-foreign import ccall "HROOT.h TWbox_SetLineColor" c_twbox_setlinecolor 
-  :: (Ptr RawTWbox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TWbox_SetFillColor" c_twbox_setfillcolor 
-  :: (Ptr RawTWbox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TWbox_SetFillStyle" c_twbox_setfillstyle 
-  :: (Ptr RawTWbox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TWbox_delete" c_twbox_delete 
-  :: (Ptr RawTWbox) -> IO ()
-foreign import ccall "HROOT.h TWbox_newTWbox" c_twbox_newtwbox 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CInt -> CInt -> IO (Ptr RawTWbox)
-foreign import ccall "HROOT.h TWbox_SetBorderMode" c_twbox_setbordermode 
-  :: (Ptr RawTWbox) -> CInt -> IO ()
-
-foreign import ccall "HROOT.h TFrame_SetBorderMode" c_tframe_setbordermode 
-  :: (Ptr RawTFrame) -> CInt -> IO ()
-foreign import ccall "HROOT.h TFrame_GetName" c_tframe_getname 
-  :: (Ptr RawTFrame) -> IO CString
-foreign import ccall "HROOT.h TFrame_Draw" c_tframe_draw 
-  :: (Ptr RawTFrame) -> CString -> IO ()
-foreign import ccall "HROOT.h TFrame_FindObject" c_tframe_findobject 
-  :: (Ptr RawTFrame) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TFrame_SaveAs" c_tframe_saveas 
-  :: (Ptr RawTFrame) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TFrame_Write" c_tframe_write 
-  :: (Ptr RawTFrame) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TFrame_IsA" c_tframe_isa 
-  :: (Ptr RawTFrame) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TFrame_printObj" c_tframe_printobj 
-  :: (Ptr RawTFrame) -> CString -> IO ()
-foreign import ccall "HROOT.h TFrame_SetLineColor" c_tframe_setlinecolor 
-  :: (Ptr RawTFrame) -> CInt -> IO ()
-foreign import ccall "HROOT.h TFrame_SetFillColor" c_tframe_setfillcolor 
-  :: (Ptr RawTFrame) -> CInt -> IO ()
-foreign import ccall "HROOT.h TFrame_SetFillStyle" c_tframe_setfillstyle 
-  :: (Ptr RawTFrame) -> CInt -> IO ()
-foreign import ccall "HROOT.h TFrame_delete" c_tframe_delete 
-  :: (Ptr RawTFrame) -> IO ()
-foreign import ccall "HROOT.h TFrame_newTFrame" c_tframe_newtframe 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTFrame)
-
-foreign import ccall "HROOT.h TSliderBox_SetBorderMode" c_tsliderbox_setbordermode 
-  :: (Ptr RawTSliderBox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSliderBox_GetName" c_tsliderbox_getname 
-  :: (Ptr RawTSliderBox) -> IO CString
-foreign import ccall "HROOT.h TSliderBox_Draw" c_tsliderbox_draw 
-  :: (Ptr RawTSliderBox) -> CString -> IO ()
-foreign import ccall "HROOT.h TSliderBox_FindObject" c_tsliderbox_findobject 
-  :: (Ptr RawTSliderBox) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TSliderBox_SaveAs" c_tsliderbox_saveas 
-  :: (Ptr RawTSliderBox) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TSliderBox_Write" c_tsliderbox_write 
-  :: (Ptr RawTSliderBox) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TSliderBox_IsA" c_tsliderbox_isa 
-  :: (Ptr RawTSliderBox) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TSliderBox_printObj" c_tsliderbox_printobj 
-  :: (Ptr RawTSliderBox) -> CString -> IO ()
-foreign import ccall "HROOT.h TSliderBox_SetLineColor" c_tsliderbox_setlinecolor 
-  :: (Ptr RawTSliderBox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSliderBox_SetFillColor" c_tsliderbox_setfillcolor 
-  :: (Ptr RawTSliderBox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSliderBox_SetFillStyle" c_tsliderbox_setfillstyle 
-  :: (Ptr RawTSliderBox) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSliderBox_delete" c_tsliderbox_delete 
-  :: (Ptr RawTSliderBox) -> IO ()
-foreign import ccall "HROOT.h TSliderBox_newTSliderBox" c_tsliderbox_newtsliderbox 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CInt -> CInt -> IO (Ptr RawTSliderBox)
-
-foreign import ccall "HROOT.h TTree_SetTitle" c_ttree_settitle 
-  :: (Ptr RawTTree) -> CString -> IO ()
-foreign import ccall "HROOT.h TTree_SetLineColor" c_ttree_setlinecolor 
-  :: (Ptr RawTTree) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTree_SetFillColor" c_ttree_setfillcolor 
-  :: (Ptr RawTTree) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTree_SetFillStyle" c_ttree_setfillstyle 
-  :: (Ptr RawTTree) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTree_GetName" c_ttree_getname 
-  :: (Ptr RawTTree) -> IO CString
-foreign import ccall "HROOT.h TTree_Draw" c_ttree_draw 
-  :: (Ptr RawTTree) -> CString -> IO ()
-foreign import ccall "HROOT.h TTree_FindObject" c_ttree_findobject 
-  :: (Ptr RawTTree) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TTree_SaveAs" c_ttree_saveas 
-  :: (Ptr RawTTree) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TTree_Write" c_ttree_write 
-  :: (Ptr RawTTree) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TTree_IsA" c_ttree_isa 
-  :: (Ptr RawTTree) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TTree_printObj" c_ttree_printobj 
-  :: (Ptr RawTTree) -> CString -> IO ()
-foreign import ccall "HROOT.h TTree_delete" c_ttree_delete 
-  :: (Ptr RawTTree) -> IO ()
-foreign import ccall "HROOT.h TTree_newTTree" c_ttree_newttree 
-  :: CString -> CString -> CInt -> IO (Ptr RawTTree)
-
-foreign import ccall "HROOT.h TChain_SetTitle" c_tchain_settitle 
-  :: (Ptr RawTChain) -> CString -> IO ()
-foreign import ccall "HROOT.h TChain_SetLineColor" c_tchain_setlinecolor 
-  :: (Ptr RawTChain) -> CInt -> IO ()
-foreign import ccall "HROOT.h TChain_SetFillColor" c_tchain_setfillcolor 
-  :: (Ptr RawTChain) -> CInt -> IO ()
-foreign import ccall "HROOT.h TChain_SetFillStyle" c_tchain_setfillstyle 
-  :: (Ptr RawTChain) -> CInt -> IO ()
-foreign import ccall "HROOT.h TChain_GetName" c_tchain_getname 
-  :: (Ptr RawTChain) -> IO CString
-foreign import ccall "HROOT.h TChain_Draw" c_tchain_draw 
-  :: (Ptr RawTChain) -> CString -> IO ()
-foreign import ccall "HROOT.h TChain_FindObject" c_tchain_findobject 
-  :: (Ptr RawTChain) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TChain_SaveAs" c_tchain_saveas 
-  :: (Ptr RawTChain) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TChain_Write" c_tchain_write 
-  :: (Ptr RawTChain) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TChain_IsA" c_tchain_isa 
-  :: (Ptr RawTChain) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TChain_printObj" c_tchain_printobj 
-  :: (Ptr RawTChain) -> CString -> IO ()
-foreign import ccall "HROOT.h TChain_delete" c_tchain_delete 
-  :: (Ptr RawTChain) -> IO ()
-foreign import ccall "HROOT.h TChain_newTChain" c_tchain_newtchain 
-  :: CString -> CString -> IO (Ptr RawTChain)
-
-foreign import ccall "HROOT.h TNtuple_SetTitle" c_tntuple_settitle 
-  :: (Ptr RawTNtuple) -> CString -> IO ()
-foreign import ccall "HROOT.h TNtuple_SetLineColor" c_tntuple_setlinecolor 
-  :: (Ptr RawTNtuple) -> CInt -> IO ()
-foreign import ccall "HROOT.h TNtuple_SetFillColor" c_tntuple_setfillcolor 
-  :: (Ptr RawTNtuple) -> CInt -> IO ()
-foreign import ccall "HROOT.h TNtuple_SetFillStyle" c_tntuple_setfillstyle 
-  :: (Ptr RawTNtuple) -> CInt -> IO ()
-foreign import ccall "HROOT.h TNtuple_GetName" c_tntuple_getname 
-  :: (Ptr RawTNtuple) -> IO CString
-foreign import ccall "HROOT.h TNtuple_Draw" c_tntuple_draw 
-  :: (Ptr RawTNtuple) -> CString -> IO ()
-foreign import ccall "HROOT.h TNtuple_FindObject" c_tntuple_findobject 
-  :: (Ptr RawTNtuple) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TNtuple_SaveAs" c_tntuple_saveas 
-  :: (Ptr RawTNtuple) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TNtuple_Write" c_tntuple_write 
-  :: (Ptr RawTNtuple) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TNtuple_IsA" c_tntuple_isa 
-  :: (Ptr RawTNtuple) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TNtuple_printObj" c_tntuple_printobj 
-  :: (Ptr RawTNtuple) -> CString -> IO ()
-foreign import ccall "HROOT.h TNtuple_delete" c_tntuple_delete 
-  :: (Ptr RawTNtuple) -> IO ()
-foreign import ccall "HROOT.h TNtuple_newTNtuple" c_tntuple_newtntuple 
-  :: CString -> CString -> CString -> CInt -> IO (Ptr RawTNtuple)
-
-foreign import ccall "HROOT.h TNtupleD_SetTitle" c_tntupled_settitle 
-  :: (Ptr RawTNtupleD) -> CString -> IO ()
-foreign import ccall "HROOT.h TNtupleD_SetLineColor" c_tntupled_setlinecolor 
-  :: (Ptr RawTNtupleD) -> CInt -> IO ()
-foreign import ccall "HROOT.h TNtupleD_SetFillColor" c_tntupled_setfillcolor 
-  :: (Ptr RawTNtupleD) -> CInt -> IO ()
-foreign import ccall "HROOT.h TNtupleD_SetFillStyle" c_tntupled_setfillstyle 
-  :: (Ptr RawTNtupleD) -> CInt -> IO ()
-foreign import ccall "HROOT.h TNtupleD_GetName" c_tntupled_getname 
-  :: (Ptr RawTNtupleD) -> IO CString
-foreign import ccall "HROOT.h TNtupleD_Draw" c_tntupled_draw 
-  :: (Ptr RawTNtupleD) -> CString -> IO ()
-foreign import ccall "HROOT.h TNtupleD_FindObject" c_tntupled_findobject 
-  :: (Ptr RawTNtupleD) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TNtupleD_SaveAs" c_tntupled_saveas 
-  :: (Ptr RawTNtupleD) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TNtupleD_Write" c_tntupled_write 
-  :: (Ptr RawTNtupleD) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TNtupleD_IsA" c_tntupled_isa 
-  :: (Ptr RawTNtupleD) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TNtupleD_printObj" c_tntupled_printobj 
-  :: (Ptr RawTNtupleD) -> CString -> IO ()
-foreign import ccall "HROOT.h TNtupleD_delete" c_tntupled_delete 
-  :: (Ptr RawTNtupleD) -> IO ()
-foreign import ccall "HROOT.h TNtupleD_newTNtupleD" c_tntupled_newtntupled 
-  :: CString -> CString -> CString -> CInt -> IO (Ptr RawTNtupleD)
-
-foreign import ccall "HROOT.h TTreeSQL_SetTitle" c_ttreesql_settitle 
-  :: (Ptr RawTTreeSQL) -> CString -> IO ()
-foreign import ccall "HROOT.h TTreeSQL_SetLineColor" c_ttreesql_setlinecolor 
-  :: (Ptr RawTTreeSQL) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTreeSQL_SetFillColor" c_ttreesql_setfillcolor 
-  :: (Ptr RawTTreeSQL) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTreeSQL_SetFillStyle" c_ttreesql_setfillstyle 
-  :: (Ptr RawTTreeSQL) -> CInt -> IO ()
-foreign import ccall "HROOT.h TTreeSQL_GetName" c_ttreesql_getname 
-  :: (Ptr RawTTreeSQL) -> IO CString
-foreign import ccall "HROOT.h TTreeSQL_Draw" c_ttreesql_draw 
-  :: (Ptr RawTTreeSQL) -> CString -> IO ()
-foreign import ccall "HROOT.h TTreeSQL_FindObject" c_ttreesql_findobject 
-  :: (Ptr RawTTreeSQL) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TTreeSQL_SaveAs" c_ttreesql_saveas 
-  :: (Ptr RawTTreeSQL) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TTreeSQL_Write" c_ttreesql_write 
-  :: (Ptr RawTTreeSQL) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TTreeSQL_IsA" c_ttreesql_isa 
-  :: (Ptr RawTTreeSQL) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TTreeSQL_printObj" c_ttreesql_printobj 
-  :: (Ptr RawTTreeSQL) -> CString -> IO ()
-foreign import ccall "HROOT.h TTreeSQL_delete" c_ttreesql_delete 
-  :: (Ptr RawTTreeSQL) -> IO ()
-
-foreign import ccall "HROOT.h TPolyLine_GetName" c_tpolyline_getname 
-  :: (Ptr RawTPolyLine) -> IO CString
-foreign import ccall "HROOT.h TPolyLine_Draw" c_tpolyline_draw 
-  :: (Ptr RawTPolyLine) -> CString -> IO ()
-foreign import ccall "HROOT.h TPolyLine_FindObject" c_tpolyline_findobject 
-  :: (Ptr RawTPolyLine) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPolyLine_SaveAs" c_tpolyline_saveas 
-  :: (Ptr RawTPolyLine) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPolyLine_Write" c_tpolyline_write 
-  :: (Ptr RawTPolyLine) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPolyLine_IsA" c_tpolyline_isa 
-  :: (Ptr RawTPolyLine) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPolyLine_printObj" c_tpolyline_printobj 
-  :: (Ptr RawTPolyLine) -> CString -> IO ()
-foreign import ccall "HROOT.h TPolyLine_SetLineColor" c_tpolyline_setlinecolor 
-  :: (Ptr RawTPolyLine) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPolyLine_SetFillColor" c_tpolyline_setfillcolor 
-  :: (Ptr RawTPolyLine) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPolyLine_SetFillStyle" c_tpolyline_setfillstyle 
-  :: (Ptr RawTPolyLine) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPolyLine_delete" c_tpolyline_delete 
-  :: (Ptr RawTPolyLine) -> IO ()
-foreign import ccall "HROOT.h TPolyLine_newTPolyLine" c_tpolyline_newtpolyline 
-  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CString -> IO (Ptr RawTPolyLine)
-
-foreign import ccall "HROOT.h TCurlyLine_GetName" c_tcurlyline_getname 
-  :: (Ptr RawTCurlyLine) -> IO CString
-foreign import ccall "HROOT.h TCurlyLine_Draw" c_tcurlyline_draw 
-  :: (Ptr RawTCurlyLine) -> CString -> IO ()
-foreign import ccall "HROOT.h TCurlyLine_FindObject" c_tcurlyline_findobject 
-  :: (Ptr RawTCurlyLine) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TCurlyLine_SaveAs" c_tcurlyline_saveas 
-  :: (Ptr RawTCurlyLine) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TCurlyLine_Write" c_tcurlyline_write 
-  :: (Ptr RawTCurlyLine) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TCurlyLine_IsA" c_tcurlyline_isa 
-  :: (Ptr RawTCurlyLine) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TCurlyLine_printObj" c_tcurlyline_printobj 
-  :: (Ptr RawTCurlyLine) -> CString -> IO ()
-foreign import ccall "HROOT.h TCurlyLine_SetLineColor" c_tcurlyline_setlinecolor 
-  :: (Ptr RawTCurlyLine) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCurlyLine_SetFillColor" c_tcurlyline_setfillcolor 
-  :: (Ptr RawTCurlyLine) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCurlyLine_SetFillStyle" c_tcurlyline_setfillstyle 
-  :: (Ptr RawTCurlyLine) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCurlyLine_delete" c_tcurlyline_delete 
-  :: (Ptr RawTCurlyLine) -> IO ()
-foreign import ccall "HROOT.h TCurlyLine_newTCurlyLine" c_tcurlyline_newtcurlyline 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTCurlyLine)
-
-foreign import ccall "HROOT.h TCurlyArc_GetName" c_tcurlyarc_getname 
-  :: (Ptr RawTCurlyArc) -> IO CString
-foreign import ccall "HROOT.h TCurlyArc_Draw" c_tcurlyarc_draw 
-  :: (Ptr RawTCurlyArc) -> CString -> IO ()
-foreign import ccall "HROOT.h TCurlyArc_FindObject" c_tcurlyarc_findobject 
-  :: (Ptr RawTCurlyArc) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TCurlyArc_SaveAs" c_tcurlyarc_saveas 
-  :: (Ptr RawTCurlyArc) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TCurlyArc_Write" c_tcurlyarc_write 
-  :: (Ptr RawTCurlyArc) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TCurlyArc_IsA" c_tcurlyarc_isa 
-  :: (Ptr RawTCurlyArc) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TCurlyArc_printObj" c_tcurlyarc_printobj 
-  :: (Ptr RawTCurlyArc) -> CString -> IO ()
-foreign import ccall "HROOT.h TCurlyArc_SetLineColor" c_tcurlyarc_setlinecolor 
-  :: (Ptr RawTCurlyArc) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCurlyArc_SetFillColor" c_tcurlyarc_setfillcolor 
-  :: (Ptr RawTCurlyArc) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCurlyArc_SetFillStyle" c_tcurlyarc_setfillstyle 
-  :: (Ptr RawTCurlyArc) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCurlyArc_delete" c_tcurlyarc_delete 
-  :: (Ptr RawTCurlyArc) -> IO ()
-foreign import ccall "HROOT.h TCurlyArc_newTCurlyArc" c_tcurlyarc_newtcurlyarc 
-  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTCurlyArc)
-
-foreign import ccall "HROOT.h TEfficiency_SetTitle" c_tefficiency_settitle 
-  :: (Ptr RawTEfficiency) -> CString -> IO ()
-foreign import ccall "HROOT.h TEfficiency_SetLineColor" c_tefficiency_setlinecolor 
-  :: (Ptr RawTEfficiency) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEfficiency_SetFillColor" c_tefficiency_setfillcolor 
-  :: (Ptr RawTEfficiency) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEfficiency_SetFillStyle" c_tefficiency_setfillstyle 
-  :: (Ptr RawTEfficiency) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEfficiency_GetName" c_tefficiency_getname 
-  :: (Ptr RawTEfficiency) -> IO CString
-foreign import ccall "HROOT.h TEfficiency_Draw" c_tefficiency_draw 
-  :: (Ptr RawTEfficiency) -> CString -> IO ()
-foreign import ccall "HROOT.h TEfficiency_FindObject" c_tefficiency_findobject 
-  :: (Ptr RawTEfficiency) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TEfficiency_SaveAs" c_tefficiency_saveas 
-  :: (Ptr RawTEfficiency) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TEfficiency_Write" c_tefficiency_write 
-  :: (Ptr RawTEfficiency) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TEfficiency_IsA" c_tefficiency_isa 
-  :: (Ptr RawTEfficiency) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TEfficiency_printObj" c_tefficiency_printobj 
-  :: (Ptr RawTEfficiency) -> CString -> IO ()
-foreign import ccall "HROOT.h TEfficiency_delete" c_tefficiency_delete 
-  :: (Ptr RawTEfficiency) -> IO ()
-
-foreign import ccall "HROOT.h TAxis_SetTitle" c_taxis_settitle 
-  :: (Ptr RawTAxis) -> CString -> IO ()
-foreign import ccall "HROOT.h TAxis_SetLabelColor" c_taxis_setlabelcolor 
-  :: (Ptr RawTAxis) -> CInt -> IO ()
-foreign import ccall "HROOT.h TAxis_SetLabelSize" c_taxis_setlabelsize 
-  :: (Ptr RawTAxis) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TAxis_SetTickLength" c_taxis_setticklength 
-  :: (Ptr RawTAxis) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TAxis_SetTitleOffset" c_taxis_settitleoffset 
-  :: (Ptr RawTAxis) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TAxis_SetNdivisions" c_taxis_setndivisions 
-  :: (Ptr RawTAxis) -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TAxis_GetName" c_taxis_getname 
-  :: (Ptr RawTAxis) -> IO CString
-foreign import ccall "HROOT.h TAxis_Draw" c_taxis_draw 
-  :: (Ptr RawTAxis) -> CString -> IO ()
-foreign import ccall "HROOT.h TAxis_FindObject" c_taxis_findobject 
-  :: (Ptr RawTAxis) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TAxis_SaveAs" c_taxis_saveas 
-  :: (Ptr RawTAxis) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TAxis_Write" c_taxis_write 
-  :: (Ptr RawTAxis) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TAxis_IsA" c_taxis_isa 
-  :: (Ptr RawTAxis) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TAxis_printObj" c_taxis_printobj 
-  :: (Ptr RawTAxis) -> CString -> IO ()
-foreign import ccall "HROOT.h TAxis_delete" c_taxis_delete 
-  :: (Ptr RawTAxis) -> IO ()
-foreign import ccall "HROOT.h TAxis_newTAxis" c_taxis_newtaxis 
-  :: CInt -> CDouble -> CDouble -> IO (Ptr RawTAxis)
-foreign import ccall "HROOT.h TAxis_SetTimeDisplay" c_taxis_settimedisplay 
-  :: (Ptr RawTAxis) -> CInt -> IO ()
-foreign import ccall "HROOT.h TAxis_SetTimeFormat" c_taxis_settimeformat 
-  :: (Ptr RawTAxis) -> CString -> IO ()
-foreign import ccall "HROOT.h TAxis_SetTimeOffset" c_taxis_settimeoffset 
-  :: (Ptr RawTAxis) -> CDouble -> CString -> IO ()
-
-foreign import ccall "HROOT.h TLatex_SetLineColor" c_tlatex_setlinecolor 
-  :: (Ptr RawTLatex) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLatex_SetTitle" c_tlatex_settitle 
-  :: (Ptr RawTLatex) -> CString -> IO ()
-foreign import ccall "HROOT.h TLatex_SetTextColor" c_tlatex_settextcolor 
-  :: (Ptr RawTLatex) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLatex_SetTextAlign" c_tlatex_settextalign 
-  :: (Ptr RawTLatex) -> CInt -> IO ()
-foreign import ccall "HROOT.h TLatex_SetTextSize" c_tlatex_settextsize 
-  :: (Ptr RawTLatex) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TLatex_GetName" c_tlatex_getname 
-  :: (Ptr RawTLatex) -> IO CString
-foreign import ccall "HROOT.h TLatex_Draw" c_tlatex_draw 
-  :: (Ptr RawTLatex) -> CString -> IO ()
-foreign import ccall "HROOT.h TLatex_FindObject" c_tlatex_findobject 
-  :: (Ptr RawTLatex) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TLatex_SaveAs" c_tlatex_saveas 
-  :: (Ptr RawTLatex) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TLatex_Write" c_tlatex_write 
-  :: (Ptr RawTLatex) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TLatex_IsA" c_tlatex_isa 
-  :: (Ptr RawTLatex) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TLatex_printObj" c_tlatex_printobj 
-  :: (Ptr RawTLatex) -> CString -> IO ()
-foreign import ccall "HROOT.h TLatex_delete" c_tlatex_delete 
-  :: (Ptr RawTLatex) -> IO ()
-foreign import ccall "HROOT.h TLatex_newTLatex" c_tlatex_newtlatex 
-  :: CDouble -> CDouble -> CString -> IO (Ptr RawTLatex)
-foreign import ccall "HROOT.h TLatex_tLatexDrawLatex" c_tlatex_tlatexdrawlatex 
-  :: (Ptr RawTLatex) -> CDouble -> CDouble -> CString -> IO (Ptr RawTLatex)
-
-foreign import ccall "HROOT.h TText_SetTitle" c_ttext_settitle 
-  :: (Ptr RawTText) -> CString -> IO ()
-foreign import ccall "HROOT.h TText_SetTextColor" c_ttext_settextcolor 
-  :: (Ptr RawTText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TText_SetTextAlign" c_ttext_settextalign 
-  :: (Ptr RawTText) -> CInt -> IO ()
-foreign import ccall "HROOT.h TText_SetTextSize" c_ttext_settextsize 
-  :: (Ptr RawTText) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TText_GetName" c_ttext_getname 
-  :: (Ptr RawTText) -> IO CString
-foreign import ccall "HROOT.h TText_Draw" c_ttext_draw 
-  :: (Ptr RawTText) -> CString -> IO ()
-foreign import ccall "HROOT.h TText_FindObject" c_ttext_findobject 
-  :: (Ptr RawTText) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TText_SaveAs" c_ttext_saveas 
-  :: (Ptr RawTText) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TText_Write" c_ttext_write 
-  :: (Ptr RawTText) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TText_IsA" c_ttext_isa 
-  :: (Ptr RawTText) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TText_printObj" c_ttext_printobj 
-  :: (Ptr RawTText) -> CString -> IO ()
-foreign import ccall "HROOT.h TText_delete" c_ttext_delete 
-  :: (Ptr RawTText) -> IO ()
-
-foreign import ccall "HROOT.h TDirectory_SetTitle" c_tdirectory_settitle 
-  :: (Ptr RawTDirectory) -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectory_GetName" c_tdirectory_getname 
-  :: (Ptr RawTDirectory) -> IO CString
-foreign import ccall "HROOT.h TDirectory_Draw" c_tdirectory_draw 
-  :: (Ptr RawTDirectory) -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectory_FindObject" c_tdirectory_findobject 
-  :: (Ptr RawTDirectory) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TDirectory_SaveAs" c_tdirectory_saveas 
-  :: (Ptr RawTDirectory) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectory_Write" c_tdirectory_write 
-  :: (Ptr RawTDirectory) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TDirectory_IsA" c_tdirectory_isa 
-  :: (Ptr RawTDirectory) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TDirectory_printObj" c_tdirectory_printobj 
-  :: (Ptr RawTDirectory) -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectory_delete" c_tdirectory_delete 
-  :: (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TDirectory_Append" c_tdirectory_append 
-  :: (Ptr RawTDirectory) -> (Ptr RawTObject) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDirectory_addD" c_tdirectory_addd 
-  :: (Ptr RawTDirectory) -> (Ptr RawTObject) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDirectory_AppendKey" c_tdirectory_appendkey 
-  :: (Ptr RawTDirectory) -> (Ptr RawTKey) -> IO CInt
-foreign import ccall "HROOT.h TDirectory_Close" c_tdirectory_close 
-  :: (Ptr RawTDirectory) -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectory_Get" c_tdirectory_get 
-  :: (Ptr RawTDirectory) -> CString -> IO (Ptr RawTObject)
-
-foreign import ccall "HROOT.h TDirectoryFile_Append" c_tdirectoryfile_append 
-  :: (Ptr RawTDirectoryFile) -> (Ptr RawTObject) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDirectoryFile_addD" c_tdirectoryfile_addd 
-  :: (Ptr RawTDirectoryFile) -> (Ptr RawTObject) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDirectoryFile_AppendKey" c_tdirectoryfile_appendkey 
-  :: (Ptr RawTDirectoryFile) -> (Ptr RawTKey) -> IO CInt
-foreign import ccall "HROOT.h TDirectoryFile_Close" c_tdirectoryfile_close 
-  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectoryFile_Get" c_tdirectoryfile_get 
-  :: (Ptr RawTDirectoryFile) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TDirectoryFile_SetTitle" c_tdirectoryfile_settitle 
-  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectoryFile_GetName" c_tdirectoryfile_getname 
-  :: (Ptr RawTDirectoryFile) -> IO CString
-foreign import ccall "HROOT.h TDirectoryFile_Draw" c_tdirectoryfile_draw 
-  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectoryFile_FindObject" c_tdirectoryfile_findobject 
-  :: (Ptr RawTDirectoryFile) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TDirectoryFile_SaveAs" c_tdirectoryfile_saveas 
-  :: (Ptr RawTDirectoryFile) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectoryFile_Write" c_tdirectoryfile_write 
-  :: (Ptr RawTDirectoryFile) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TDirectoryFile_IsA" c_tdirectoryfile_isa 
-  :: (Ptr RawTDirectoryFile) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TDirectoryFile_printObj" c_tdirectoryfile_printobj 
-  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
-foreign import ccall "HROOT.h TDirectoryFile_delete" c_tdirectoryfile_delete 
-  :: (Ptr RawTDirectoryFile) -> IO ()
-foreign import ccall "HROOT.h TDirectoryFile_GetListOfKeys" c_tdirectoryfile_getlistofkeys 
-  :: (Ptr RawTDirectoryFile) -> IO (Ptr RawTList)
-
-foreign import ccall "HROOT.h TFile_GetListOfKeys" c_tfile_getlistofkeys 
-  :: (Ptr RawTFile) -> IO (Ptr RawTList)
-foreign import ccall "HROOT.h TFile_Append" c_tfile_append 
-  :: (Ptr RawTFile) -> (Ptr RawTObject) -> CInt -> IO ()
-foreign import ccall "HROOT.h TFile_addD" c_tfile_addd 
-  :: (Ptr RawTFile) -> (Ptr RawTObject) -> CInt -> IO ()
-foreign import ccall "HROOT.h TFile_AppendKey" c_tfile_appendkey 
-  :: (Ptr RawTFile) -> (Ptr RawTKey) -> IO CInt
-foreign import ccall "HROOT.h TFile_Close" c_tfile_close 
-  :: (Ptr RawTFile) -> CString -> IO ()
-foreign import ccall "HROOT.h TFile_Get" c_tfile_get 
-  :: (Ptr RawTFile) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TFile_SetTitle" c_tfile_settitle 
-  :: (Ptr RawTFile) -> CString -> IO ()
-foreign import ccall "HROOT.h TFile_GetName" c_tfile_getname 
-  :: (Ptr RawTFile) -> IO CString
-foreign import ccall "HROOT.h TFile_Draw" c_tfile_draw 
-  :: (Ptr RawTFile) -> CString -> IO ()
-foreign import ccall "HROOT.h TFile_FindObject" c_tfile_findobject 
-  :: (Ptr RawTFile) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TFile_SaveAs" c_tfile_saveas 
-  :: (Ptr RawTFile) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TFile_Write" c_tfile_write 
-  :: (Ptr RawTFile) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TFile_IsA" c_tfile_isa 
-  :: (Ptr RawTFile) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TFile_printObj" c_tfile_printobj 
-  :: (Ptr RawTFile) -> CString -> IO ()
-foreign import ccall "HROOT.h TFile_delete" c_tfile_delete 
-  :: (Ptr RawTFile) -> IO ()
-foreign import ccall "HROOT.h TFile_newTFile" c_tfile_newtfile 
-  :: CString -> CString -> CString -> CInt -> IO (Ptr RawTFile)
-
-foreign import ccall "HROOT.h TBranch_SetTitle" c_tbranch_settitle 
-  :: (Ptr RawTBranch) -> CString -> IO ()
-foreign import ccall "HROOT.h TBranch_SetFillColor" c_tbranch_setfillcolor 
-  :: (Ptr RawTBranch) -> CInt -> IO ()
-foreign import ccall "HROOT.h TBranch_SetFillStyle" c_tbranch_setfillstyle 
-  :: (Ptr RawTBranch) -> CInt -> IO ()
-foreign import ccall "HROOT.h TBranch_GetName" c_tbranch_getname 
-  :: (Ptr RawTBranch) -> IO CString
-foreign import ccall "HROOT.h TBranch_Draw" c_tbranch_draw 
-  :: (Ptr RawTBranch) -> CString -> IO ()
-foreign import ccall "HROOT.h TBranch_FindObject" c_tbranch_findobject 
-  :: (Ptr RawTBranch) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TBranch_SaveAs" c_tbranch_saveas 
-  :: (Ptr RawTBranch) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TBranch_Write" c_tbranch_write 
-  :: (Ptr RawTBranch) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TBranch_IsA" c_tbranch_isa 
-  :: (Ptr RawTBranch) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TBranch_printObj" c_tbranch_printobj 
-  :: (Ptr RawTBranch) -> CString -> IO ()
-foreign import ccall "HROOT.h TBranch_delete" c_tbranch_delete 
-  :: (Ptr RawTBranch) -> IO ()
-
-foreign import ccall "HROOT.h TVirtualTreePlayer_GetName" c_tvirtualtreeplayer_getname 
-  :: (Ptr RawTVirtualTreePlayer) -> IO CString
-foreign import ccall "HROOT.h TVirtualTreePlayer_Draw" c_tvirtualtreeplayer_draw 
-  :: (Ptr RawTVirtualTreePlayer) -> CString -> IO ()
-foreign import ccall "HROOT.h TVirtualTreePlayer_FindObject" c_tvirtualtreeplayer_findobject 
-  :: (Ptr RawTVirtualTreePlayer) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TVirtualTreePlayer_SaveAs" c_tvirtualtreeplayer_saveas 
-  :: (Ptr RawTVirtualTreePlayer) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TVirtualTreePlayer_Write" c_tvirtualtreeplayer_write 
-  :: (Ptr RawTVirtualTreePlayer) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TVirtualTreePlayer_IsA" c_tvirtualtreeplayer_isa 
-  :: (Ptr RawTVirtualTreePlayer) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TVirtualTreePlayer_printObj" c_tvirtualtreeplayer_printobj 
-  :: (Ptr RawTVirtualTreePlayer) -> CString -> IO ()
-foreign import ccall "HROOT.h TVirtualTreePlayer_delete" c_tvirtualtreeplayer_delete 
-  :: (Ptr RawTVirtualTreePlayer) -> IO ()
-
-foreign import ccall "HROOT.h TTreePlayer_GetName" c_ttreeplayer_getname 
-  :: (Ptr RawTTreePlayer) -> IO CString
-foreign import ccall "HROOT.h TTreePlayer_Draw" c_ttreeplayer_draw 
-  :: (Ptr RawTTreePlayer) -> CString -> IO ()
-foreign import ccall "HROOT.h TTreePlayer_FindObject" c_ttreeplayer_findobject 
-  :: (Ptr RawTTreePlayer) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TTreePlayer_SaveAs" c_ttreeplayer_saveas 
-  :: (Ptr RawTTreePlayer) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TTreePlayer_Write" c_ttreeplayer_write 
-  :: (Ptr RawTTreePlayer) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TTreePlayer_IsA" c_ttreeplayer_isa 
-  :: (Ptr RawTTreePlayer) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TTreePlayer_printObj" c_ttreeplayer_printobj 
-  :: (Ptr RawTTreePlayer) -> CString -> IO ()
-foreign import ccall "HROOT.h TTreePlayer_delete" c_ttreeplayer_delete 
-  :: (Ptr RawTTreePlayer) -> IO ()
-
-foreign import ccall "HROOT.h TArray_delete" c_tarray_delete 
-  :: (Ptr RawTArray) -> IO ()
-
-foreign import ccall "HROOT.h TArrayC_delete" c_tarrayc_delete 
-  :: (Ptr RawTArrayC) -> IO ()
-
-foreign import ccall "HROOT.h TArrayD_delete" c_tarrayd_delete 
-  :: (Ptr RawTArrayD) -> IO ()
-
-foreign import ccall "HROOT.h TArrayF_delete" c_tarrayf_delete 
-  :: (Ptr RawTArrayF) -> IO ()
-
-foreign import ccall "HROOT.h TArrayI_delete" c_tarrayi_delete 
-  :: (Ptr RawTArrayI) -> IO ()
-
-foreign import ccall "HROOT.h TArrayL_delete" c_tarrayl_delete 
-  :: (Ptr RawTArrayL) -> IO ()
-
-foreign import ccall "HROOT.h TArrayL64_delete" c_tarrayl64_delete 
-  :: (Ptr RawTArrayL64) -> IO ()
-
-foreign import ccall "HROOT.h TArrayS_delete" c_tarrays_delete 
-  :: (Ptr RawTArrayS) -> IO ()
-
-foreign import ccall "HROOT.h TH1_SetTitle" c_th1_settitle 
-  :: (Ptr RawTH1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_SetLineColor" c_th1_setlinecolor 
-  :: (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1_SetFillColor" c_th1_setfillcolor 
-  :: (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1_SetFillStyle" c_th1_setfillstyle 
-  :: (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1_GetName" c_th1_getname 
-  :: (Ptr RawTH1) -> IO CString
-foreign import ccall "HROOT.h TH1_Draw" c_th1_draw 
-  :: (Ptr RawTH1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_FindObject" c_th1_findobject 
-  :: (Ptr RawTH1) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH1_SaveAs" c_th1_saveas 
-  :: (Ptr RawTH1) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_Write" c_th1_write 
-  :: (Ptr RawTH1) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1_IsA" c_th1_isa 
-  :: (Ptr RawTH1) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH1_printObj" c_th1_printobj 
-  :: (Ptr RawTH1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_delete" c_th1_delete 
-  :: (Ptr RawTH1) -> IO ()
-foreign import ccall "HROOT.h TH1_Add" c_th1_add 
-  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_AddBinContent" c_th1_addbincontent 
-  :: (Ptr RawTH1) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_Chi2Test" c_th1_chi2test 
-  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH1_ComputeIntegral" c_th1_computeintegral 
-  :: (Ptr RawTH1) -> IO CDouble
-foreign import ccall "HROOT.h TH1_DirectoryAutoAdd" c_th1_directoryautoadd 
-  :: (Ptr RawTH1) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH1_DistancetoPrimitive" c_th1_distancetoprimitive 
-  :: (Ptr RawTH1) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1_Divide" c_th1_divide 
-  :: (Ptr RawTH1) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_DrawCopy" c_th1_drawcopy 
-  :: (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1_DrawNormalized" c_th1_drawnormalized 
-  :: (Ptr RawTH1) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1_DrawPanel" c_th1_drawpanel 
-  :: (Ptr RawTH1) -> IO ()
-foreign import ccall "HROOT.h TH1_BufferEmpty" c_th1_bufferempty 
-  :: (Ptr RawTH1) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1_Eval" c_th1_eval 
-  :: (Ptr RawTH1) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_ExecuteEvent" c_th1_executeevent 
-  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1_FFT" c_th1_fft 
-  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1_fill1" c_th1_fill1 
-  :: (Ptr RawTH1) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1_FillN" c_th1_filln 
-  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1_FillRandom" c_th1_fillrandom 
-  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1_FindBin" c_th1_findbin 
-  :: (Ptr RawTH1) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1_FindFixBin" c_th1_findfixbin 
-  :: (Ptr RawTH1) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1_FindFirstBinAbove" c_th1_findfirstbinabove 
-  :: (Ptr RawTH1) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1_FindLastBinAbove" c_th1_findlastbinabove 
-  :: (Ptr RawTH1) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1_FitPanel" c_th1_fitpanel 
-  :: (Ptr RawTH1) -> IO ()
-foreign import ccall "HROOT.h TH1_tH1GetAsymmetry" c_th1_th1getasymmetry 
-  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1_tH1GetBufferLength" c_th1_th1getbufferlength 
-  :: (Ptr RawTH1) -> IO CInt
-foreign import ccall "HROOT.h TH1_tH1GetBufferSize" c_th1_th1getbuffersize 
-  :: (Ptr RawTH1) -> IO CInt
-foreign import ccall "HROOT.h TH1_GetNdivisions" c_th1_getndivisions 
-  :: (Ptr RawTH1) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1_GetAxisColor" c_th1_getaxiscolor 
-  :: (Ptr RawTH1) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1_GetLabelColor" c_th1_getlabelcolor 
-  :: (Ptr RawTH1) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1_GetLabelFont" c_th1_getlabelfont 
-  :: (Ptr RawTH1) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1_GetLabelOffset" c_th1_getlabeloffset 
-  :: (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetLabelSize" c_th1_getlabelsize 
-  :: (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetTitleFont" c_th1_gettitlefont 
-  :: (Ptr RawTH1) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1_GetTitleOffset" c_th1_gettitleoffset 
-  :: (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetTitleSize" c_th1_gettitlesize 
-  :: (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetTickLength" c_th1_getticklength 
-  :: (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBarOffset" c_th1_getbaroffset 
-  :: (Ptr RawTH1) -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBarWidth" c_th1_getbarwidth 
-  :: (Ptr RawTH1) -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetContour" c_th1_getcontour 
-  :: (Ptr RawTH1) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH1_GetContourLevel" c_th1_getcontourlevel 
-  :: (Ptr RawTH1) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetContourLevelPad" c_th1_getcontourlevelpad 
-  :: (Ptr RawTH1) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBin" c_th1_getbin 
-  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1_GetBinCenter" c_th1_getbincenter 
-  :: (Ptr RawTH1) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBinContent1" c_th1_getbincontent1 
-  :: (Ptr RawTH1) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBinContent2" c_th1_getbincontent2 
-  :: (Ptr RawTH1) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBinContent3" c_th1_getbincontent3 
-  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBinError1" c_th1_getbinerror1 
-  :: (Ptr RawTH1) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBinError2" c_th1_getbinerror2 
-  :: (Ptr RawTH1) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBinError3" c_th1_getbinerror3 
-  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBinLowEdge" c_th1_getbinlowedge 
-  :: (Ptr RawTH1) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetBinWidth" c_th1_getbinwidth 
-  :: (Ptr RawTH1) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetCellContent" c_th1_getcellcontent 
-  :: (Ptr RawTH1) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_GetCellError" c_th1_getcellerror 
-  :: (Ptr RawTH1) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1_tH1GetDirectory" c_th1_th1getdirectory 
-  :: (Ptr RawTH1) -> IO (Ptr RawTDirectory)
-foreign import ccall "HROOT.h TH1_tH1GetXaxis" c_th1_th1getxaxis 
-  :: (Ptr RawTH1) -> IO (Ptr RawTAxis)
-foreign import ccall "HROOT.h TH1_tH1GetYaxis" c_th1_th1getyaxis 
-  :: (Ptr RawTH1) -> IO (Ptr RawTAxis)
-foreign import ccall "HROOT.h TH1_tH1GetZaxis" c_th1_th1getzaxis 
-  :: (Ptr RawTH1) -> IO (Ptr RawTAxis)
-foreign import ccall "HROOT.h TH1_Scale" c_th1_scale 
-  :: (Ptr RawTH1) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_SetAxisColor" c_th1_setaxiscolor 
-  :: (Ptr RawTH1) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_SetAxisRange" c_th1_setaxisrange 
-  :: (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_SetBarOffset" c_th1_setbaroffset 
-  :: (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_SetBarWidth" c_th1_setbarwidth 
-  :: (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_setBinContent1" c_th1_setbincontent1 
-  :: (Ptr RawTH1) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_setBinContent2" c_th1_setbincontent2 
-  :: (Ptr RawTH1) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_setBinContent3" c_th1_setbincontent3 
-  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_setBinError1" c_th1_setbinerror1 
-  :: (Ptr RawTH1) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_setBinError2" c_th1_setbinerror2 
-  :: (Ptr RawTH1) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_setBinError3" c_th1_setbinerror3 
-  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_setBins1" c_th1_setbins1 
-  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1_setBins2" c_th1_setbins2 
-  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1_setBins3" c_th1_setbins3 
-  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1_SetMaximum" c_th1_setmaximum 
-  :: (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_SetMinimum" c_th1_setminimum 
-  :: (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1_SetXTitle" c_th1_setxtitle 
-  :: (Ptr RawTH1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_SetYTitle" c_th1_setytitle 
-  :: (Ptr RawTH1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1_SetZTitle" c_th1_setztitle 
-  :: (Ptr RawTH1) -> CString -> IO ()
-
-foreign import ccall "HROOT.h TH2_Add" c_th2_add 
-  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_AddBinContent" c_th2_addbincontent 
-  :: (Ptr RawTH2) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_Chi2Test" c_th2_chi2test 
-  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH2_ComputeIntegral" c_th2_computeintegral 
-  :: (Ptr RawTH2) -> IO CDouble
-foreign import ccall "HROOT.h TH2_DirectoryAutoAdd" c_th2_directoryautoadd 
-  :: (Ptr RawTH2) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH2_DistancetoPrimitive" c_th2_distancetoprimitive 
-  :: (Ptr RawTH2) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2_Divide" c_th2_divide 
-  :: (Ptr RawTH2) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_DrawCopy" c_th2_drawcopy 
-  :: (Ptr RawTH2) -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2_DrawNormalized" c_th2_drawnormalized 
-  :: (Ptr RawTH2) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2_DrawPanel" c_th2_drawpanel 
-  :: (Ptr RawTH2) -> IO ()
-foreign import ccall "HROOT.h TH2_BufferEmpty" c_th2_bufferempty 
-  :: (Ptr RawTH2) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2_Eval" c_th2_eval 
-  :: (Ptr RawTH2) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_ExecuteEvent" c_th2_executeevent 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_FFT" c_th2_fft 
-  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2_fill1" c_th2_fill1 
-  :: (Ptr RawTH2) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2_FillN" c_th2_filln 
-  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_FillRandom" c_th2_fillrandom 
-  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_FindBin" c_th2_findbin 
-  :: (Ptr RawTH2) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2_FindFixBin" c_th2_findfixbin 
-  :: (Ptr RawTH2) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2_FindFirstBinAbove" c_th2_findfirstbinabove 
-  :: (Ptr RawTH2) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2_FindLastBinAbove" c_th2_findlastbinabove 
-  :: (Ptr RawTH2) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2_FitPanel" c_th2_fitpanel 
-  :: (Ptr RawTH2) -> IO ()
-foreign import ccall "HROOT.h TH2_GetNdivisions" c_th2_getndivisions 
-  :: (Ptr RawTH2) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2_GetAxisColor" c_th2_getaxiscolor 
-  :: (Ptr RawTH2) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2_GetLabelColor" c_th2_getlabelcolor 
-  :: (Ptr RawTH2) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2_GetLabelFont" c_th2_getlabelfont 
-  :: (Ptr RawTH2) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2_GetLabelOffset" c_th2_getlabeloffset 
-  :: (Ptr RawTH2) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetLabelSize" c_th2_getlabelsize 
-  :: (Ptr RawTH2) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetTitleFont" c_th2_gettitlefont 
-  :: (Ptr RawTH2) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2_GetTitleOffset" c_th2_gettitleoffset 
-  :: (Ptr RawTH2) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetTitleSize" c_th2_gettitlesize 
-  :: (Ptr RawTH2) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetTickLength" c_th2_getticklength 
-  :: (Ptr RawTH2) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBarOffset" c_th2_getbaroffset 
-  :: (Ptr RawTH2) -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBarWidth" c_th2_getbarwidth 
-  :: (Ptr RawTH2) -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetContour" c_th2_getcontour 
-  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH2_GetContourLevel" c_th2_getcontourlevel 
-  :: (Ptr RawTH2) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetContourLevelPad" c_th2_getcontourlevelpad 
-  :: (Ptr RawTH2) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBin" c_th2_getbin 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2_GetBinCenter" c_th2_getbincenter 
-  :: (Ptr RawTH2) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBinContent1" c_th2_getbincontent1 
-  :: (Ptr RawTH2) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBinContent2" c_th2_getbincontent2 
-  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBinContent3" c_th2_getbincontent3 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBinError1" c_th2_getbinerror1 
-  :: (Ptr RawTH2) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBinError2" c_th2_getbinerror2 
-  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBinError3" c_th2_getbinerror3 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBinLowEdge" c_th2_getbinlowedge 
-  :: (Ptr RawTH2) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetBinWidth" c_th2_getbinwidth 
-  :: (Ptr RawTH2) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetCellContent" c_th2_getcellcontent 
-  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetCellError" c_th2_getcellerror 
-  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_Scale" c_th2_scale 
-  :: (Ptr RawTH2) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_SetAxisColor" c_th2_setaxiscolor 
-  :: (Ptr RawTH2) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_SetAxisRange" c_th2_setaxisrange 
-  :: (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_SetBarOffset" c_th2_setbaroffset 
-  :: (Ptr RawTH2) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_SetBarWidth" c_th2_setbarwidth 
-  :: (Ptr RawTH2) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_setBinContent1" c_th2_setbincontent1 
-  :: (Ptr RawTH2) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_setBinContent2" c_th2_setbincontent2 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_setBinContent3" c_th2_setbincontent3 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_setBinError1" c_th2_setbinerror1 
-  :: (Ptr RawTH2) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_setBinError2" c_th2_setbinerror2 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_setBinError3" c_th2_setbinerror3 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_setBins1" c_th2_setbins1 
-  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2_setBins2" c_th2_setbins2 
-  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2_setBins3" c_th2_setbins3 
-  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2_SetMaximum" c_th2_setmaximum 
-  :: (Ptr RawTH2) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_SetMinimum" c_th2_setminimum 
-  :: (Ptr RawTH2) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2_SetXTitle" c_th2_setxtitle 
-  :: (Ptr RawTH2) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_SetYTitle" c_th2_setytitle 
-  :: (Ptr RawTH2) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_SetZTitle" c_th2_setztitle 
-  :: (Ptr RawTH2) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_SetTitle" c_th2_settitle 
-  :: (Ptr RawTH2) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_SetLineColor" c_th2_setlinecolor 
-  :: (Ptr RawTH2) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_SetFillColor" c_th2_setfillcolor 
-  :: (Ptr RawTH2) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_SetFillStyle" c_th2_setfillstyle 
-  :: (Ptr RawTH2) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_GetName" c_th2_getname 
-  :: (Ptr RawTH2) -> IO CString
-foreign import ccall "HROOT.h TH2_Draw" c_th2_draw 
-  :: (Ptr RawTH2) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_FindObject" c_th2_findobject 
-  :: (Ptr RawTH2) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH2_SaveAs" c_th2_saveas 
-  :: (Ptr RawTH2) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_Write" c_th2_write 
-  :: (Ptr RawTH2) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2_IsA" c_th2_isa 
-  :: (Ptr RawTH2) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH2_printObj" c_th2_printobj 
-  :: (Ptr RawTH2) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_delete" c_th2_delete 
-  :: (Ptr RawTH2) -> IO ()
-foreign import ccall "HROOT.h TH2_fill2" c_th2_fill2 
-  :: (Ptr RawTH2) -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2_fillRandom2" c_th2_fillrandom2 
-  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_findFirstBinAbove2" c_th2_findfirstbinabove2 
-  :: (Ptr RawTH2) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2_findLastBinAbove2" c_th2_findlastbinabove2 
-  :: (Ptr RawTH2) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2_FitSlicesX" c_th2_fitslicesx 
-  :: (Ptr RawTH2) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2_FitSlicesY" c_th2_fitslicesy 
-  :: (Ptr RawTH2) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2_GetCorrelationFactor" c_th2_getcorrelationfactor 
-  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetCovariance" c_th2_getcovariance 
-  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2_GetStats" c_th2_getstats 
-  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2_Integral" c_th2_integral 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2_Interpolate" c_th2_interpolate 
-  :: (Ptr RawTH2) -> CDouble -> CDouble -> CDouble -> IO CDouble
-foreign import ccall "HROOT.h TH2_KolmogorovTest" c_th2_kolmogorovtest 
-  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2_tH2ProjectionX" c_th2_th2projectionx 
-  :: (Ptr RawTH2) -> CString -> CInt -> CInt -> CString -> IO (Ptr RawTH1D)
-foreign import ccall "HROOT.h TH2_tH2ProjectionY" c_th2_th2projectiony 
-  :: (Ptr RawTH2) -> CString -> CInt -> CInt -> CString -> IO (Ptr RawTH1D)
-foreign import ccall "HROOT.h TH2_RebinX" c_th2_rebinx 
-  :: (Ptr RawTH2) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2_RebinY" c_th2_rebiny 
-  :: (Ptr RawTH2) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2_Rebin2D" c_th2_rebin2d 
-  :: (Ptr RawTH2) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2_PutStats" c_th2_putstats 
-  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2_Reset" c_th2_reset 
-  :: (Ptr RawTH2) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2_SetShowProjectionX" c_th2_setshowprojectionx 
-  :: (Ptr RawTH2) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_SetShowProjectionY" c_th2_setshowprojectiony 
-  :: (Ptr RawTH2) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2_ShowBackground" c_th2_showbackground 
-  :: (Ptr RawTH2) -> CInt -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2_ShowPeaks" c_th2_showpeaks 
-  :: (Ptr RawTH2) -> CDouble -> CString -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2_Smooth" c_th2_smooth 
-  :: (Ptr RawTH2) -> CInt -> CString -> IO ()
-
-foreign import ccall "HROOT.h TH3_Add" c_th3_add 
-  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_AddBinContent" c_th3_addbincontent 
-  :: (Ptr RawTH3) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_Chi2Test" c_th3_chi2test 
-  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH3_ComputeIntegral" c_th3_computeintegral 
-  :: (Ptr RawTH3) -> IO CDouble
-foreign import ccall "HROOT.h TH3_DirectoryAutoAdd" c_th3_directoryautoadd 
-  :: (Ptr RawTH3) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH3_DistancetoPrimitive" c_th3_distancetoprimitive 
-  :: (Ptr RawTH3) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3_Divide" c_th3_divide 
-  :: (Ptr RawTH3) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_DrawCopy" c_th3_drawcopy 
-  :: (Ptr RawTH3) -> CString -> IO (Ptr RawTH3)
-foreign import ccall "HROOT.h TH3_DrawNormalized" c_th3_drawnormalized 
-  :: (Ptr RawTH3) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3_DrawPanel" c_th3_drawpanel 
-  :: (Ptr RawTH3) -> IO ()
-foreign import ccall "HROOT.h TH3_BufferEmpty" c_th3_bufferempty 
-  :: (Ptr RawTH3) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3_Eval" c_th3_eval 
-  :: (Ptr RawTH3) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_ExecuteEvent" c_th3_executeevent 
-  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3_FFT" c_th3_fft 
-  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3_fill1" c_th3_fill1 
-  :: (Ptr RawTH3) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3_FillN" c_th3_filln 
-  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3_FillRandom" c_th3_fillrandom 
-  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3_FindBin" c_th3_findbin 
-  :: (Ptr RawTH3) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3_FindFixBin" c_th3_findfixbin 
-  :: (Ptr RawTH3) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3_FindFirstBinAbove" c_th3_findfirstbinabove 
-  :: (Ptr RawTH3) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3_FindLastBinAbove" c_th3_findlastbinabove 
-  :: (Ptr RawTH3) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3_FitPanel" c_th3_fitpanel 
-  :: (Ptr RawTH3) -> IO ()
-foreign import ccall "HROOT.h TH3_GetNdivisions" c_th3_getndivisions 
-  :: (Ptr RawTH3) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3_GetAxisColor" c_th3_getaxiscolor 
-  :: (Ptr RawTH3) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3_GetLabelColor" c_th3_getlabelcolor 
-  :: (Ptr RawTH3) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3_GetLabelFont" c_th3_getlabelfont 
-  :: (Ptr RawTH3) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3_GetLabelOffset" c_th3_getlabeloffset 
-  :: (Ptr RawTH3) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetLabelSize" c_th3_getlabelsize 
-  :: (Ptr RawTH3) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetTitleFont" c_th3_gettitlefont 
-  :: (Ptr RawTH3) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3_GetTitleOffset" c_th3_gettitleoffset 
-  :: (Ptr RawTH3) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetTitleSize" c_th3_gettitlesize 
-  :: (Ptr RawTH3) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetTickLength" c_th3_getticklength 
-  :: (Ptr RawTH3) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBarOffset" c_th3_getbaroffset 
-  :: (Ptr RawTH3) -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBarWidth" c_th3_getbarwidth 
-  :: (Ptr RawTH3) -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetContour" c_th3_getcontour 
-  :: (Ptr RawTH3) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH3_GetContourLevel" c_th3_getcontourlevel 
-  :: (Ptr RawTH3) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetContourLevelPad" c_th3_getcontourlevelpad 
-  :: (Ptr RawTH3) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBin" c_th3_getbin 
-  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3_GetBinCenter" c_th3_getbincenter 
-  :: (Ptr RawTH3) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBinContent1" c_th3_getbincontent1 
-  :: (Ptr RawTH3) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBinContent2" c_th3_getbincontent2 
-  :: (Ptr RawTH3) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBinContent3" c_th3_getbincontent3 
-  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBinError1" c_th3_getbinerror1 
-  :: (Ptr RawTH3) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBinError2" c_th3_getbinerror2 
-  :: (Ptr RawTH3) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBinError3" c_th3_getbinerror3 
-  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBinLowEdge" c_th3_getbinlowedge 
-  :: (Ptr RawTH3) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetBinWidth" c_th3_getbinwidth 
-  :: (Ptr RawTH3) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetCellContent" c_th3_getcellcontent 
-  :: (Ptr RawTH3) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_GetCellError" c_th3_getcellerror 
-  :: (Ptr RawTH3) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3_Scale" c_th3_scale 
-  :: (Ptr RawTH3) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_SetAxisColor" c_th3_setaxiscolor 
-  :: (Ptr RawTH3) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_SetAxisRange" c_th3_setaxisrange 
-  :: (Ptr RawTH3) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_SetBarOffset" c_th3_setbaroffset 
-  :: (Ptr RawTH3) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_SetBarWidth" c_th3_setbarwidth 
-  :: (Ptr RawTH3) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_setBinContent1" c_th3_setbincontent1 
-  :: (Ptr RawTH3) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_setBinContent2" c_th3_setbincontent2 
-  :: (Ptr RawTH3) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_setBinContent3" c_th3_setbincontent3 
-  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_setBinError1" c_th3_setbinerror1 
-  :: (Ptr RawTH3) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_setBinError2" c_th3_setbinerror2 
-  :: (Ptr RawTH3) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_setBinError3" c_th3_setbinerror3 
-  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_setBins1" c_th3_setbins1 
-  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3_setBins2" c_th3_setbins2 
-  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3_setBins3" c_th3_setbins3 
-  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3_SetMaximum" c_th3_setmaximum 
-  :: (Ptr RawTH3) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_SetMinimum" c_th3_setminimum 
-  :: (Ptr RawTH3) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3_SetXTitle" c_th3_setxtitle 
-  :: (Ptr RawTH3) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_SetYTitle" c_th3_setytitle 
-  :: (Ptr RawTH3) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_SetZTitle" c_th3_setztitle 
-  :: (Ptr RawTH3) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_SetTitle" c_th3_settitle 
-  :: (Ptr RawTH3) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_SetLineColor" c_th3_setlinecolor 
-  :: (Ptr RawTH3) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3_SetFillColor" c_th3_setfillcolor 
-  :: (Ptr RawTH3) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3_SetFillStyle" c_th3_setfillstyle 
-  :: (Ptr RawTH3) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3_GetName" c_th3_getname 
-  :: (Ptr RawTH3) -> IO CString
-foreign import ccall "HROOT.h TH3_Draw" c_th3_draw 
-  :: (Ptr RawTH3) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_FindObject" c_th3_findobject 
-  :: (Ptr RawTH3) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH3_SaveAs" c_th3_saveas 
-  :: (Ptr RawTH3) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_Write" c_th3_write 
-  :: (Ptr RawTH3) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3_IsA" c_th3_isa 
-  :: (Ptr RawTH3) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH3_printObj" c_th3_printobj 
-  :: (Ptr RawTH3) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3_delete" c_th3_delete 
-  :: (Ptr RawTH3) -> IO ()
-
-foreign import ccall "HROOT.h TH1C_Add" c_th1c_add 
-  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_AddBinContent" c_th1c_addbincontent 
-  :: (Ptr RawTH1C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_Chi2Test" c_th1c_chi2test 
-  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH1C_ComputeIntegral" c_th1c_computeintegral 
-  :: (Ptr RawTH1C) -> IO CDouble
-foreign import ccall "HROOT.h TH1C_DirectoryAutoAdd" c_th1c_directoryautoadd 
-  :: (Ptr RawTH1C) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH1C_DistancetoPrimitive" c_th1c_distancetoprimitive 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1C_Divide" c_th1c_divide 
-  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_DrawCopy" c_th1c_drawcopy 
-  :: (Ptr RawTH1C) -> CString -> IO (Ptr RawTH1C)
-foreign import ccall "HROOT.h TH1C_DrawNormalized" c_th1c_drawnormalized 
-  :: (Ptr RawTH1C) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1C_DrawPanel" c_th1c_drawpanel 
-  :: (Ptr RawTH1C) -> IO ()
-foreign import ccall "HROOT.h TH1C_BufferEmpty" c_th1c_bufferempty 
-  :: (Ptr RawTH1C) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1C_Eval" c_th1c_eval 
-  :: (Ptr RawTH1C) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_ExecuteEvent" c_th1c_executeevent 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1C_FFT" c_th1c_fft 
-  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1C_fill1" c_th1c_fill1 
-  :: (Ptr RawTH1C) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1C_FillN" c_th1c_filln 
-  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1C_FillRandom" c_th1c_fillrandom 
-  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1C_FindBin" c_th1c_findbin 
-  :: (Ptr RawTH1C) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1C_FindFixBin" c_th1c_findfixbin 
-  :: (Ptr RawTH1C) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1C_FindFirstBinAbove" c_th1c_findfirstbinabove 
-  :: (Ptr RawTH1C) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1C_FindLastBinAbove" c_th1c_findlastbinabove 
-  :: (Ptr RawTH1C) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1C_FitPanel" c_th1c_fitpanel 
-  :: (Ptr RawTH1C) -> IO ()
-foreign import ccall "HROOT.h TH1C_GetNdivisions" c_th1c_getndivisions 
-  :: (Ptr RawTH1C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1C_GetAxisColor" c_th1c_getaxiscolor 
-  :: (Ptr RawTH1C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1C_GetLabelColor" c_th1c_getlabelcolor 
-  :: (Ptr RawTH1C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1C_GetLabelFont" c_th1c_getlabelfont 
-  :: (Ptr RawTH1C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1C_GetLabelOffset" c_th1c_getlabeloffset 
-  :: (Ptr RawTH1C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetLabelSize" c_th1c_getlabelsize 
-  :: (Ptr RawTH1C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetTitleFont" c_th1c_gettitlefont 
-  :: (Ptr RawTH1C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1C_GetTitleOffset" c_th1c_gettitleoffset 
-  :: (Ptr RawTH1C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetTitleSize" c_th1c_gettitlesize 
-  :: (Ptr RawTH1C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetTickLength" c_th1c_getticklength 
-  :: (Ptr RawTH1C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBarOffset" c_th1c_getbaroffset 
-  :: (Ptr RawTH1C) -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBarWidth" c_th1c_getbarwidth 
-  :: (Ptr RawTH1C) -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetContour" c_th1c_getcontour 
-  :: (Ptr RawTH1C) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH1C_GetContourLevel" c_th1c_getcontourlevel 
-  :: (Ptr RawTH1C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetContourLevelPad" c_th1c_getcontourlevelpad 
-  :: (Ptr RawTH1C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBin" c_th1c_getbin 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1C_GetBinCenter" c_th1c_getbincenter 
-  :: (Ptr RawTH1C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBinContent1" c_th1c_getbincontent1 
-  :: (Ptr RawTH1C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBinContent2" c_th1c_getbincontent2 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBinContent3" c_th1c_getbincontent3 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBinError1" c_th1c_getbinerror1 
-  :: (Ptr RawTH1C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBinError2" c_th1c_getbinerror2 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBinError3" c_th1c_getbinerror3 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBinLowEdge" c_th1c_getbinlowedge 
-  :: (Ptr RawTH1C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetBinWidth" c_th1c_getbinwidth 
-  :: (Ptr RawTH1C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetCellContent" c_th1c_getcellcontent 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_GetCellError" c_th1c_getcellerror 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1C_Scale" c_th1c_scale 
-  :: (Ptr RawTH1C) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_SetAxisColor" c_th1c_setaxiscolor 
-  :: (Ptr RawTH1C) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_SetAxisRange" c_th1c_setaxisrange 
-  :: (Ptr RawTH1C) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_SetBarOffset" c_th1c_setbaroffset 
-  :: (Ptr RawTH1C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_SetBarWidth" c_th1c_setbarwidth 
-  :: (Ptr RawTH1C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_setBinContent1" c_th1c_setbincontent1 
-  :: (Ptr RawTH1C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_setBinContent2" c_th1c_setbincontent2 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_setBinContent3" c_th1c_setbincontent3 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_setBinError1" c_th1c_setbinerror1 
-  :: (Ptr RawTH1C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_setBinError2" c_th1c_setbinerror2 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_setBinError3" c_th1c_setbinerror3 
-  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_setBins1" c_th1c_setbins1 
-  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1C_setBins2" c_th1c_setbins2 
-  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1C_setBins3" c_th1c_setbins3 
-  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1C_SetMaximum" c_th1c_setmaximum 
-  :: (Ptr RawTH1C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_SetMinimum" c_th1c_setminimum 
-  :: (Ptr RawTH1C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1C_SetXTitle" c_th1c_setxtitle 
-  :: (Ptr RawTH1C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_SetYTitle" c_th1c_setytitle 
-  :: (Ptr RawTH1C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_SetZTitle" c_th1c_setztitle 
-  :: (Ptr RawTH1C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_SetTitle" c_th1c_settitle 
-  :: (Ptr RawTH1C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_SetLineColor" c_th1c_setlinecolor 
-  :: (Ptr RawTH1C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1C_SetFillColor" c_th1c_setfillcolor 
-  :: (Ptr RawTH1C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1C_SetFillStyle" c_th1c_setfillstyle 
-  :: (Ptr RawTH1C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1C_GetName" c_th1c_getname 
-  :: (Ptr RawTH1C) -> IO CString
-foreign import ccall "HROOT.h TH1C_Draw" c_th1c_draw 
-  :: (Ptr RawTH1C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_FindObject" c_th1c_findobject 
-  :: (Ptr RawTH1C) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH1C_SaveAs" c_th1c_saveas 
-  :: (Ptr RawTH1C) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_Write" c_th1c_write 
-  :: (Ptr RawTH1C) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1C_IsA" c_th1c_isa 
-  :: (Ptr RawTH1C) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH1C_printObj" c_th1c_printobj 
-  :: (Ptr RawTH1C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1C_delete" c_th1c_delete 
-  :: (Ptr RawTH1C) -> IO ()
-
-foreign import ccall "HROOT.h TH1D_Add" c_th1d_add 
-  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_AddBinContent" c_th1d_addbincontent 
-  :: (Ptr RawTH1D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_Chi2Test" c_th1d_chi2test 
-  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH1D_ComputeIntegral" c_th1d_computeintegral 
-  :: (Ptr RawTH1D) -> IO CDouble
-foreign import ccall "HROOT.h TH1D_DirectoryAutoAdd" c_th1d_directoryautoadd 
-  :: (Ptr RawTH1D) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH1D_DistancetoPrimitive" c_th1d_distancetoprimitive 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1D_Divide" c_th1d_divide 
-  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_DrawCopy" c_th1d_drawcopy 
-  :: (Ptr RawTH1D) -> CString -> IO (Ptr RawTH1D)
-foreign import ccall "HROOT.h TH1D_DrawNormalized" c_th1d_drawnormalized 
-  :: (Ptr RawTH1D) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1D_DrawPanel" c_th1d_drawpanel 
-  :: (Ptr RawTH1D) -> IO ()
-foreign import ccall "HROOT.h TH1D_BufferEmpty" c_th1d_bufferempty 
-  :: (Ptr RawTH1D) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1D_Eval" c_th1d_eval 
-  :: (Ptr RawTH1D) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_ExecuteEvent" c_th1d_executeevent 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1D_FFT" c_th1d_fft 
-  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1D_fill1" c_th1d_fill1 
-  :: (Ptr RawTH1D) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1D_FillN" c_th1d_filln 
-  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1D_FillRandom" c_th1d_fillrandom 
-  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1D_FindBin" c_th1d_findbin 
-  :: (Ptr RawTH1D) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1D_FindFixBin" c_th1d_findfixbin 
-  :: (Ptr RawTH1D) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1D_FindFirstBinAbove" c_th1d_findfirstbinabove 
-  :: (Ptr RawTH1D) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1D_FindLastBinAbove" c_th1d_findlastbinabove 
-  :: (Ptr RawTH1D) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1D_FitPanel" c_th1d_fitpanel 
-  :: (Ptr RawTH1D) -> IO ()
-foreign import ccall "HROOT.h TH1D_GetNdivisions" c_th1d_getndivisions 
-  :: (Ptr RawTH1D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1D_GetAxisColor" c_th1d_getaxiscolor 
-  :: (Ptr RawTH1D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1D_GetLabelColor" c_th1d_getlabelcolor 
-  :: (Ptr RawTH1D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1D_GetLabelFont" c_th1d_getlabelfont 
-  :: (Ptr RawTH1D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1D_GetLabelOffset" c_th1d_getlabeloffset 
-  :: (Ptr RawTH1D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetLabelSize" c_th1d_getlabelsize 
-  :: (Ptr RawTH1D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetTitleFont" c_th1d_gettitlefont 
-  :: (Ptr RawTH1D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1D_GetTitleOffset" c_th1d_gettitleoffset 
-  :: (Ptr RawTH1D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetTitleSize" c_th1d_gettitlesize 
-  :: (Ptr RawTH1D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetTickLength" c_th1d_getticklength 
-  :: (Ptr RawTH1D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBarOffset" c_th1d_getbaroffset 
-  :: (Ptr RawTH1D) -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBarWidth" c_th1d_getbarwidth 
-  :: (Ptr RawTH1D) -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetContour" c_th1d_getcontour 
-  :: (Ptr RawTH1D) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH1D_GetContourLevel" c_th1d_getcontourlevel 
-  :: (Ptr RawTH1D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetContourLevelPad" c_th1d_getcontourlevelpad 
-  :: (Ptr RawTH1D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBin" c_th1d_getbin 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1D_GetBinCenter" c_th1d_getbincenter 
-  :: (Ptr RawTH1D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBinContent1" c_th1d_getbincontent1 
-  :: (Ptr RawTH1D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBinContent2" c_th1d_getbincontent2 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBinContent3" c_th1d_getbincontent3 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBinError1" c_th1d_getbinerror1 
-  :: (Ptr RawTH1D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBinError2" c_th1d_getbinerror2 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBinError3" c_th1d_getbinerror3 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBinLowEdge" c_th1d_getbinlowedge 
-  :: (Ptr RawTH1D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetBinWidth" c_th1d_getbinwidth 
-  :: (Ptr RawTH1D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetCellContent" c_th1d_getcellcontent 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_GetCellError" c_th1d_getcellerror 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1D_Scale" c_th1d_scale 
-  :: (Ptr RawTH1D) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_SetAxisColor" c_th1d_setaxiscolor 
-  :: (Ptr RawTH1D) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_SetAxisRange" c_th1d_setaxisrange 
-  :: (Ptr RawTH1D) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_SetBarOffset" c_th1d_setbaroffset 
-  :: (Ptr RawTH1D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_SetBarWidth" c_th1d_setbarwidth 
-  :: (Ptr RawTH1D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_setBinContent1" c_th1d_setbincontent1 
-  :: (Ptr RawTH1D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_setBinContent2" c_th1d_setbincontent2 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_setBinContent3" c_th1d_setbincontent3 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_setBinError1" c_th1d_setbinerror1 
-  :: (Ptr RawTH1D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_setBinError2" c_th1d_setbinerror2 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_setBinError3" c_th1d_setbinerror3 
-  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_setBins1" c_th1d_setbins1 
-  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1D_setBins2" c_th1d_setbins2 
-  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1D_setBins3" c_th1d_setbins3 
-  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1D_SetMaximum" c_th1d_setmaximum 
-  :: (Ptr RawTH1D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_SetMinimum" c_th1d_setminimum 
-  :: (Ptr RawTH1D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1D_SetXTitle" c_th1d_setxtitle 
-  :: (Ptr RawTH1D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_SetYTitle" c_th1d_setytitle 
-  :: (Ptr RawTH1D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_SetZTitle" c_th1d_setztitle 
-  :: (Ptr RawTH1D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_SetTitle" c_th1d_settitle 
-  :: (Ptr RawTH1D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_SetLineColor" c_th1d_setlinecolor 
-  :: (Ptr RawTH1D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1D_SetFillColor" c_th1d_setfillcolor 
-  :: (Ptr RawTH1D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1D_SetFillStyle" c_th1d_setfillstyle 
-  :: (Ptr RawTH1D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1D_GetName" c_th1d_getname 
-  :: (Ptr RawTH1D) -> IO CString
-foreign import ccall "HROOT.h TH1D_Draw" c_th1d_draw 
-  :: (Ptr RawTH1D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_FindObject" c_th1d_findobject 
-  :: (Ptr RawTH1D) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH1D_SaveAs" c_th1d_saveas 
-  :: (Ptr RawTH1D) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_Write" c_th1d_write 
-  :: (Ptr RawTH1D) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1D_IsA" c_th1d_isa 
-  :: (Ptr RawTH1D) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH1D_printObj" c_th1d_printobj 
-  :: (Ptr RawTH1D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1D_delete" c_th1d_delete 
-  :: (Ptr RawTH1D) -> IO ()
-foreign import ccall "HROOT.h TH1D_newTH1D" c_th1d_newth1d 
-  :: CString -> CString -> CInt -> CDouble -> CDouble -> IO (Ptr RawTH1D)
-
-foreign import ccall "HROOT.h TH1F_Add" c_th1f_add 
-  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_AddBinContent" c_th1f_addbincontent 
-  :: (Ptr RawTH1F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_Chi2Test" c_th1f_chi2test 
-  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH1F_ComputeIntegral" c_th1f_computeintegral 
-  :: (Ptr RawTH1F) -> IO CDouble
-foreign import ccall "HROOT.h TH1F_DirectoryAutoAdd" c_th1f_directoryautoadd 
-  :: (Ptr RawTH1F) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH1F_DistancetoPrimitive" c_th1f_distancetoprimitive 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1F_Divide" c_th1f_divide 
-  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_DrawCopy" c_th1f_drawcopy 
-  :: (Ptr RawTH1F) -> CString -> IO (Ptr RawTH1F)
-foreign import ccall "HROOT.h TH1F_DrawNormalized" c_th1f_drawnormalized 
-  :: (Ptr RawTH1F) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1F_DrawPanel" c_th1f_drawpanel 
-  :: (Ptr RawTH1F) -> IO ()
-foreign import ccall "HROOT.h TH1F_BufferEmpty" c_th1f_bufferempty 
-  :: (Ptr RawTH1F) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1F_Eval" c_th1f_eval 
-  :: (Ptr RawTH1F) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_ExecuteEvent" c_th1f_executeevent 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1F_FFT" c_th1f_fft 
-  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1F_fill1" c_th1f_fill1 
-  :: (Ptr RawTH1F) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1F_FillN" c_th1f_filln 
-  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1F_FillRandom" c_th1f_fillrandom 
-  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1F_FindBin" c_th1f_findbin 
-  :: (Ptr RawTH1F) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1F_FindFixBin" c_th1f_findfixbin 
-  :: (Ptr RawTH1F) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1F_FindFirstBinAbove" c_th1f_findfirstbinabove 
-  :: (Ptr RawTH1F) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1F_FindLastBinAbove" c_th1f_findlastbinabove 
-  :: (Ptr RawTH1F) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1F_FitPanel" c_th1f_fitpanel 
-  :: (Ptr RawTH1F) -> IO ()
-foreign import ccall "HROOT.h TH1F_GetNdivisions" c_th1f_getndivisions 
-  :: (Ptr RawTH1F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1F_GetAxisColor" c_th1f_getaxiscolor 
-  :: (Ptr RawTH1F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1F_GetLabelColor" c_th1f_getlabelcolor 
-  :: (Ptr RawTH1F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1F_GetLabelFont" c_th1f_getlabelfont 
-  :: (Ptr RawTH1F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1F_GetLabelOffset" c_th1f_getlabeloffset 
-  :: (Ptr RawTH1F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetLabelSize" c_th1f_getlabelsize 
-  :: (Ptr RawTH1F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetTitleFont" c_th1f_gettitlefont 
-  :: (Ptr RawTH1F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1F_GetTitleOffset" c_th1f_gettitleoffset 
-  :: (Ptr RawTH1F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetTitleSize" c_th1f_gettitlesize 
-  :: (Ptr RawTH1F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetTickLength" c_th1f_getticklength 
-  :: (Ptr RawTH1F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBarOffset" c_th1f_getbaroffset 
-  :: (Ptr RawTH1F) -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBarWidth" c_th1f_getbarwidth 
-  :: (Ptr RawTH1F) -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetContour" c_th1f_getcontour 
-  :: (Ptr RawTH1F) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH1F_GetContourLevel" c_th1f_getcontourlevel 
-  :: (Ptr RawTH1F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetContourLevelPad" c_th1f_getcontourlevelpad 
-  :: (Ptr RawTH1F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBin" c_th1f_getbin 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1F_GetBinCenter" c_th1f_getbincenter 
-  :: (Ptr RawTH1F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBinContent1" c_th1f_getbincontent1 
-  :: (Ptr RawTH1F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBinContent2" c_th1f_getbincontent2 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBinContent3" c_th1f_getbincontent3 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBinError1" c_th1f_getbinerror1 
-  :: (Ptr RawTH1F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBinError2" c_th1f_getbinerror2 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBinError3" c_th1f_getbinerror3 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBinLowEdge" c_th1f_getbinlowedge 
-  :: (Ptr RawTH1F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetBinWidth" c_th1f_getbinwidth 
-  :: (Ptr RawTH1F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetCellContent" c_th1f_getcellcontent 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_GetCellError" c_th1f_getcellerror 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1F_Scale" c_th1f_scale 
-  :: (Ptr RawTH1F) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_SetAxisColor" c_th1f_setaxiscolor 
-  :: (Ptr RawTH1F) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_SetAxisRange" c_th1f_setaxisrange 
-  :: (Ptr RawTH1F) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_SetBarOffset" c_th1f_setbaroffset 
-  :: (Ptr RawTH1F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_SetBarWidth" c_th1f_setbarwidth 
-  :: (Ptr RawTH1F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_setBinContent1" c_th1f_setbincontent1 
-  :: (Ptr RawTH1F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_setBinContent2" c_th1f_setbincontent2 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_setBinContent3" c_th1f_setbincontent3 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_setBinError1" c_th1f_setbinerror1 
-  :: (Ptr RawTH1F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_setBinError2" c_th1f_setbinerror2 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_setBinError3" c_th1f_setbinerror3 
-  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_setBins1" c_th1f_setbins1 
-  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1F_setBins2" c_th1f_setbins2 
-  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1F_setBins3" c_th1f_setbins3 
-  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1F_SetMaximum" c_th1f_setmaximum 
-  :: (Ptr RawTH1F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_SetMinimum" c_th1f_setminimum 
-  :: (Ptr RawTH1F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1F_SetXTitle" c_th1f_setxtitle 
-  :: (Ptr RawTH1F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_SetYTitle" c_th1f_setytitle 
-  :: (Ptr RawTH1F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_SetZTitle" c_th1f_setztitle 
-  :: (Ptr RawTH1F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_SetTitle" c_th1f_settitle 
-  :: (Ptr RawTH1F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_SetLineColor" c_th1f_setlinecolor 
-  :: (Ptr RawTH1F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1F_SetFillColor" c_th1f_setfillcolor 
-  :: (Ptr RawTH1F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1F_SetFillStyle" c_th1f_setfillstyle 
-  :: (Ptr RawTH1F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1F_GetName" c_th1f_getname 
-  :: (Ptr RawTH1F) -> IO CString
-foreign import ccall "HROOT.h TH1F_Draw" c_th1f_draw 
-  :: (Ptr RawTH1F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_FindObject" c_th1f_findobject 
-  :: (Ptr RawTH1F) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH1F_SaveAs" c_th1f_saveas 
-  :: (Ptr RawTH1F) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_Write" c_th1f_write 
-  :: (Ptr RawTH1F) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1F_IsA" c_th1f_isa 
-  :: (Ptr RawTH1F) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH1F_printObj" c_th1f_printobj 
-  :: (Ptr RawTH1F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1F_delete" c_th1f_delete 
-  :: (Ptr RawTH1F) -> IO ()
-foreign import ccall "HROOT.h TH1F_newTH1F" c_th1f_newth1f 
-  :: CString -> CString -> CInt -> CDouble -> CDouble -> IO (Ptr RawTH1F)
-
-foreign import ccall "HROOT.h TH1I_Add" c_th1i_add 
-  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_AddBinContent" c_th1i_addbincontent 
-  :: (Ptr RawTH1I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_Chi2Test" c_th1i_chi2test 
-  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH1I_ComputeIntegral" c_th1i_computeintegral 
-  :: (Ptr RawTH1I) -> IO CDouble
-foreign import ccall "HROOT.h TH1I_DirectoryAutoAdd" c_th1i_directoryautoadd 
-  :: (Ptr RawTH1I) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH1I_DistancetoPrimitive" c_th1i_distancetoprimitive 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1I_Divide" c_th1i_divide 
-  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_DrawCopy" c_th1i_drawcopy 
-  :: (Ptr RawTH1I) -> CString -> IO (Ptr RawTH1I)
-foreign import ccall "HROOT.h TH1I_DrawNormalized" c_th1i_drawnormalized 
-  :: (Ptr RawTH1I) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1I_DrawPanel" c_th1i_drawpanel 
-  :: (Ptr RawTH1I) -> IO ()
-foreign import ccall "HROOT.h TH1I_BufferEmpty" c_th1i_bufferempty 
-  :: (Ptr RawTH1I) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1I_Eval" c_th1i_eval 
-  :: (Ptr RawTH1I) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_ExecuteEvent" c_th1i_executeevent 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1I_FFT" c_th1i_fft 
-  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1I_fill1" c_th1i_fill1 
-  :: (Ptr RawTH1I) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1I_FillN" c_th1i_filln 
-  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1I_FillRandom" c_th1i_fillrandom 
-  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1I_FindBin" c_th1i_findbin 
-  :: (Ptr RawTH1I) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1I_FindFixBin" c_th1i_findfixbin 
-  :: (Ptr RawTH1I) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1I_FindFirstBinAbove" c_th1i_findfirstbinabove 
-  :: (Ptr RawTH1I) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1I_FindLastBinAbove" c_th1i_findlastbinabove 
-  :: (Ptr RawTH1I) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1I_FitPanel" c_th1i_fitpanel 
-  :: (Ptr RawTH1I) -> IO ()
-foreign import ccall "HROOT.h TH1I_GetNdivisions" c_th1i_getndivisions 
-  :: (Ptr RawTH1I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1I_GetAxisColor" c_th1i_getaxiscolor 
-  :: (Ptr RawTH1I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1I_GetLabelColor" c_th1i_getlabelcolor 
-  :: (Ptr RawTH1I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1I_GetLabelFont" c_th1i_getlabelfont 
-  :: (Ptr RawTH1I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1I_GetLabelOffset" c_th1i_getlabeloffset 
-  :: (Ptr RawTH1I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetLabelSize" c_th1i_getlabelsize 
-  :: (Ptr RawTH1I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetTitleFont" c_th1i_gettitlefont 
-  :: (Ptr RawTH1I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1I_GetTitleOffset" c_th1i_gettitleoffset 
-  :: (Ptr RawTH1I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetTitleSize" c_th1i_gettitlesize 
-  :: (Ptr RawTH1I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetTickLength" c_th1i_getticklength 
-  :: (Ptr RawTH1I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBarOffset" c_th1i_getbaroffset 
-  :: (Ptr RawTH1I) -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBarWidth" c_th1i_getbarwidth 
-  :: (Ptr RawTH1I) -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetContour" c_th1i_getcontour 
-  :: (Ptr RawTH1I) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH1I_GetContourLevel" c_th1i_getcontourlevel 
-  :: (Ptr RawTH1I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetContourLevelPad" c_th1i_getcontourlevelpad 
-  :: (Ptr RawTH1I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBin" c_th1i_getbin 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1I_GetBinCenter" c_th1i_getbincenter 
-  :: (Ptr RawTH1I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBinContent1" c_th1i_getbincontent1 
-  :: (Ptr RawTH1I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBinContent2" c_th1i_getbincontent2 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBinContent3" c_th1i_getbincontent3 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBinError1" c_th1i_getbinerror1 
-  :: (Ptr RawTH1I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBinError2" c_th1i_getbinerror2 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBinError3" c_th1i_getbinerror3 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBinLowEdge" c_th1i_getbinlowedge 
-  :: (Ptr RawTH1I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetBinWidth" c_th1i_getbinwidth 
-  :: (Ptr RawTH1I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetCellContent" c_th1i_getcellcontent 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_GetCellError" c_th1i_getcellerror 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1I_Scale" c_th1i_scale 
-  :: (Ptr RawTH1I) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_SetAxisColor" c_th1i_setaxiscolor 
-  :: (Ptr RawTH1I) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_SetAxisRange" c_th1i_setaxisrange 
-  :: (Ptr RawTH1I) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_SetBarOffset" c_th1i_setbaroffset 
-  :: (Ptr RawTH1I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_SetBarWidth" c_th1i_setbarwidth 
-  :: (Ptr RawTH1I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_setBinContent1" c_th1i_setbincontent1 
-  :: (Ptr RawTH1I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_setBinContent2" c_th1i_setbincontent2 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_setBinContent3" c_th1i_setbincontent3 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_setBinError1" c_th1i_setbinerror1 
-  :: (Ptr RawTH1I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_setBinError2" c_th1i_setbinerror2 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_setBinError3" c_th1i_setbinerror3 
-  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_setBins1" c_th1i_setbins1 
-  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1I_setBins2" c_th1i_setbins2 
-  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1I_setBins3" c_th1i_setbins3 
-  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1I_SetMaximum" c_th1i_setmaximum 
-  :: (Ptr RawTH1I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_SetMinimum" c_th1i_setminimum 
-  :: (Ptr RawTH1I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1I_SetXTitle" c_th1i_setxtitle 
-  :: (Ptr RawTH1I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_SetYTitle" c_th1i_setytitle 
-  :: (Ptr RawTH1I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_SetZTitle" c_th1i_setztitle 
-  :: (Ptr RawTH1I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_SetTitle" c_th1i_settitle 
-  :: (Ptr RawTH1I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_SetLineColor" c_th1i_setlinecolor 
-  :: (Ptr RawTH1I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1I_SetFillColor" c_th1i_setfillcolor 
-  :: (Ptr RawTH1I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1I_SetFillStyle" c_th1i_setfillstyle 
-  :: (Ptr RawTH1I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1I_GetName" c_th1i_getname 
-  :: (Ptr RawTH1I) -> IO CString
-foreign import ccall "HROOT.h TH1I_Draw" c_th1i_draw 
-  :: (Ptr RawTH1I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_FindObject" c_th1i_findobject 
-  :: (Ptr RawTH1I) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH1I_SaveAs" c_th1i_saveas 
-  :: (Ptr RawTH1I) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_Write" c_th1i_write 
-  :: (Ptr RawTH1I) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1I_IsA" c_th1i_isa 
-  :: (Ptr RawTH1I) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH1I_printObj" c_th1i_printobj 
-  :: (Ptr RawTH1I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1I_delete" c_th1i_delete 
-  :: (Ptr RawTH1I) -> IO ()
-
-foreign import ccall "HROOT.h TH1S_Add" c_th1s_add 
-  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_AddBinContent" c_th1s_addbincontent 
-  :: (Ptr RawTH1S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_Chi2Test" c_th1s_chi2test 
-  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH1S_ComputeIntegral" c_th1s_computeintegral 
-  :: (Ptr RawTH1S) -> IO CDouble
-foreign import ccall "HROOT.h TH1S_DirectoryAutoAdd" c_th1s_directoryautoadd 
-  :: (Ptr RawTH1S) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH1S_DistancetoPrimitive" c_th1s_distancetoprimitive 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1S_Divide" c_th1s_divide 
-  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_DrawCopy" c_th1s_drawcopy 
-  :: (Ptr RawTH1S) -> CString -> IO (Ptr RawTH1S)
-foreign import ccall "HROOT.h TH1S_DrawNormalized" c_th1s_drawnormalized 
-  :: (Ptr RawTH1S) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1S_DrawPanel" c_th1s_drawpanel 
-  :: (Ptr RawTH1S) -> IO ()
-foreign import ccall "HROOT.h TH1S_BufferEmpty" c_th1s_bufferempty 
-  :: (Ptr RawTH1S) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1S_Eval" c_th1s_eval 
-  :: (Ptr RawTH1S) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_ExecuteEvent" c_th1s_executeevent 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1S_FFT" c_th1s_fft 
-  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH1S_fill1" c_th1s_fill1 
-  :: (Ptr RawTH1S) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1S_FillN" c_th1s_filln 
-  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1S_FillRandom" c_th1s_fillrandom 
-  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1S_FindBin" c_th1s_findbin 
-  :: (Ptr RawTH1S) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1S_FindFixBin" c_th1s_findfixbin 
-  :: (Ptr RawTH1S) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH1S_FindFirstBinAbove" c_th1s_findfirstbinabove 
-  :: (Ptr RawTH1S) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1S_FindLastBinAbove" c_th1s_findlastbinabove 
-  :: (Ptr RawTH1S) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1S_FitPanel" c_th1s_fitpanel 
-  :: (Ptr RawTH1S) -> IO ()
-foreign import ccall "HROOT.h TH1S_GetNdivisions" c_th1s_getndivisions 
-  :: (Ptr RawTH1S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1S_GetAxisColor" c_th1s_getaxiscolor 
-  :: (Ptr RawTH1S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1S_GetLabelColor" c_th1s_getlabelcolor 
-  :: (Ptr RawTH1S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1S_GetLabelFont" c_th1s_getlabelfont 
-  :: (Ptr RawTH1S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1S_GetLabelOffset" c_th1s_getlabeloffset 
-  :: (Ptr RawTH1S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetLabelSize" c_th1s_getlabelsize 
-  :: (Ptr RawTH1S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetTitleFont" c_th1s_gettitlefont 
-  :: (Ptr RawTH1S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH1S_GetTitleOffset" c_th1s_gettitleoffset 
-  :: (Ptr RawTH1S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetTitleSize" c_th1s_gettitlesize 
-  :: (Ptr RawTH1S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetTickLength" c_th1s_getticklength 
-  :: (Ptr RawTH1S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBarOffset" c_th1s_getbaroffset 
-  :: (Ptr RawTH1S) -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBarWidth" c_th1s_getbarwidth 
-  :: (Ptr RawTH1S) -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetContour" c_th1s_getcontour 
-  :: (Ptr RawTH1S) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH1S_GetContourLevel" c_th1s_getcontourlevel 
-  :: (Ptr RawTH1S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetContourLevelPad" c_th1s_getcontourlevelpad 
-  :: (Ptr RawTH1S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBin" c_th1s_getbin 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1S_GetBinCenter" c_th1s_getbincenter 
-  :: (Ptr RawTH1S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBinContent1" c_th1s_getbincontent1 
-  :: (Ptr RawTH1S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBinContent2" c_th1s_getbincontent2 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBinContent3" c_th1s_getbincontent3 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBinError1" c_th1s_getbinerror1 
-  :: (Ptr RawTH1S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBinError2" c_th1s_getbinerror2 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBinError3" c_th1s_getbinerror3 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBinLowEdge" c_th1s_getbinlowedge 
-  :: (Ptr RawTH1S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetBinWidth" c_th1s_getbinwidth 
-  :: (Ptr RawTH1S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetCellContent" c_th1s_getcellcontent 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_GetCellError" c_th1s_getcellerror 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH1S_Scale" c_th1s_scale 
-  :: (Ptr RawTH1S) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_SetAxisColor" c_th1s_setaxiscolor 
-  :: (Ptr RawTH1S) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_SetAxisRange" c_th1s_setaxisrange 
-  :: (Ptr RawTH1S) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_SetBarOffset" c_th1s_setbaroffset 
-  :: (Ptr RawTH1S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_SetBarWidth" c_th1s_setbarwidth 
-  :: (Ptr RawTH1S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_setBinContent1" c_th1s_setbincontent1 
-  :: (Ptr RawTH1S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_setBinContent2" c_th1s_setbincontent2 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_setBinContent3" c_th1s_setbincontent3 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_setBinError1" c_th1s_setbinerror1 
-  :: (Ptr RawTH1S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_setBinError2" c_th1s_setbinerror2 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_setBinError3" c_th1s_setbinerror3 
-  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_setBins1" c_th1s_setbins1 
-  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1S_setBins2" c_th1s_setbins2 
-  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1S_setBins3" c_th1s_setbins3 
-  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH1S_SetMaximum" c_th1s_setmaximum 
-  :: (Ptr RawTH1S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_SetMinimum" c_th1s_setminimum 
-  :: (Ptr RawTH1S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH1S_SetXTitle" c_th1s_setxtitle 
-  :: (Ptr RawTH1S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_SetYTitle" c_th1s_setytitle 
-  :: (Ptr RawTH1S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_SetZTitle" c_th1s_setztitle 
-  :: (Ptr RawTH1S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_SetTitle" c_th1s_settitle 
-  :: (Ptr RawTH1S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_SetLineColor" c_th1s_setlinecolor 
-  :: (Ptr RawTH1S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1S_SetFillColor" c_th1s_setfillcolor 
-  :: (Ptr RawTH1S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1S_SetFillStyle" c_th1s_setfillstyle 
-  :: (Ptr RawTH1S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH1S_GetName" c_th1s_getname 
-  :: (Ptr RawTH1S) -> IO CString
-foreign import ccall "HROOT.h TH1S_Draw" c_th1s_draw 
-  :: (Ptr RawTH1S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_FindObject" c_th1s_findobject 
-  :: (Ptr RawTH1S) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH1S_SaveAs" c_th1s_saveas 
-  :: (Ptr RawTH1S) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_Write" c_th1s_write 
-  :: (Ptr RawTH1S) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH1S_IsA" c_th1s_isa 
-  :: (Ptr RawTH1S) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH1S_printObj" c_th1s_printobj 
-  :: (Ptr RawTH1S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH1S_delete" c_th1s_delete 
-  :: (Ptr RawTH1S) -> IO ()
-
-foreign import ccall "HROOT.h TH2C_fill2" c_th2c_fill2 
-  :: (Ptr RawTH2C) -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2C_fillRandom2" c_th2c_fillrandom2 
-  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_findFirstBinAbove2" c_th2c_findfirstbinabove2 
-  :: (Ptr RawTH2C) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2C_findLastBinAbove2" c_th2c_findlastbinabove2 
-  :: (Ptr RawTH2C) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2C_FitSlicesX" c_th2c_fitslicesx 
-  :: (Ptr RawTH2C) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2C_FitSlicesY" c_th2c_fitslicesy 
-  :: (Ptr RawTH2C) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2C_GetCorrelationFactor" c_th2c_getcorrelationfactor 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetCovariance" c_th2c_getcovariance 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetStats" c_th2c_getstats 
-  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2C_Integral" c_th2c_integral 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2C_Interpolate" c_th2c_interpolate 
-  :: (Ptr RawTH2C) -> CDouble -> CDouble -> CDouble -> IO CDouble
-foreign import ccall "HROOT.h TH2C_KolmogorovTest" c_th2c_kolmogorovtest 
-  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2C_RebinX" c_th2c_rebinx 
-  :: (Ptr RawTH2C) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2C_RebinY" c_th2c_rebiny 
-  :: (Ptr RawTH2C) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2C_Rebin2D" c_th2c_rebin2d 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2C_PutStats" c_th2c_putstats 
-  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2C_Reset" c_th2c_reset 
-  :: (Ptr RawTH2C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_SetShowProjectionX" c_th2c_setshowprojectionx 
-  :: (Ptr RawTH2C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_SetShowProjectionY" c_th2c_setshowprojectiony 
-  :: (Ptr RawTH2C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_ShowBackground" c_th2c_showbackground 
-  :: (Ptr RawTH2C) -> CInt -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2C_ShowPeaks" c_th2c_showpeaks 
-  :: (Ptr RawTH2C) -> CDouble -> CString -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2C_Smooth" c_th2c_smooth 
-  :: (Ptr RawTH2C) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_Add" c_th2c_add 
-  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_AddBinContent" c_th2c_addbincontent 
-  :: (Ptr RawTH2C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_Chi2Test" c_th2c_chi2test 
-  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH2C_ComputeIntegral" c_th2c_computeintegral 
-  :: (Ptr RawTH2C) -> IO CDouble
-foreign import ccall "HROOT.h TH2C_DirectoryAutoAdd" c_th2c_directoryautoadd 
-  :: (Ptr RawTH2C) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH2C_DistancetoPrimitive" c_th2c_distancetoprimitive 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2C_Divide" c_th2c_divide 
-  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_DrawCopy" c_th2c_drawcopy 
-  :: (Ptr RawTH2C) -> CString -> IO (Ptr RawTH2C)
-foreign import ccall "HROOT.h TH2C_DrawNormalized" c_th2c_drawnormalized 
-  :: (Ptr RawTH2C) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2C_DrawPanel" c_th2c_drawpanel 
-  :: (Ptr RawTH2C) -> IO ()
-foreign import ccall "HROOT.h TH2C_BufferEmpty" c_th2c_bufferempty 
-  :: (Ptr RawTH2C) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2C_Eval" c_th2c_eval 
-  :: (Ptr RawTH2C) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_ExecuteEvent" c_th2c_executeevent 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_FFT" c_th2c_fft 
-  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2C_fill1" c_th2c_fill1 
-  :: (Ptr RawTH2C) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2C_FillN" c_th2c_filln 
-  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_FillRandom" c_th2c_fillrandom 
-  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_FindBin" c_th2c_findbin 
-  :: (Ptr RawTH2C) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2C_FindFixBin" c_th2c_findfixbin 
-  :: (Ptr RawTH2C) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2C_FindFirstBinAbove" c_th2c_findfirstbinabove 
-  :: (Ptr RawTH2C) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2C_FindLastBinAbove" c_th2c_findlastbinabove 
-  :: (Ptr RawTH2C) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2C_FitPanel" c_th2c_fitpanel 
-  :: (Ptr RawTH2C) -> IO ()
-foreign import ccall "HROOT.h TH2C_GetNdivisions" c_th2c_getndivisions 
-  :: (Ptr RawTH2C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2C_GetAxisColor" c_th2c_getaxiscolor 
-  :: (Ptr RawTH2C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2C_GetLabelColor" c_th2c_getlabelcolor 
-  :: (Ptr RawTH2C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2C_GetLabelFont" c_th2c_getlabelfont 
-  :: (Ptr RawTH2C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2C_GetLabelOffset" c_th2c_getlabeloffset 
-  :: (Ptr RawTH2C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetLabelSize" c_th2c_getlabelsize 
-  :: (Ptr RawTH2C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetTitleFont" c_th2c_gettitlefont 
-  :: (Ptr RawTH2C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2C_GetTitleOffset" c_th2c_gettitleoffset 
-  :: (Ptr RawTH2C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetTitleSize" c_th2c_gettitlesize 
-  :: (Ptr RawTH2C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetTickLength" c_th2c_getticklength 
-  :: (Ptr RawTH2C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBarOffset" c_th2c_getbaroffset 
-  :: (Ptr RawTH2C) -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBarWidth" c_th2c_getbarwidth 
-  :: (Ptr RawTH2C) -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetContour" c_th2c_getcontour 
-  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH2C_GetContourLevel" c_th2c_getcontourlevel 
-  :: (Ptr RawTH2C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetContourLevelPad" c_th2c_getcontourlevelpad 
-  :: (Ptr RawTH2C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBin" c_th2c_getbin 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2C_GetBinCenter" c_th2c_getbincenter 
-  :: (Ptr RawTH2C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBinContent1" c_th2c_getbincontent1 
-  :: (Ptr RawTH2C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBinContent2" c_th2c_getbincontent2 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBinContent3" c_th2c_getbincontent3 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBinError1" c_th2c_getbinerror1 
-  :: (Ptr RawTH2C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBinError2" c_th2c_getbinerror2 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBinError3" c_th2c_getbinerror3 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBinLowEdge" c_th2c_getbinlowedge 
-  :: (Ptr RawTH2C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetBinWidth" c_th2c_getbinwidth 
-  :: (Ptr RawTH2C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetCellContent" c_th2c_getcellcontent 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_GetCellError" c_th2c_getcellerror 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2C_Scale" c_th2c_scale 
-  :: (Ptr RawTH2C) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_SetAxisColor" c_th2c_setaxiscolor 
-  :: (Ptr RawTH2C) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_SetAxisRange" c_th2c_setaxisrange 
-  :: (Ptr RawTH2C) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_SetBarOffset" c_th2c_setbaroffset 
-  :: (Ptr RawTH2C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_SetBarWidth" c_th2c_setbarwidth 
-  :: (Ptr RawTH2C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_setBinContent1" c_th2c_setbincontent1 
-  :: (Ptr RawTH2C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_setBinContent2" c_th2c_setbincontent2 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_setBinContent3" c_th2c_setbincontent3 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_setBinError1" c_th2c_setbinerror1 
-  :: (Ptr RawTH2C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_setBinError2" c_th2c_setbinerror2 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_setBinError3" c_th2c_setbinerror3 
-  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_setBins1" c_th2c_setbins1 
-  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2C_setBins2" c_th2c_setbins2 
-  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2C_setBins3" c_th2c_setbins3 
-  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2C_SetMaximum" c_th2c_setmaximum 
-  :: (Ptr RawTH2C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_SetMinimum" c_th2c_setminimum 
-  :: (Ptr RawTH2C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2C_SetXTitle" c_th2c_setxtitle 
-  :: (Ptr RawTH2C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_SetYTitle" c_th2c_setytitle 
-  :: (Ptr RawTH2C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_SetZTitle" c_th2c_setztitle 
-  :: (Ptr RawTH2C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_SetTitle" c_th2c_settitle 
-  :: (Ptr RawTH2C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_SetLineColor" c_th2c_setlinecolor 
-  :: (Ptr RawTH2C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_SetFillColor" c_th2c_setfillcolor 
-  :: (Ptr RawTH2C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_SetFillStyle" c_th2c_setfillstyle 
-  :: (Ptr RawTH2C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2C_GetName" c_th2c_getname 
-  :: (Ptr RawTH2C) -> IO CString
-foreign import ccall "HROOT.h TH2C_Draw" c_th2c_draw 
-  :: (Ptr RawTH2C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_FindObject" c_th2c_findobject 
-  :: (Ptr RawTH2C) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH2C_SaveAs" c_th2c_saveas 
-  :: (Ptr RawTH2C) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_Write" c_th2c_write 
-  :: (Ptr RawTH2C) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2C_IsA" c_th2c_isa 
-  :: (Ptr RawTH2C) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH2C_printObj" c_th2c_printobj 
-  :: (Ptr RawTH2C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2C_delete" c_th2c_delete 
-  :: (Ptr RawTH2C) -> IO ()
-
-foreign import ccall "HROOT.h TH2D_fill2" c_th2d_fill2 
-  :: (Ptr RawTH2D) -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2D_fillRandom2" c_th2d_fillrandom2 
-  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_findFirstBinAbove2" c_th2d_findfirstbinabove2 
-  :: (Ptr RawTH2D) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2D_findLastBinAbove2" c_th2d_findlastbinabove2 
-  :: (Ptr RawTH2D) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2D_FitSlicesX" c_th2d_fitslicesx 
-  :: (Ptr RawTH2D) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2D_FitSlicesY" c_th2d_fitslicesy 
-  :: (Ptr RawTH2D) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2D_GetCorrelationFactor" c_th2d_getcorrelationfactor 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetCovariance" c_th2d_getcovariance 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetStats" c_th2d_getstats 
-  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2D_Integral" c_th2d_integral 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2D_Interpolate" c_th2d_interpolate 
-  :: (Ptr RawTH2D) -> CDouble -> CDouble -> CDouble -> IO CDouble
-foreign import ccall "HROOT.h TH2D_KolmogorovTest" c_th2d_kolmogorovtest 
-  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2D_RebinX" c_th2d_rebinx 
-  :: (Ptr RawTH2D) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2D_RebinY" c_th2d_rebiny 
-  :: (Ptr RawTH2D) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2D_Rebin2D" c_th2d_rebin2d 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2D_PutStats" c_th2d_putstats 
-  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2D_Reset" c_th2d_reset 
-  :: (Ptr RawTH2D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_SetShowProjectionX" c_th2d_setshowprojectionx 
-  :: (Ptr RawTH2D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_SetShowProjectionY" c_th2d_setshowprojectiony 
-  :: (Ptr RawTH2D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_ShowBackground" c_th2d_showbackground 
-  :: (Ptr RawTH2D) -> CInt -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2D_ShowPeaks" c_th2d_showpeaks 
-  :: (Ptr RawTH2D) -> CDouble -> CString -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2D_Smooth" c_th2d_smooth 
-  :: (Ptr RawTH2D) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_Add" c_th2d_add 
-  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_AddBinContent" c_th2d_addbincontent 
-  :: (Ptr RawTH2D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_Chi2Test" c_th2d_chi2test 
-  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH2D_ComputeIntegral" c_th2d_computeintegral 
-  :: (Ptr RawTH2D) -> IO CDouble
-foreign import ccall "HROOT.h TH2D_DirectoryAutoAdd" c_th2d_directoryautoadd 
-  :: (Ptr RawTH2D) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH2D_DistancetoPrimitive" c_th2d_distancetoprimitive 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2D_Divide" c_th2d_divide 
-  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_DrawCopy" c_th2d_drawcopy 
-  :: (Ptr RawTH2D) -> CString -> IO (Ptr RawTH2D)
-foreign import ccall "HROOT.h TH2D_DrawNormalized" c_th2d_drawnormalized 
-  :: (Ptr RawTH2D) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2D_DrawPanel" c_th2d_drawpanel 
-  :: (Ptr RawTH2D) -> IO ()
-foreign import ccall "HROOT.h TH2D_BufferEmpty" c_th2d_bufferempty 
-  :: (Ptr RawTH2D) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2D_Eval" c_th2d_eval 
-  :: (Ptr RawTH2D) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_ExecuteEvent" c_th2d_executeevent 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_FFT" c_th2d_fft 
-  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2D_fill1" c_th2d_fill1 
-  :: (Ptr RawTH2D) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2D_FillN" c_th2d_filln 
-  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_FillRandom" c_th2d_fillrandom 
-  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_FindBin" c_th2d_findbin 
-  :: (Ptr RawTH2D) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2D_FindFixBin" c_th2d_findfixbin 
-  :: (Ptr RawTH2D) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2D_FindFirstBinAbove" c_th2d_findfirstbinabove 
-  :: (Ptr RawTH2D) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2D_FindLastBinAbove" c_th2d_findlastbinabove 
-  :: (Ptr RawTH2D) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2D_FitPanel" c_th2d_fitpanel 
-  :: (Ptr RawTH2D) -> IO ()
-foreign import ccall "HROOT.h TH2D_GetNdivisions" c_th2d_getndivisions 
-  :: (Ptr RawTH2D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2D_GetAxisColor" c_th2d_getaxiscolor 
-  :: (Ptr RawTH2D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2D_GetLabelColor" c_th2d_getlabelcolor 
-  :: (Ptr RawTH2D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2D_GetLabelFont" c_th2d_getlabelfont 
-  :: (Ptr RawTH2D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2D_GetLabelOffset" c_th2d_getlabeloffset 
-  :: (Ptr RawTH2D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetLabelSize" c_th2d_getlabelsize 
-  :: (Ptr RawTH2D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetTitleFont" c_th2d_gettitlefont 
-  :: (Ptr RawTH2D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2D_GetTitleOffset" c_th2d_gettitleoffset 
-  :: (Ptr RawTH2D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetTitleSize" c_th2d_gettitlesize 
-  :: (Ptr RawTH2D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetTickLength" c_th2d_getticklength 
-  :: (Ptr RawTH2D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBarOffset" c_th2d_getbaroffset 
-  :: (Ptr RawTH2D) -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBarWidth" c_th2d_getbarwidth 
-  :: (Ptr RawTH2D) -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetContour" c_th2d_getcontour 
-  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH2D_GetContourLevel" c_th2d_getcontourlevel 
-  :: (Ptr RawTH2D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetContourLevelPad" c_th2d_getcontourlevelpad 
-  :: (Ptr RawTH2D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBin" c_th2d_getbin 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2D_GetBinCenter" c_th2d_getbincenter 
-  :: (Ptr RawTH2D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBinContent1" c_th2d_getbincontent1 
-  :: (Ptr RawTH2D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBinContent2" c_th2d_getbincontent2 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBinContent3" c_th2d_getbincontent3 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBinError1" c_th2d_getbinerror1 
-  :: (Ptr RawTH2D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBinError2" c_th2d_getbinerror2 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBinError3" c_th2d_getbinerror3 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBinLowEdge" c_th2d_getbinlowedge 
-  :: (Ptr RawTH2D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetBinWidth" c_th2d_getbinwidth 
-  :: (Ptr RawTH2D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetCellContent" c_th2d_getcellcontent 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_GetCellError" c_th2d_getcellerror 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2D_Scale" c_th2d_scale 
-  :: (Ptr RawTH2D) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_SetAxisColor" c_th2d_setaxiscolor 
-  :: (Ptr RawTH2D) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_SetAxisRange" c_th2d_setaxisrange 
-  :: (Ptr RawTH2D) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_SetBarOffset" c_th2d_setbaroffset 
-  :: (Ptr RawTH2D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_SetBarWidth" c_th2d_setbarwidth 
-  :: (Ptr RawTH2D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_setBinContent1" c_th2d_setbincontent1 
-  :: (Ptr RawTH2D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_setBinContent2" c_th2d_setbincontent2 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_setBinContent3" c_th2d_setbincontent3 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_setBinError1" c_th2d_setbinerror1 
-  :: (Ptr RawTH2D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_setBinError2" c_th2d_setbinerror2 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_setBinError3" c_th2d_setbinerror3 
-  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_setBins1" c_th2d_setbins1 
-  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2D_setBins2" c_th2d_setbins2 
-  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2D_setBins3" c_th2d_setbins3 
-  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2D_SetMaximum" c_th2d_setmaximum 
-  :: (Ptr RawTH2D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_SetMinimum" c_th2d_setminimum 
-  :: (Ptr RawTH2D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2D_SetXTitle" c_th2d_setxtitle 
-  :: (Ptr RawTH2D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_SetYTitle" c_th2d_setytitle 
-  :: (Ptr RawTH2D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_SetZTitle" c_th2d_setztitle 
-  :: (Ptr RawTH2D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_SetTitle" c_th2d_settitle 
-  :: (Ptr RawTH2D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_SetLineColor" c_th2d_setlinecolor 
-  :: (Ptr RawTH2D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_SetFillColor" c_th2d_setfillcolor 
-  :: (Ptr RawTH2D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_SetFillStyle" c_th2d_setfillstyle 
-  :: (Ptr RawTH2D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2D_GetName" c_th2d_getname 
-  :: (Ptr RawTH2D) -> IO CString
-foreign import ccall "HROOT.h TH2D_Draw" c_th2d_draw 
-  :: (Ptr RawTH2D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_FindObject" c_th2d_findobject 
-  :: (Ptr RawTH2D) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH2D_SaveAs" c_th2d_saveas 
-  :: (Ptr RawTH2D) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_Write" c_th2d_write 
-  :: (Ptr RawTH2D) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2D_IsA" c_th2d_isa 
-  :: (Ptr RawTH2D) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH2D_printObj" c_th2d_printobj 
-  :: (Ptr RawTH2D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2D_delete" c_th2d_delete 
-  :: (Ptr RawTH2D) -> IO ()
-foreign import ccall "HROOT.h TH2D_newTH2D" c_th2d_newth2d 
-  :: CString -> CString -> CInt -> CDouble -> CDouble -> CInt -> CDouble -> CDouble -> IO (Ptr RawTH2D)
-
-foreign import ccall "HROOT.h TH2F_fill2" c_th2f_fill2 
-  :: (Ptr RawTH2F) -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2F_fillRandom2" c_th2f_fillrandom2 
-  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_findFirstBinAbove2" c_th2f_findfirstbinabove2 
-  :: (Ptr RawTH2F) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2F_findLastBinAbove2" c_th2f_findlastbinabove2 
-  :: (Ptr RawTH2F) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2F_FitSlicesX" c_th2f_fitslicesx 
-  :: (Ptr RawTH2F) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2F_FitSlicesY" c_th2f_fitslicesy 
-  :: (Ptr RawTH2F) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2F_GetCorrelationFactor" c_th2f_getcorrelationfactor 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetCovariance" c_th2f_getcovariance 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetStats" c_th2f_getstats 
-  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2F_Integral" c_th2f_integral 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2F_Interpolate" c_th2f_interpolate 
-  :: (Ptr RawTH2F) -> CDouble -> CDouble -> CDouble -> IO CDouble
-foreign import ccall "HROOT.h TH2F_KolmogorovTest" c_th2f_kolmogorovtest 
-  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2F_RebinX" c_th2f_rebinx 
-  :: (Ptr RawTH2F) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2F_RebinY" c_th2f_rebiny 
-  :: (Ptr RawTH2F) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2F_Rebin2D" c_th2f_rebin2d 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2F_PutStats" c_th2f_putstats 
-  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2F_Reset" c_th2f_reset 
-  :: (Ptr RawTH2F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_SetShowProjectionX" c_th2f_setshowprojectionx 
-  :: (Ptr RawTH2F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_SetShowProjectionY" c_th2f_setshowprojectiony 
-  :: (Ptr RawTH2F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_ShowBackground" c_th2f_showbackground 
-  :: (Ptr RawTH2F) -> CInt -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2F_ShowPeaks" c_th2f_showpeaks 
-  :: (Ptr RawTH2F) -> CDouble -> CString -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2F_Smooth" c_th2f_smooth 
-  :: (Ptr RawTH2F) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_Add" c_th2f_add 
-  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_AddBinContent" c_th2f_addbincontent 
-  :: (Ptr RawTH2F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_Chi2Test" c_th2f_chi2test 
-  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH2F_ComputeIntegral" c_th2f_computeintegral 
-  :: (Ptr RawTH2F) -> IO CDouble
-foreign import ccall "HROOT.h TH2F_DirectoryAutoAdd" c_th2f_directoryautoadd 
-  :: (Ptr RawTH2F) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH2F_DistancetoPrimitive" c_th2f_distancetoprimitive 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2F_Divide" c_th2f_divide 
-  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_DrawCopy" c_th2f_drawcopy 
-  :: (Ptr RawTH2F) -> CString -> IO (Ptr RawTH2F)
-foreign import ccall "HROOT.h TH2F_DrawNormalized" c_th2f_drawnormalized 
-  :: (Ptr RawTH2F) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2F_DrawPanel" c_th2f_drawpanel 
-  :: (Ptr RawTH2F) -> IO ()
-foreign import ccall "HROOT.h TH2F_BufferEmpty" c_th2f_bufferempty 
-  :: (Ptr RawTH2F) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2F_Eval" c_th2f_eval 
-  :: (Ptr RawTH2F) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_ExecuteEvent" c_th2f_executeevent 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_FFT" c_th2f_fft 
-  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2F_fill1" c_th2f_fill1 
-  :: (Ptr RawTH2F) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2F_FillN" c_th2f_filln 
-  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_FillRandom" c_th2f_fillrandom 
-  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_FindBin" c_th2f_findbin 
-  :: (Ptr RawTH2F) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2F_FindFixBin" c_th2f_findfixbin 
-  :: (Ptr RawTH2F) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2F_FindFirstBinAbove" c_th2f_findfirstbinabove 
-  :: (Ptr RawTH2F) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2F_FindLastBinAbove" c_th2f_findlastbinabove 
-  :: (Ptr RawTH2F) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2F_FitPanel" c_th2f_fitpanel 
-  :: (Ptr RawTH2F) -> IO ()
-foreign import ccall "HROOT.h TH2F_GetNdivisions" c_th2f_getndivisions 
-  :: (Ptr RawTH2F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2F_GetAxisColor" c_th2f_getaxiscolor 
-  :: (Ptr RawTH2F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2F_GetLabelColor" c_th2f_getlabelcolor 
-  :: (Ptr RawTH2F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2F_GetLabelFont" c_th2f_getlabelfont 
-  :: (Ptr RawTH2F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2F_GetLabelOffset" c_th2f_getlabeloffset 
-  :: (Ptr RawTH2F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetLabelSize" c_th2f_getlabelsize 
-  :: (Ptr RawTH2F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetTitleFont" c_th2f_gettitlefont 
-  :: (Ptr RawTH2F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2F_GetTitleOffset" c_th2f_gettitleoffset 
-  :: (Ptr RawTH2F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetTitleSize" c_th2f_gettitlesize 
-  :: (Ptr RawTH2F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetTickLength" c_th2f_getticklength 
-  :: (Ptr RawTH2F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBarOffset" c_th2f_getbaroffset 
-  :: (Ptr RawTH2F) -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBarWidth" c_th2f_getbarwidth 
-  :: (Ptr RawTH2F) -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetContour" c_th2f_getcontour 
-  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH2F_GetContourLevel" c_th2f_getcontourlevel 
-  :: (Ptr RawTH2F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetContourLevelPad" c_th2f_getcontourlevelpad 
-  :: (Ptr RawTH2F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBin" c_th2f_getbin 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2F_GetBinCenter" c_th2f_getbincenter 
-  :: (Ptr RawTH2F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBinContent1" c_th2f_getbincontent1 
-  :: (Ptr RawTH2F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBinContent2" c_th2f_getbincontent2 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBinContent3" c_th2f_getbincontent3 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBinError1" c_th2f_getbinerror1 
-  :: (Ptr RawTH2F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBinError2" c_th2f_getbinerror2 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBinError3" c_th2f_getbinerror3 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBinLowEdge" c_th2f_getbinlowedge 
-  :: (Ptr RawTH2F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetBinWidth" c_th2f_getbinwidth 
-  :: (Ptr RawTH2F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetCellContent" c_th2f_getcellcontent 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_GetCellError" c_th2f_getcellerror 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2F_Scale" c_th2f_scale 
-  :: (Ptr RawTH2F) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_SetAxisColor" c_th2f_setaxiscolor 
-  :: (Ptr RawTH2F) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_SetAxisRange" c_th2f_setaxisrange 
-  :: (Ptr RawTH2F) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_SetBarOffset" c_th2f_setbaroffset 
-  :: (Ptr RawTH2F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_SetBarWidth" c_th2f_setbarwidth 
-  :: (Ptr RawTH2F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_setBinContent1" c_th2f_setbincontent1 
-  :: (Ptr RawTH2F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_setBinContent2" c_th2f_setbincontent2 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_setBinContent3" c_th2f_setbincontent3 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_setBinError1" c_th2f_setbinerror1 
-  :: (Ptr RawTH2F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_setBinError2" c_th2f_setbinerror2 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_setBinError3" c_th2f_setbinerror3 
-  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_setBins1" c_th2f_setbins1 
-  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2F_setBins2" c_th2f_setbins2 
-  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2F_setBins3" c_th2f_setbins3 
-  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2F_SetMaximum" c_th2f_setmaximum 
-  :: (Ptr RawTH2F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_SetMinimum" c_th2f_setminimum 
-  :: (Ptr RawTH2F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2F_SetXTitle" c_th2f_setxtitle 
-  :: (Ptr RawTH2F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_SetYTitle" c_th2f_setytitle 
-  :: (Ptr RawTH2F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_SetZTitle" c_th2f_setztitle 
-  :: (Ptr RawTH2F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_SetTitle" c_th2f_settitle 
-  :: (Ptr RawTH2F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_SetLineColor" c_th2f_setlinecolor 
-  :: (Ptr RawTH2F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_SetFillColor" c_th2f_setfillcolor 
-  :: (Ptr RawTH2F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_SetFillStyle" c_th2f_setfillstyle 
-  :: (Ptr RawTH2F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2F_GetName" c_th2f_getname 
-  :: (Ptr RawTH2F) -> IO CString
-foreign import ccall "HROOT.h TH2F_Draw" c_th2f_draw 
-  :: (Ptr RawTH2F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_FindObject" c_th2f_findobject 
-  :: (Ptr RawTH2F) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH2F_SaveAs" c_th2f_saveas 
-  :: (Ptr RawTH2F) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_Write" c_th2f_write 
-  :: (Ptr RawTH2F) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2F_IsA" c_th2f_isa 
-  :: (Ptr RawTH2F) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH2F_printObj" c_th2f_printobj 
-  :: (Ptr RawTH2F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2F_delete" c_th2f_delete 
-  :: (Ptr RawTH2F) -> IO ()
-foreign import ccall "HROOT.h TH2F_newTH2F" c_th2f_newth2f 
-  :: CString -> CString -> CInt -> CDouble -> CDouble -> CInt -> CDouble -> CDouble -> IO (Ptr RawTH2F)
-
-foreign import ccall "HROOT.h TH2I_fill2" c_th2i_fill2 
-  :: (Ptr RawTH2I) -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2I_fillRandom2" c_th2i_fillrandom2 
-  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_findFirstBinAbove2" c_th2i_findfirstbinabove2 
-  :: (Ptr RawTH2I) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2I_findLastBinAbove2" c_th2i_findlastbinabove2 
-  :: (Ptr RawTH2I) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2I_FitSlicesX" c_th2i_fitslicesx 
-  :: (Ptr RawTH2I) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2I_FitSlicesY" c_th2i_fitslicesy 
-  :: (Ptr RawTH2I) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2I_GetCorrelationFactor" c_th2i_getcorrelationfactor 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetCovariance" c_th2i_getcovariance 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetStats" c_th2i_getstats 
-  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2I_Integral" c_th2i_integral 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2I_Interpolate" c_th2i_interpolate 
-  :: (Ptr RawTH2I) -> CDouble -> CDouble -> CDouble -> IO CDouble
-foreign import ccall "HROOT.h TH2I_KolmogorovTest" c_th2i_kolmogorovtest 
-  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2I_RebinX" c_th2i_rebinx 
-  :: (Ptr RawTH2I) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2I_RebinY" c_th2i_rebiny 
-  :: (Ptr RawTH2I) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2I_Rebin2D" c_th2i_rebin2d 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2I_PutStats" c_th2i_putstats 
-  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2I_Reset" c_th2i_reset 
-  :: (Ptr RawTH2I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_SetShowProjectionX" c_th2i_setshowprojectionx 
-  :: (Ptr RawTH2I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_SetShowProjectionY" c_th2i_setshowprojectiony 
-  :: (Ptr RawTH2I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_ShowBackground" c_th2i_showbackground 
-  :: (Ptr RawTH2I) -> CInt -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2I_ShowPeaks" c_th2i_showpeaks 
-  :: (Ptr RawTH2I) -> CDouble -> CString -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2I_Smooth" c_th2i_smooth 
-  :: (Ptr RawTH2I) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_Add" c_th2i_add 
-  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_AddBinContent" c_th2i_addbincontent 
-  :: (Ptr RawTH2I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_Chi2Test" c_th2i_chi2test 
-  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH2I_ComputeIntegral" c_th2i_computeintegral 
-  :: (Ptr RawTH2I) -> IO CDouble
-foreign import ccall "HROOT.h TH2I_DirectoryAutoAdd" c_th2i_directoryautoadd 
-  :: (Ptr RawTH2I) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH2I_DistancetoPrimitive" c_th2i_distancetoprimitive 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2I_Divide" c_th2i_divide 
-  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_DrawCopy" c_th2i_drawcopy 
-  :: (Ptr RawTH2I) -> CString -> IO (Ptr RawTH2I)
-foreign import ccall "HROOT.h TH2I_DrawNormalized" c_th2i_drawnormalized 
-  :: (Ptr RawTH2I) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2I_DrawPanel" c_th2i_drawpanel 
-  :: (Ptr RawTH2I) -> IO ()
-foreign import ccall "HROOT.h TH2I_BufferEmpty" c_th2i_bufferempty 
-  :: (Ptr RawTH2I) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2I_Eval" c_th2i_eval 
-  :: (Ptr RawTH2I) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_ExecuteEvent" c_th2i_executeevent 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_FFT" c_th2i_fft 
-  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2I_fill1" c_th2i_fill1 
-  :: (Ptr RawTH2I) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2I_FillN" c_th2i_filln 
-  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_FillRandom" c_th2i_fillrandom 
-  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_FindBin" c_th2i_findbin 
-  :: (Ptr RawTH2I) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2I_FindFixBin" c_th2i_findfixbin 
-  :: (Ptr RawTH2I) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2I_FindFirstBinAbove" c_th2i_findfirstbinabove 
-  :: (Ptr RawTH2I) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2I_FindLastBinAbove" c_th2i_findlastbinabove 
-  :: (Ptr RawTH2I) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2I_FitPanel" c_th2i_fitpanel 
-  :: (Ptr RawTH2I) -> IO ()
-foreign import ccall "HROOT.h TH2I_GetNdivisions" c_th2i_getndivisions 
-  :: (Ptr RawTH2I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2I_GetAxisColor" c_th2i_getaxiscolor 
-  :: (Ptr RawTH2I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2I_GetLabelColor" c_th2i_getlabelcolor 
-  :: (Ptr RawTH2I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2I_GetLabelFont" c_th2i_getlabelfont 
-  :: (Ptr RawTH2I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2I_GetLabelOffset" c_th2i_getlabeloffset 
-  :: (Ptr RawTH2I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetLabelSize" c_th2i_getlabelsize 
-  :: (Ptr RawTH2I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetTitleFont" c_th2i_gettitlefont 
-  :: (Ptr RawTH2I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2I_GetTitleOffset" c_th2i_gettitleoffset 
-  :: (Ptr RawTH2I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetTitleSize" c_th2i_gettitlesize 
-  :: (Ptr RawTH2I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetTickLength" c_th2i_getticklength 
-  :: (Ptr RawTH2I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBarOffset" c_th2i_getbaroffset 
-  :: (Ptr RawTH2I) -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBarWidth" c_th2i_getbarwidth 
-  :: (Ptr RawTH2I) -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetContour" c_th2i_getcontour 
-  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH2I_GetContourLevel" c_th2i_getcontourlevel 
-  :: (Ptr RawTH2I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetContourLevelPad" c_th2i_getcontourlevelpad 
-  :: (Ptr RawTH2I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBin" c_th2i_getbin 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2I_GetBinCenter" c_th2i_getbincenter 
-  :: (Ptr RawTH2I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBinContent1" c_th2i_getbincontent1 
-  :: (Ptr RawTH2I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBinContent2" c_th2i_getbincontent2 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBinContent3" c_th2i_getbincontent3 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBinError1" c_th2i_getbinerror1 
-  :: (Ptr RawTH2I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBinError2" c_th2i_getbinerror2 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBinError3" c_th2i_getbinerror3 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBinLowEdge" c_th2i_getbinlowedge 
-  :: (Ptr RawTH2I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetBinWidth" c_th2i_getbinwidth 
-  :: (Ptr RawTH2I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetCellContent" c_th2i_getcellcontent 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_GetCellError" c_th2i_getcellerror 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2I_Scale" c_th2i_scale 
-  :: (Ptr RawTH2I) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_SetAxisColor" c_th2i_setaxiscolor 
-  :: (Ptr RawTH2I) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_SetAxisRange" c_th2i_setaxisrange 
-  :: (Ptr RawTH2I) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_SetBarOffset" c_th2i_setbaroffset 
-  :: (Ptr RawTH2I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_SetBarWidth" c_th2i_setbarwidth 
-  :: (Ptr RawTH2I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_setBinContent1" c_th2i_setbincontent1 
-  :: (Ptr RawTH2I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_setBinContent2" c_th2i_setbincontent2 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_setBinContent3" c_th2i_setbincontent3 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_setBinError1" c_th2i_setbinerror1 
-  :: (Ptr RawTH2I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_setBinError2" c_th2i_setbinerror2 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_setBinError3" c_th2i_setbinerror3 
-  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_setBins1" c_th2i_setbins1 
-  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2I_setBins2" c_th2i_setbins2 
-  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2I_setBins3" c_th2i_setbins3 
-  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2I_SetMaximum" c_th2i_setmaximum 
-  :: (Ptr RawTH2I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_SetMinimum" c_th2i_setminimum 
-  :: (Ptr RawTH2I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2I_SetXTitle" c_th2i_setxtitle 
-  :: (Ptr RawTH2I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_SetYTitle" c_th2i_setytitle 
-  :: (Ptr RawTH2I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_SetZTitle" c_th2i_setztitle 
-  :: (Ptr RawTH2I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_SetTitle" c_th2i_settitle 
-  :: (Ptr RawTH2I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_SetLineColor" c_th2i_setlinecolor 
-  :: (Ptr RawTH2I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_SetFillColor" c_th2i_setfillcolor 
-  :: (Ptr RawTH2I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_SetFillStyle" c_th2i_setfillstyle 
-  :: (Ptr RawTH2I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2I_GetName" c_th2i_getname 
-  :: (Ptr RawTH2I) -> IO CString
-foreign import ccall "HROOT.h TH2I_Draw" c_th2i_draw 
-  :: (Ptr RawTH2I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_FindObject" c_th2i_findobject 
-  :: (Ptr RawTH2I) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH2I_SaveAs" c_th2i_saveas 
-  :: (Ptr RawTH2I) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_Write" c_th2i_write 
-  :: (Ptr RawTH2I) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2I_IsA" c_th2i_isa 
-  :: (Ptr RawTH2I) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH2I_printObj" c_th2i_printobj 
-  :: (Ptr RawTH2I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2I_delete" c_th2i_delete 
-  :: (Ptr RawTH2I) -> IO ()
-
-foreign import ccall "HROOT.h TH2Poly_fill2" c_th2poly_fill2 
-  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_fillRandom2" c_th2poly_fillrandom2 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_findFirstBinAbove2" c_th2poly_findfirstbinabove2 
-  :: (Ptr RawTH2Poly) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_findLastBinAbove2" c_th2poly_findlastbinabove2 
-  :: (Ptr RawTH2Poly) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_FitSlicesX" c_th2poly_fitslicesx 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_FitSlicesY" c_th2poly_fitslicesy 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_GetCorrelationFactor" c_th2poly_getcorrelationfactor 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetCovariance" c_th2poly_getcovariance 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetStats" c_th2poly_getstats 
-  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_Integral" c_th2poly_integral 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_Interpolate" c_th2poly_interpolate 
-  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> CDouble -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_KolmogorovTest" c_th2poly_kolmogorovtest 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_RebinX" c_th2poly_rebinx 
-  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2Poly_RebinY" c_th2poly_rebiny 
-  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2Poly_Rebin2D" c_th2poly_rebin2d 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2Poly_PutStats" c_th2poly_putstats 
-  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_Reset" c_th2poly_reset 
-  :: (Ptr RawTH2Poly) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetShowProjectionX" c_th2poly_setshowprojectionx 
-  :: (Ptr RawTH2Poly) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetShowProjectionY" c_th2poly_setshowprojectiony 
-  :: (Ptr RawTH2Poly) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_ShowBackground" c_th2poly_showbackground 
-  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2Poly_ShowPeaks" c_th2poly_showpeaks 
-  :: (Ptr RawTH2Poly) -> CDouble -> CString -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_Smooth" c_th2poly_smooth 
-  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_Add" c_th2poly_add 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_AddBinContent" c_th2poly_addbincontent 
-  :: (Ptr RawTH2Poly) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_Chi2Test" c_th2poly_chi2test 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_ComputeIntegral" c_th2poly_computeintegral 
-  :: (Ptr RawTH2Poly) -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_DirectoryAutoAdd" c_th2poly_directoryautoadd 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_DistancetoPrimitive" c_th2poly_distancetoprimitive 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_Divide" c_th2poly_divide 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_DrawCopy" c_th2poly_drawcopy 
-  :: (Ptr RawTH2Poly) -> CString -> IO (Ptr RawTH2Poly)
-foreign import ccall "HROOT.h TH2Poly_DrawNormalized" c_th2poly_drawnormalized 
-  :: (Ptr RawTH2Poly) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2Poly_DrawPanel" c_th2poly_drawpanel 
-  :: (Ptr RawTH2Poly) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_BufferEmpty" c_th2poly_bufferempty 
-  :: (Ptr RawTH2Poly) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_Eval" c_th2poly_eval 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_ExecuteEvent" c_th2poly_executeevent 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_FFT" c_th2poly_fft 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2Poly_fill1" c_th2poly_fill1 
-  :: (Ptr RawTH2Poly) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_FillN" c_th2poly_filln 
-  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_FillRandom" c_th2poly_fillrandom 
-  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_FindBin" c_th2poly_findbin 
-  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_FindFixBin" c_th2poly_findfixbin 
-  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_FindFirstBinAbove" c_th2poly_findfirstbinabove 
-  :: (Ptr RawTH2Poly) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_FindLastBinAbove" c_th2poly_findlastbinabove 
-  :: (Ptr RawTH2Poly) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_FitPanel" c_th2poly_fitpanel 
-  :: (Ptr RawTH2Poly) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_GetNdivisions" c_th2poly_getndivisions 
-  :: (Ptr RawTH2Poly) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_GetAxisColor" c_th2poly_getaxiscolor 
-  :: (Ptr RawTH2Poly) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_GetLabelColor" c_th2poly_getlabelcolor 
-  :: (Ptr RawTH2Poly) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_GetLabelFont" c_th2poly_getlabelfont 
-  :: (Ptr RawTH2Poly) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_GetLabelOffset" c_th2poly_getlabeloffset 
-  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetLabelSize" c_th2poly_getlabelsize 
-  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetTitleFont" c_th2poly_gettitlefont 
-  :: (Ptr RawTH2Poly) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_GetTitleOffset" c_th2poly_gettitleoffset 
-  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetTitleSize" c_th2poly_gettitlesize 
-  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetTickLength" c_th2poly_getticklength 
-  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBarOffset" c_th2poly_getbaroffset 
-  :: (Ptr RawTH2Poly) -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBarWidth" c_th2poly_getbarwidth 
-  :: (Ptr RawTH2Poly) -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetContour" c_th2poly_getcontour 
-  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_GetContourLevel" c_th2poly_getcontourlevel 
-  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetContourLevelPad" c_th2poly_getcontourlevelpad 
-  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBin" c_th2poly_getbin 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_GetBinCenter" c_th2poly_getbincenter 
-  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBinContent1" c_th2poly_getbincontent1 
-  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBinContent2" c_th2poly_getbincontent2 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBinContent3" c_th2poly_getbincontent3 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBinError1" c_th2poly_getbinerror1 
-  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBinError2" c_th2poly_getbinerror2 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBinError3" c_th2poly_getbinerror3 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBinLowEdge" c_th2poly_getbinlowedge 
-  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetBinWidth" c_th2poly_getbinwidth 
-  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetCellContent" c_th2poly_getcellcontent 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_GetCellError" c_th2poly_getcellerror 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2Poly_Scale" c_th2poly_scale 
-  :: (Ptr RawTH2Poly) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetAxisColor" c_th2poly_setaxiscolor 
-  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetAxisRange" c_th2poly_setaxisrange 
-  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetBarOffset" c_th2poly_setbaroffset 
-  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetBarWidth" c_th2poly_setbarwidth 
-  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBinContent1" c_th2poly_setbincontent1 
-  :: (Ptr RawTH2Poly) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBinContent2" c_th2poly_setbincontent2 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBinContent3" c_th2poly_setbincontent3 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBinError1" c_th2poly_setbinerror1 
-  :: (Ptr RawTH2Poly) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBinError2" c_th2poly_setbinerror2 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBinError3" c_th2poly_setbinerror3 
-  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBins1" c_th2poly_setbins1 
-  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBins2" c_th2poly_setbins2 
-  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_setBins3" c_th2poly_setbins3 
-  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetMaximum" c_th2poly_setmaximum 
-  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetMinimum" c_th2poly_setminimum 
-  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetXTitle" c_th2poly_setxtitle 
-  :: (Ptr RawTH2Poly) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetYTitle" c_th2poly_setytitle 
-  :: (Ptr RawTH2Poly) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetZTitle" c_th2poly_setztitle 
-  :: (Ptr RawTH2Poly) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetTitle" c_th2poly_settitle 
-  :: (Ptr RawTH2Poly) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetLineColor" c_th2poly_setlinecolor 
-  :: (Ptr RawTH2Poly) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetFillColor" c_th2poly_setfillcolor 
-  :: (Ptr RawTH2Poly) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_SetFillStyle" c_th2poly_setfillstyle 
-  :: (Ptr RawTH2Poly) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2Poly_GetName" c_th2poly_getname 
-  :: (Ptr RawTH2Poly) -> IO CString
-foreign import ccall "HROOT.h TH2Poly_Draw" c_th2poly_draw 
-  :: (Ptr RawTH2Poly) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_FindObject" c_th2poly_findobject 
-  :: (Ptr RawTH2Poly) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH2Poly_SaveAs" c_th2poly_saveas 
-  :: (Ptr RawTH2Poly) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_Write" c_th2poly_write 
-  :: (Ptr RawTH2Poly) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2Poly_IsA" c_th2poly_isa 
-  :: (Ptr RawTH2Poly) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH2Poly_printObj" c_th2poly_printobj 
-  :: (Ptr RawTH2Poly) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2Poly_delete" c_th2poly_delete 
-  :: (Ptr RawTH2Poly) -> IO ()
-
-foreign import ccall "HROOT.h TH2S_fill2" c_th2s_fill2 
-  :: (Ptr RawTH2S) -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2S_fillRandom2" c_th2s_fillrandom2 
-  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_findFirstBinAbove2" c_th2s_findfirstbinabove2 
-  :: (Ptr RawTH2S) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2S_findLastBinAbove2" c_th2s_findlastbinabove2 
-  :: (Ptr RawTH2S) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2S_FitSlicesX" c_th2s_fitslicesx 
-  :: (Ptr RawTH2S) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2S_FitSlicesY" c_th2s_fitslicesy 
-  :: (Ptr RawTH2S) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
-foreign import ccall "HROOT.h TH2S_GetCorrelationFactor" c_th2s_getcorrelationfactor 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetCovariance" c_th2s_getcovariance 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetStats" c_th2s_getstats 
-  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2S_Integral" c_th2s_integral 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2S_Interpolate" c_th2s_interpolate 
-  :: (Ptr RawTH2S) -> CDouble -> CDouble -> CDouble -> IO CDouble
-foreign import ccall "HROOT.h TH2S_KolmogorovTest" c_th2s_kolmogorovtest 
-  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2S_RebinX" c_th2s_rebinx 
-  :: (Ptr RawTH2S) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2S_RebinY" c_th2s_rebiny 
-  :: (Ptr RawTH2S) -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2S_Rebin2D" c_th2s_rebin2d 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
-foreign import ccall "HROOT.h TH2S_PutStats" c_th2s_putstats 
-  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2S_Reset" c_th2s_reset 
-  :: (Ptr RawTH2S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_SetShowProjectionX" c_th2s_setshowprojectionx 
-  :: (Ptr RawTH2S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_SetShowProjectionY" c_th2s_setshowprojectiony 
-  :: (Ptr RawTH2S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_ShowBackground" c_th2s_showbackground 
-  :: (Ptr RawTH2S) -> CInt -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2S_ShowPeaks" c_th2s_showpeaks 
-  :: (Ptr RawTH2S) -> CDouble -> CString -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2S_Smooth" c_th2s_smooth 
-  :: (Ptr RawTH2S) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_Add" c_th2s_add 
-  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_AddBinContent" c_th2s_addbincontent 
-  :: (Ptr RawTH2S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_Chi2Test" c_th2s_chi2test 
-  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH2S_ComputeIntegral" c_th2s_computeintegral 
-  :: (Ptr RawTH2S) -> IO CDouble
-foreign import ccall "HROOT.h TH2S_DirectoryAutoAdd" c_th2s_directoryautoadd 
-  :: (Ptr RawTH2S) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH2S_DistancetoPrimitive" c_th2s_distancetoprimitive 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2S_Divide" c_th2s_divide 
-  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_DrawCopy" c_th2s_drawcopy 
-  :: (Ptr RawTH2S) -> CString -> IO (Ptr RawTH2S)
-foreign import ccall "HROOT.h TH2S_DrawNormalized" c_th2s_drawnormalized 
-  :: (Ptr RawTH2S) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2S_DrawPanel" c_th2s_drawpanel 
-  :: (Ptr RawTH2S) -> IO ()
-foreign import ccall "HROOT.h TH2S_BufferEmpty" c_th2s_bufferempty 
-  :: (Ptr RawTH2S) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2S_Eval" c_th2s_eval 
-  :: (Ptr RawTH2S) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_ExecuteEvent" c_th2s_executeevent 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_FFT" c_th2s_fft 
-  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH2S_fill1" c_th2s_fill1 
-  :: (Ptr RawTH2S) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2S_FillN" c_th2s_filln 
-  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_FillRandom" c_th2s_fillrandom 
-  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_FindBin" c_th2s_findbin 
-  :: (Ptr RawTH2S) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2S_FindFixBin" c_th2s_findfixbin 
-  :: (Ptr RawTH2S) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH2S_FindFirstBinAbove" c_th2s_findfirstbinabove 
-  :: (Ptr RawTH2S) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2S_FindLastBinAbove" c_th2s_findlastbinabove 
-  :: (Ptr RawTH2S) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2S_FitPanel" c_th2s_fitpanel 
-  :: (Ptr RawTH2S) -> IO ()
-foreign import ccall "HROOT.h TH2S_GetNdivisions" c_th2s_getndivisions 
-  :: (Ptr RawTH2S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2S_GetAxisColor" c_th2s_getaxiscolor 
-  :: (Ptr RawTH2S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2S_GetLabelColor" c_th2s_getlabelcolor 
-  :: (Ptr RawTH2S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2S_GetLabelFont" c_th2s_getlabelfont 
-  :: (Ptr RawTH2S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2S_GetLabelOffset" c_th2s_getlabeloffset 
-  :: (Ptr RawTH2S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetLabelSize" c_th2s_getlabelsize 
-  :: (Ptr RawTH2S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetTitleFont" c_th2s_gettitlefont 
-  :: (Ptr RawTH2S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH2S_GetTitleOffset" c_th2s_gettitleoffset 
-  :: (Ptr RawTH2S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetTitleSize" c_th2s_gettitlesize 
-  :: (Ptr RawTH2S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetTickLength" c_th2s_getticklength 
-  :: (Ptr RawTH2S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBarOffset" c_th2s_getbaroffset 
-  :: (Ptr RawTH2S) -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBarWidth" c_th2s_getbarwidth 
-  :: (Ptr RawTH2S) -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetContour" c_th2s_getcontour 
-  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH2S_GetContourLevel" c_th2s_getcontourlevel 
-  :: (Ptr RawTH2S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetContourLevelPad" c_th2s_getcontourlevelpad 
-  :: (Ptr RawTH2S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBin" c_th2s_getbin 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2S_GetBinCenter" c_th2s_getbincenter 
-  :: (Ptr RawTH2S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBinContent1" c_th2s_getbincontent1 
-  :: (Ptr RawTH2S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBinContent2" c_th2s_getbincontent2 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBinContent3" c_th2s_getbincontent3 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBinError1" c_th2s_getbinerror1 
-  :: (Ptr RawTH2S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBinError2" c_th2s_getbinerror2 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBinError3" c_th2s_getbinerror3 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBinLowEdge" c_th2s_getbinlowedge 
-  :: (Ptr RawTH2S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetBinWidth" c_th2s_getbinwidth 
-  :: (Ptr RawTH2S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetCellContent" c_th2s_getcellcontent 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_GetCellError" c_th2s_getcellerror 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH2S_Scale" c_th2s_scale 
-  :: (Ptr RawTH2S) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_SetAxisColor" c_th2s_setaxiscolor 
-  :: (Ptr RawTH2S) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_SetAxisRange" c_th2s_setaxisrange 
-  :: (Ptr RawTH2S) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_SetBarOffset" c_th2s_setbaroffset 
-  :: (Ptr RawTH2S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_SetBarWidth" c_th2s_setbarwidth 
-  :: (Ptr RawTH2S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_setBinContent1" c_th2s_setbincontent1 
-  :: (Ptr RawTH2S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_setBinContent2" c_th2s_setbincontent2 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_setBinContent3" c_th2s_setbincontent3 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_setBinError1" c_th2s_setbinerror1 
-  :: (Ptr RawTH2S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_setBinError2" c_th2s_setbinerror2 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_setBinError3" c_th2s_setbinerror3 
-  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_setBins1" c_th2s_setbins1 
-  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2S_setBins2" c_th2s_setbins2 
-  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2S_setBins3" c_th2s_setbins3 
-  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH2S_SetMaximum" c_th2s_setmaximum 
-  :: (Ptr RawTH2S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_SetMinimum" c_th2s_setminimum 
-  :: (Ptr RawTH2S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH2S_SetXTitle" c_th2s_setxtitle 
-  :: (Ptr RawTH2S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_SetYTitle" c_th2s_setytitle 
-  :: (Ptr RawTH2S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_SetZTitle" c_th2s_setztitle 
-  :: (Ptr RawTH2S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_SetTitle" c_th2s_settitle 
-  :: (Ptr RawTH2S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_SetLineColor" c_th2s_setlinecolor 
-  :: (Ptr RawTH2S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_SetFillColor" c_th2s_setfillcolor 
-  :: (Ptr RawTH2S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_SetFillStyle" c_th2s_setfillstyle 
-  :: (Ptr RawTH2S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH2S_GetName" c_th2s_getname 
-  :: (Ptr RawTH2S) -> IO CString
-foreign import ccall "HROOT.h TH2S_Draw" c_th2s_draw 
-  :: (Ptr RawTH2S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_FindObject" c_th2s_findobject 
-  :: (Ptr RawTH2S) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH2S_SaveAs" c_th2s_saveas 
-  :: (Ptr RawTH2S) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_Write" c_th2s_write 
-  :: (Ptr RawTH2S) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH2S_IsA" c_th2s_isa 
-  :: (Ptr RawTH2S) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH2S_printObj" c_th2s_printobj 
-  :: (Ptr RawTH2S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH2S_delete" c_th2s_delete 
-  :: (Ptr RawTH2S) -> IO ()
-
-foreign import ccall "HROOT.h TH3C_Add" c_th3c_add 
-  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_AddBinContent" c_th3c_addbincontent 
-  :: (Ptr RawTH3C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_Chi2Test" c_th3c_chi2test 
-  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH3C_ComputeIntegral" c_th3c_computeintegral 
-  :: (Ptr RawTH3C) -> IO CDouble
-foreign import ccall "HROOT.h TH3C_DirectoryAutoAdd" c_th3c_directoryautoadd 
-  :: (Ptr RawTH3C) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH3C_DistancetoPrimitive" c_th3c_distancetoprimitive 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3C_Divide" c_th3c_divide 
-  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_DrawCopy" c_th3c_drawcopy 
-  :: (Ptr RawTH3C) -> CString -> IO (Ptr RawTH3C)
-foreign import ccall "HROOT.h TH3C_DrawNormalized" c_th3c_drawnormalized 
-  :: (Ptr RawTH3C) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3C_DrawPanel" c_th3c_drawpanel 
-  :: (Ptr RawTH3C) -> IO ()
-foreign import ccall "HROOT.h TH3C_BufferEmpty" c_th3c_bufferempty 
-  :: (Ptr RawTH3C) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3C_Eval" c_th3c_eval 
-  :: (Ptr RawTH3C) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_ExecuteEvent" c_th3c_executeevent 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3C_FFT" c_th3c_fft 
-  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3C_fill1" c_th3c_fill1 
-  :: (Ptr RawTH3C) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3C_FillN" c_th3c_filln 
-  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3C_FillRandom" c_th3c_fillrandom 
-  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3C_FindBin" c_th3c_findbin 
-  :: (Ptr RawTH3C) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3C_FindFixBin" c_th3c_findfixbin 
-  :: (Ptr RawTH3C) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3C_FindFirstBinAbove" c_th3c_findfirstbinabove 
-  :: (Ptr RawTH3C) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3C_FindLastBinAbove" c_th3c_findlastbinabove 
-  :: (Ptr RawTH3C) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3C_FitPanel" c_th3c_fitpanel 
-  :: (Ptr RawTH3C) -> IO ()
-foreign import ccall "HROOT.h TH3C_GetNdivisions" c_th3c_getndivisions 
-  :: (Ptr RawTH3C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3C_GetAxisColor" c_th3c_getaxiscolor 
-  :: (Ptr RawTH3C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3C_GetLabelColor" c_th3c_getlabelcolor 
-  :: (Ptr RawTH3C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3C_GetLabelFont" c_th3c_getlabelfont 
-  :: (Ptr RawTH3C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3C_GetLabelOffset" c_th3c_getlabeloffset 
-  :: (Ptr RawTH3C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetLabelSize" c_th3c_getlabelsize 
-  :: (Ptr RawTH3C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetTitleFont" c_th3c_gettitlefont 
-  :: (Ptr RawTH3C) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3C_GetTitleOffset" c_th3c_gettitleoffset 
-  :: (Ptr RawTH3C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetTitleSize" c_th3c_gettitlesize 
-  :: (Ptr RawTH3C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetTickLength" c_th3c_getticklength 
-  :: (Ptr RawTH3C) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBarOffset" c_th3c_getbaroffset 
-  :: (Ptr RawTH3C) -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBarWidth" c_th3c_getbarwidth 
-  :: (Ptr RawTH3C) -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetContour" c_th3c_getcontour 
-  :: (Ptr RawTH3C) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH3C_GetContourLevel" c_th3c_getcontourlevel 
-  :: (Ptr RawTH3C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetContourLevelPad" c_th3c_getcontourlevelpad 
-  :: (Ptr RawTH3C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBin" c_th3c_getbin 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3C_GetBinCenter" c_th3c_getbincenter 
-  :: (Ptr RawTH3C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBinContent1" c_th3c_getbincontent1 
-  :: (Ptr RawTH3C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBinContent2" c_th3c_getbincontent2 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBinContent3" c_th3c_getbincontent3 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBinError1" c_th3c_getbinerror1 
-  :: (Ptr RawTH3C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBinError2" c_th3c_getbinerror2 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBinError3" c_th3c_getbinerror3 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBinLowEdge" c_th3c_getbinlowedge 
-  :: (Ptr RawTH3C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetBinWidth" c_th3c_getbinwidth 
-  :: (Ptr RawTH3C) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetCellContent" c_th3c_getcellcontent 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_GetCellError" c_th3c_getcellerror 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3C_Scale" c_th3c_scale 
-  :: (Ptr RawTH3C) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_SetAxisColor" c_th3c_setaxiscolor 
-  :: (Ptr RawTH3C) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_SetAxisRange" c_th3c_setaxisrange 
-  :: (Ptr RawTH3C) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_SetBarOffset" c_th3c_setbaroffset 
-  :: (Ptr RawTH3C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_SetBarWidth" c_th3c_setbarwidth 
-  :: (Ptr RawTH3C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_setBinContent1" c_th3c_setbincontent1 
-  :: (Ptr RawTH3C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_setBinContent2" c_th3c_setbincontent2 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_setBinContent3" c_th3c_setbincontent3 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_setBinError1" c_th3c_setbinerror1 
-  :: (Ptr RawTH3C) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_setBinError2" c_th3c_setbinerror2 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_setBinError3" c_th3c_setbinerror3 
-  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_setBins1" c_th3c_setbins1 
-  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3C_setBins2" c_th3c_setbins2 
-  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3C_setBins3" c_th3c_setbins3 
-  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3C_SetMaximum" c_th3c_setmaximum 
-  :: (Ptr RawTH3C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_SetMinimum" c_th3c_setminimum 
-  :: (Ptr RawTH3C) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3C_SetXTitle" c_th3c_setxtitle 
-  :: (Ptr RawTH3C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_SetYTitle" c_th3c_setytitle 
-  :: (Ptr RawTH3C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_SetZTitle" c_th3c_setztitle 
-  :: (Ptr RawTH3C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_SetTitle" c_th3c_settitle 
-  :: (Ptr RawTH3C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_SetLineColor" c_th3c_setlinecolor 
-  :: (Ptr RawTH3C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3C_SetFillColor" c_th3c_setfillcolor 
-  :: (Ptr RawTH3C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3C_SetFillStyle" c_th3c_setfillstyle 
-  :: (Ptr RawTH3C) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3C_GetName" c_th3c_getname 
-  :: (Ptr RawTH3C) -> IO CString
-foreign import ccall "HROOT.h TH3C_Draw" c_th3c_draw 
-  :: (Ptr RawTH3C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_FindObject" c_th3c_findobject 
-  :: (Ptr RawTH3C) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH3C_SaveAs" c_th3c_saveas 
-  :: (Ptr RawTH3C) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_Write" c_th3c_write 
-  :: (Ptr RawTH3C) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3C_IsA" c_th3c_isa 
-  :: (Ptr RawTH3C) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH3C_printObj" c_th3c_printobj 
-  :: (Ptr RawTH3C) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3C_delete" c_th3c_delete 
-  :: (Ptr RawTH3C) -> IO ()
-
-foreign import ccall "HROOT.h TH3D_Add" c_th3d_add 
-  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_AddBinContent" c_th3d_addbincontent 
-  :: (Ptr RawTH3D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_Chi2Test" c_th3d_chi2test 
-  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH3D_ComputeIntegral" c_th3d_computeintegral 
-  :: (Ptr RawTH3D) -> IO CDouble
-foreign import ccall "HROOT.h TH3D_DirectoryAutoAdd" c_th3d_directoryautoadd 
-  :: (Ptr RawTH3D) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH3D_DistancetoPrimitive" c_th3d_distancetoprimitive 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3D_Divide" c_th3d_divide 
-  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_DrawCopy" c_th3d_drawcopy 
-  :: (Ptr RawTH3D) -> CString -> IO (Ptr RawTH3D)
-foreign import ccall "HROOT.h TH3D_DrawNormalized" c_th3d_drawnormalized 
-  :: (Ptr RawTH3D) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3D_DrawPanel" c_th3d_drawpanel 
-  :: (Ptr RawTH3D) -> IO ()
-foreign import ccall "HROOT.h TH3D_BufferEmpty" c_th3d_bufferempty 
-  :: (Ptr RawTH3D) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3D_Eval" c_th3d_eval 
-  :: (Ptr RawTH3D) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_ExecuteEvent" c_th3d_executeevent 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3D_FFT" c_th3d_fft 
-  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3D_fill1" c_th3d_fill1 
-  :: (Ptr RawTH3D) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3D_FillN" c_th3d_filln 
-  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3D_FillRandom" c_th3d_fillrandom 
-  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3D_FindBin" c_th3d_findbin 
-  :: (Ptr RawTH3D) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3D_FindFixBin" c_th3d_findfixbin 
-  :: (Ptr RawTH3D) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3D_FindFirstBinAbove" c_th3d_findfirstbinabove 
-  :: (Ptr RawTH3D) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3D_FindLastBinAbove" c_th3d_findlastbinabove 
-  :: (Ptr RawTH3D) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3D_FitPanel" c_th3d_fitpanel 
-  :: (Ptr RawTH3D) -> IO ()
-foreign import ccall "HROOT.h TH3D_GetNdivisions" c_th3d_getndivisions 
-  :: (Ptr RawTH3D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3D_GetAxisColor" c_th3d_getaxiscolor 
-  :: (Ptr RawTH3D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3D_GetLabelColor" c_th3d_getlabelcolor 
-  :: (Ptr RawTH3D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3D_GetLabelFont" c_th3d_getlabelfont 
-  :: (Ptr RawTH3D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3D_GetLabelOffset" c_th3d_getlabeloffset 
-  :: (Ptr RawTH3D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetLabelSize" c_th3d_getlabelsize 
-  :: (Ptr RawTH3D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetTitleFont" c_th3d_gettitlefont 
-  :: (Ptr RawTH3D) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3D_GetTitleOffset" c_th3d_gettitleoffset 
-  :: (Ptr RawTH3D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetTitleSize" c_th3d_gettitlesize 
-  :: (Ptr RawTH3D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetTickLength" c_th3d_getticklength 
-  :: (Ptr RawTH3D) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBarOffset" c_th3d_getbaroffset 
-  :: (Ptr RawTH3D) -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBarWidth" c_th3d_getbarwidth 
-  :: (Ptr RawTH3D) -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetContour" c_th3d_getcontour 
-  :: (Ptr RawTH3D) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH3D_GetContourLevel" c_th3d_getcontourlevel 
-  :: (Ptr RawTH3D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetContourLevelPad" c_th3d_getcontourlevelpad 
-  :: (Ptr RawTH3D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBin" c_th3d_getbin 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3D_GetBinCenter" c_th3d_getbincenter 
-  :: (Ptr RawTH3D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBinContent1" c_th3d_getbincontent1 
-  :: (Ptr RawTH3D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBinContent2" c_th3d_getbincontent2 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBinContent3" c_th3d_getbincontent3 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBinError1" c_th3d_getbinerror1 
-  :: (Ptr RawTH3D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBinError2" c_th3d_getbinerror2 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBinError3" c_th3d_getbinerror3 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBinLowEdge" c_th3d_getbinlowedge 
-  :: (Ptr RawTH3D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetBinWidth" c_th3d_getbinwidth 
-  :: (Ptr RawTH3D) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetCellContent" c_th3d_getcellcontent 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_GetCellError" c_th3d_getcellerror 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3D_Scale" c_th3d_scale 
-  :: (Ptr RawTH3D) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_SetAxisColor" c_th3d_setaxiscolor 
-  :: (Ptr RawTH3D) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_SetAxisRange" c_th3d_setaxisrange 
-  :: (Ptr RawTH3D) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_SetBarOffset" c_th3d_setbaroffset 
-  :: (Ptr RawTH3D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_SetBarWidth" c_th3d_setbarwidth 
-  :: (Ptr RawTH3D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_setBinContent1" c_th3d_setbincontent1 
-  :: (Ptr RawTH3D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_setBinContent2" c_th3d_setbincontent2 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_setBinContent3" c_th3d_setbincontent3 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_setBinError1" c_th3d_setbinerror1 
-  :: (Ptr RawTH3D) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_setBinError2" c_th3d_setbinerror2 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_setBinError3" c_th3d_setbinerror3 
-  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_setBins1" c_th3d_setbins1 
-  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3D_setBins2" c_th3d_setbins2 
-  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3D_setBins3" c_th3d_setbins3 
-  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3D_SetMaximum" c_th3d_setmaximum 
-  :: (Ptr RawTH3D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_SetMinimum" c_th3d_setminimum 
-  :: (Ptr RawTH3D) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3D_SetXTitle" c_th3d_setxtitle 
-  :: (Ptr RawTH3D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_SetYTitle" c_th3d_setytitle 
-  :: (Ptr RawTH3D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_SetZTitle" c_th3d_setztitle 
-  :: (Ptr RawTH3D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_SetTitle" c_th3d_settitle 
-  :: (Ptr RawTH3D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_SetLineColor" c_th3d_setlinecolor 
-  :: (Ptr RawTH3D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3D_SetFillColor" c_th3d_setfillcolor 
-  :: (Ptr RawTH3D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3D_SetFillStyle" c_th3d_setfillstyle 
-  :: (Ptr RawTH3D) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3D_GetName" c_th3d_getname 
-  :: (Ptr RawTH3D) -> IO CString
-foreign import ccall "HROOT.h TH3D_Draw" c_th3d_draw 
-  :: (Ptr RawTH3D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_FindObject" c_th3d_findobject 
-  :: (Ptr RawTH3D) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH3D_SaveAs" c_th3d_saveas 
-  :: (Ptr RawTH3D) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_Write" c_th3d_write 
-  :: (Ptr RawTH3D) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3D_IsA" c_th3d_isa 
-  :: (Ptr RawTH3D) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH3D_printObj" c_th3d_printobj 
-  :: (Ptr RawTH3D) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3D_delete" c_th3d_delete 
-  :: (Ptr RawTH3D) -> IO ()
-
-foreign import ccall "HROOT.h TH3F_Add" c_th3f_add 
-  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_AddBinContent" c_th3f_addbincontent 
-  :: (Ptr RawTH3F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_Chi2Test" c_th3f_chi2test 
-  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH3F_ComputeIntegral" c_th3f_computeintegral 
-  :: (Ptr RawTH3F) -> IO CDouble
-foreign import ccall "HROOT.h TH3F_DirectoryAutoAdd" c_th3f_directoryautoadd 
-  :: (Ptr RawTH3F) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH3F_DistancetoPrimitive" c_th3f_distancetoprimitive 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3F_Divide" c_th3f_divide 
-  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_DrawCopy" c_th3f_drawcopy 
-  :: (Ptr RawTH3F) -> CString -> IO (Ptr RawTH3F)
-foreign import ccall "HROOT.h TH3F_DrawNormalized" c_th3f_drawnormalized 
-  :: (Ptr RawTH3F) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3F_DrawPanel" c_th3f_drawpanel 
-  :: (Ptr RawTH3F) -> IO ()
-foreign import ccall "HROOT.h TH3F_BufferEmpty" c_th3f_bufferempty 
-  :: (Ptr RawTH3F) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3F_Eval" c_th3f_eval 
-  :: (Ptr RawTH3F) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_ExecuteEvent" c_th3f_executeevent 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3F_FFT" c_th3f_fft 
-  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3F_fill1" c_th3f_fill1 
-  :: (Ptr RawTH3F) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3F_FillN" c_th3f_filln 
-  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3F_FillRandom" c_th3f_fillrandom 
-  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3F_FindBin" c_th3f_findbin 
-  :: (Ptr RawTH3F) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3F_FindFixBin" c_th3f_findfixbin 
-  :: (Ptr RawTH3F) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3F_FindFirstBinAbove" c_th3f_findfirstbinabove 
-  :: (Ptr RawTH3F) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3F_FindLastBinAbove" c_th3f_findlastbinabove 
-  :: (Ptr RawTH3F) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3F_FitPanel" c_th3f_fitpanel 
-  :: (Ptr RawTH3F) -> IO ()
-foreign import ccall "HROOT.h TH3F_GetNdivisions" c_th3f_getndivisions 
-  :: (Ptr RawTH3F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3F_GetAxisColor" c_th3f_getaxiscolor 
-  :: (Ptr RawTH3F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3F_GetLabelColor" c_th3f_getlabelcolor 
-  :: (Ptr RawTH3F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3F_GetLabelFont" c_th3f_getlabelfont 
-  :: (Ptr RawTH3F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3F_GetLabelOffset" c_th3f_getlabeloffset 
-  :: (Ptr RawTH3F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetLabelSize" c_th3f_getlabelsize 
-  :: (Ptr RawTH3F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetTitleFont" c_th3f_gettitlefont 
-  :: (Ptr RawTH3F) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3F_GetTitleOffset" c_th3f_gettitleoffset 
-  :: (Ptr RawTH3F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetTitleSize" c_th3f_gettitlesize 
-  :: (Ptr RawTH3F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetTickLength" c_th3f_getticklength 
-  :: (Ptr RawTH3F) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBarOffset" c_th3f_getbaroffset 
-  :: (Ptr RawTH3F) -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBarWidth" c_th3f_getbarwidth 
-  :: (Ptr RawTH3F) -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetContour" c_th3f_getcontour 
-  :: (Ptr RawTH3F) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH3F_GetContourLevel" c_th3f_getcontourlevel 
-  :: (Ptr RawTH3F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetContourLevelPad" c_th3f_getcontourlevelpad 
-  :: (Ptr RawTH3F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBin" c_th3f_getbin 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3F_GetBinCenter" c_th3f_getbincenter 
-  :: (Ptr RawTH3F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBinContent1" c_th3f_getbincontent1 
-  :: (Ptr RawTH3F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBinContent2" c_th3f_getbincontent2 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBinContent3" c_th3f_getbincontent3 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBinError1" c_th3f_getbinerror1 
-  :: (Ptr RawTH3F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBinError2" c_th3f_getbinerror2 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBinError3" c_th3f_getbinerror3 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBinLowEdge" c_th3f_getbinlowedge 
-  :: (Ptr RawTH3F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetBinWidth" c_th3f_getbinwidth 
-  :: (Ptr RawTH3F) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetCellContent" c_th3f_getcellcontent 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_GetCellError" c_th3f_getcellerror 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3F_Scale" c_th3f_scale 
-  :: (Ptr RawTH3F) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_SetAxisColor" c_th3f_setaxiscolor 
-  :: (Ptr RawTH3F) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_SetAxisRange" c_th3f_setaxisrange 
-  :: (Ptr RawTH3F) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_SetBarOffset" c_th3f_setbaroffset 
-  :: (Ptr RawTH3F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_SetBarWidth" c_th3f_setbarwidth 
-  :: (Ptr RawTH3F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_setBinContent1" c_th3f_setbincontent1 
-  :: (Ptr RawTH3F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_setBinContent2" c_th3f_setbincontent2 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_setBinContent3" c_th3f_setbincontent3 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_setBinError1" c_th3f_setbinerror1 
-  :: (Ptr RawTH3F) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_setBinError2" c_th3f_setbinerror2 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_setBinError3" c_th3f_setbinerror3 
-  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_setBins1" c_th3f_setbins1 
-  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3F_setBins2" c_th3f_setbins2 
-  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3F_setBins3" c_th3f_setbins3 
-  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3F_SetMaximum" c_th3f_setmaximum 
-  :: (Ptr RawTH3F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_SetMinimum" c_th3f_setminimum 
-  :: (Ptr RawTH3F) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3F_SetXTitle" c_th3f_setxtitle 
-  :: (Ptr RawTH3F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_SetYTitle" c_th3f_setytitle 
-  :: (Ptr RawTH3F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_SetZTitle" c_th3f_setztitle 
-  :: (Ptr RawTH3F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_SetTitle" c_th3f_settitle 
-  :: (Ptr RawTH3F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_SetLineColor" c_th3f_setlinecolor 
-  :: (Ptr RawTH3F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3F_SetFillColor" c_th3f_setfillcolor 
-  :: (Ptr RawTH3F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3F_SetFillStyle" c_th3f_setfillstyle 
-  :: (Ptr RawTH3F) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3F_GetName" c_th3f_getname 
-  :: (Ptr RawTH3F) -> IO CString
-foreign import ccall "HROOT.h TH3F_Draw" c_th3f_draw 
-  :: (Ptr RawTH3F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_FindObject" c_th3f_findobject 
-  :: (Ptr RawTH3F) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH3F_SaveAs" c_th3f_saveas 
-  :: (Ptr RawTH3F) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_Write" c_th3f_write 
-  :: (Ptr RawTH3F) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3F_IsA" c_th3f_isa 
-  :: (Ptr RawTH3F) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH3F_printObj" c_th3f_printobj 
-  :: (Ptr RawTH3F) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3F_delete" c_th3f_delete 
-  :: (Ptr RawTH3F) -> IO ()
-
-foreign import ccall "HROOT.h TH3I_Add" c_th3i_add 
-  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_AddBinContent" c_th3i_addbincontent 
-  :: (Ptr RawTH3I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_Chi2Test" c_th3i_chi2test 
-  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH3I_ComputeIntegral" c_th3i_computeintegral 
-  :: (Ptr RawTH3I) -> IO CDouble
-foreign import ccall "HROOT.h TH3I_DirectoryAutoAdd" c_th3i_directoryautoadd 
-  :: (Ptr RawTH3I) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH3I_DistancetoPrimitive" c_th3i_distancetoprimitive 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3I_Divide" c_th3i_divide 
-  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_DrawCopy" c_th3i_drawcopy 
-  :: (Ptr RawTH3I) -> CString -> IO (Ptr RawTH3I)
-foreign import ccall "HROOT.h TH3I_DrawNormalized" c_th3i_drawnormalized 
-  :: (Ptr RawTH3I) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3I_DrawPanel" c_th3i_drawpanel 
-  :: (Ptr RawTH3I) -> IO ()
-foreign import ccall "HROOT.h TH3I_BufferEmpty" c_th3i_bufferempty 
-  :: (Ptr RawTH3I) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3I_Eval" c_th3i_eval 
-  :: (Ptr RawTH3I) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_ExecuteEvent" c_th3i_executeevent 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3I_FFT" c_th3i_fft 
-  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3I_fill1" c_th3i_fill1 
-  :: (Ptr RawTH3I) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3I_FillN" c_th3i_filln 
-  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3I_FillRandom" c_th3i_fillrandom 
-  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3I_FindBin" c_th3i_findbin 
-  :: (Ptr RawTH3I) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3I_FindFixBin" c_th3i_findfixbin 
-  :: (Ptr RawTH3I) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3I_FindFirstBinAbove" c_th3i_findfirstbinabove 
-  :: (Ptr RawTH3I) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3I_FindLastBinAbove" c_th3i_findlastbinabove 
-  :: (Ptr RawTH3I) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3I_FitPanel" c_th3i_fitpanel 
-  :: (Ptr RawTH3I) -> IO ()
-foreign import ccall "HROOT.h TH3I_GetNdivisions" c_th3i_getndivisions 
-  :: (Ptr RawTH3I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3I_GetAxisColor" c_th3i_getaxiscolor 
-  :: (Ptr RawTH3I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3I_GetLabelColor" c_th3i_getlabelcolor 
-  :: (Ptr RawTH3I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3I_GetLabelFont" c_th3i_getlabelfont 
-  :: (Ptr RawTH3I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3I_GetLabelOffset" c_th3i_getlabeloffset 
-  :: (Ptr RawTH3I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetLabelSize" c_th3i_getlabelsize 
-  :: (Ptr RawTH3I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetTitleFont" c_th3i_gettitlefont 
-  :: (Ptr RawTH3I) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3I_GetTitleOffset" c_th3i_gettitleoffset 
-  :: (Ptr RawTH3I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetTitleSize" c_th3i_gettitlesize 
-  :: (Ptr RawTH3I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetTickLength" c_th3i_getticklength 
-  :: (Ptr RawTH3I) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBarOffset" c_th3i_getbaroffset 
-  :: (Ptr RawTH3I) -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBarWidth" c_th3i_getbarwidth 
-  :: (Ptr RawTH3I) -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetContour" c_th3i_getcontour 
-  :: (Ptr RawTH3I) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH3I_GetContourLevel" c_th3i_getcontourlevel 
-  :: (Ptr RawTH3I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetContourLevelPad" c_th3i_getcontourlevelpad 
-  :: (Ptr RawTH3I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBin" c_th3i_getbin 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3I_GetBinCenter" c_th3i_getbincenter 
-  :: (Ptr RawTH3I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBinContent1" c_th3i_getbincontent1 
-  :: (Ptr RawTH3I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBinContent2" c_th3i_getbincontent2 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBinContent3" c_th3i_getbincontent3 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBinError1" c_th3i_getbinerror1 
-  :: (Ptr RawTH3I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBinError2" c_th3i_getbinerror2 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBinError3" c_th3i_getbinerror3 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBinLowEdge" c_th3i_getbinlowedge 
-  :: (Ptr RawTH3I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetBinWidth" c_th3i_getbinwidth 
-  :: (Ptr RawTH3I) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetCellContent" c_th3i_getcellcontent 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_GetCellError" c_th3i_getcellerror 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3I_Scale" c_th3i_scale 
-  :: (Ptr RawTH3I) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_SetAxisColor" c_th3i_setaxiscolor 
-  :: (Ptr RawTH3I) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_SetAxisRange" c_th3i_setaxisrange 
-  :: (Ptr RawTH3I) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_SetBarOffset" c_th3i_setbaroffset 
-  :: (Ptr RawTH3I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_SetBarWidth" c_th3i_setbarwidth 
-  :: (Ptr RawTH3I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_setBinContent1" c_th3i_setbincontent1 
-  :: (Ptr RawTH3I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_setBinContent2" c_th3i_setbincontent2 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_setBinContent3" c_th3i_setbincontent3 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_setBinError1" c_th3i_setbinerror1 
-  :: (Ptr RawTH3I) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_setBinError2" c_th3i_setbinerror2 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_setBinError3" c_th3i_setbinerror3 
-  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_setBins1" c_th3i_setbins1 
-  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3I_setBins2" c_th3i_setbins2 
-  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3I_setBins3" c_th3i_setbins3 
-  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3I_SetMaximum" c_th3i_setmaximum 
-  :: (Ptr RawTH3I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_SetMinimum" c_th3i_setminimum 
-  :: (Ptr RawTH3I) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3I_SetXTitle" c_th3i_setxtitle 
-  :: (Ptr RawTH3I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_SetYTitle" c_th3i_setytitle 
-  :: (Ptr RawTH3I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_SetZTitle" c_th3i_setztitle 
-  :: (Ptr RawTH3I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_SetTitle" c_th3i_settitle 
-  :: (Ptr RawTH3I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_SetLineColor" c_th3i_setlinecolor 
-  :: (Ptr RawTH3I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3I_SetFillColor" c_th3i_setfillcolor 
-  :: (Ptr RawTH3I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3I_SetFillStyle" c_th3i_setfillstyle 
-  :: (Ptr RawTH3I) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3I_GetName" c_th3i_getname 
-  :: (Ptr RawTH3I) -> IO CString
-foreign import ccall "HROOT.h TH3I_Draw" c_th3i_draw 
-  :: (Ptr RawTH3I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_FindObject" c_th3i_findobject 
-  :: (Ptr RawTH3I) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH3I_SaveAs" c_th3i_saveas 
-  :: (Ptr RawTH3I) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_Write" c_th3i_write 
-  :: (Ptr RawTH3I) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3I_IsA" c_th3i_isa 
-  :: (Ptr RawTH3I) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH3I_printObj" c_th3i_printobj 
-  :: (Ptr RawTH3I) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3I_delete" c_th3i_delete 
-  :: (Ptr RawTH3I) -> IO ()
-
-foreign import ccall "HROOT.h TH3S_Add" c_th3s_add 
-  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_AddBinContent" c_th3s_addbincontent 
-  :: (Ptr RawTH3S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_Chi2Test" c_th3s_chi2test 
-  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
-foreign import ccall "HROOT.h TH3S_ComputeIntegral" c_th3s_computeintegral 
-  :: (Ptr RawTH3S) -> IO CDouble
-foreign import ccall "HROOT.h TH3S_DirectoryAutoAdd" c_th3s_directoryautoadd 
-  :: (Ptr RawTH3S) -> (Ptr RawTDirectory) -> IO ()
-foreign import ccall "HROOT.h TH3S_DistancetoPrimitive" c_th3s_distancetoprimitive 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3S_Divide" c_th3s_divide 
-  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_DrawCopy" c_th3s_drawcopy 
-  :: (Ptr RawTH3S) -> CString -> IO (Ptr RawTH3S)
-foreign import ccall "HROOT.h TH3S_DrawNormalized" c_th3s_drawnormalized 
-  :: (Ptr RawTH3S) -> CString -> CDouble -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3S_DrawPanel" c_th3s_drawpanel 
-  :: (Ptr RawTH3S) -> IO ()
-foreign import ccall "HROOT.h TH3S_BufferEmpty" c_th3s_bufferempty 
-  :: (Ptr RawTH3S) -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3S_Eval" c_th3s_eval 
-  :: (Ptr RawTH3S) -> (Ptr RawTF1) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_ExecuteEvent" c_th3s_executeevent 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3S_FFT" c_th3s_fft 
-  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
-foreign import ccall "HROOT.h TH3S_fill1" c_th3s_fill1 
-  :: (Ptr RawTH3S) -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3S_FillN" c_th3s_filln 
-  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3S_FillRandom" c_th3s_fillrandom 
-  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3S_FindBin" c_th3s_findbin 
-  :: (Ptr RawTH3S) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3S_FindFixBin" c_th3s_findfixbin 
-  :: (Ptr RawTH3S) -> CDouble -> CDouble -> CDouble -> IO CInt
-foreign import ccall "HROOT.h TH3S_FindFirstBinAbove" c_th3s_findfirstbinabove 
-  :: (Ptr RawTH3S) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3S_FindLastBinAbove" c_th3s_findlastbinabove 
-  :: (Ptr RawTH3S) -> CDouble -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3S_FitPanel" c_th3s_fitpanel 
-  :: (Ptr RawTH3S) -> IO ()
-foreign import ccall "HROOT.h TH3S_GetNdivisions" c_th3s_getndivisions 
-  :: (Ptr RawTH3S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3S_GetAxisColor" c_th3s_getaxiscolor 
-  :: (Ptr RawTH3S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3S_GetLabelColor" c_th3s_getlabelcolor 
-  :: (Ptr RawTH3S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3S_GetLabelFont" c_th3s_getlabelfont 
-  :: (Ptr RawTH3S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3S_GetLabelOffset" c_th3s_getlabeloffset 
-  :: (Ptr RawTH3S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetLabelSize" c_th3s_getlabelsize 
-  :: (Ptr RawTH3S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetTitleFont" c_th3s_gettitlefont 
-  :: (Ptr RawTH3S) -> CString -> IO CInt
-foreign import ccall "HROOT.h TH3S_GetTitleOffset" c_th3s_gettitleoffset 
-  :: (Ptr RawTH3S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetTitleSize" c_th3s_gettitlesize 
-  :: (Ptr RawTH3S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetTickLength" c_th3s_getticklength 
-  :: (Ptr RawTH3S) -> CString -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBarOffset" c_th3s_getbaroffset 
-  :: (Ptr RawTH3S) -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBarWidth" c_th3s_getbarwidth 
-  :: (Ptr RawTH3S) -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetContour" c_th3s_getcontour 
-  :: (Ptr RawTH3S) -> (Ptr CDouble) -> IO CInt
-foreign import ccall "HROOT.h TH3S_GetContourLevel" c_th3s_getcontourlevel 
-  :: (Ptr RawTH3S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetContourLevelPad" c_th3s_getcontourlevelpad 
-  :: (Ptr RawTH3S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBin" c_th3s_getbin 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3S_GetBinCenter" c_th3s_getbincenter 
-  :: (Ptr RawTH3S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBinContent1" c_th3s_getbincontent1 
-  :: (Ptr RawTH3S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBinContent2" c_th3s_getbincontent2 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBinContent3" c_th3s_getbincontent3 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBinError1" c_th3s_getbinerror1 
-  :: (Ptr RawTH3S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBinError2" c_th3s_getbinerror2 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBinError3" c_th3s_getbinerror3 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBinLowEdge" c_th3s_getbinlowedge 
-  :: (Ptr RawTH3S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetBinWidth" c_th3s_getbinwidth 
-  :: (Ptr RawTH3S) -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetCellContent" c_th3s_getcellcontent 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_GetCellError" c_th3s_getcellerror 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CDouble
-foreign import ccall "HROOT.h TH3S_Scale" c_th3s_scale 
-  :: (Ptr RawTH3S) -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_SetAxisColor" c_th3s_setaxiscolor 
-  :: (Ptr RawTH3S) -> CInt -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_SetAxisRange" c_th3s_setaxisrange 
-  :: (Ptr RawTH3S) -> CDouble -> CDouble -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_SetBarOffset" c_th3s_setbaroffset 
-  :: (Ptr RawTH3S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_SetBarWidth" c_th3s_setbarwidth 
-  :: (Ptr RawTH3S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_setBinContent1" c_th3s_setbincontent1 
-  :: (Ptr RawTH3S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_setBinContent2" c_th3s_setbincontent2 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_setBinContent3" c_th3s_setbincontent3 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_setBinError1" c_th3s_setbinerror1 
-  :: (Ptr RawTH3S) -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_setBinError2" c_th3s_setbinerror2 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_setBinError3" c_th3s_setbinerror3 
-  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_setBins1" c_th3s_setbins1 
-  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3S_setBins2" c_th3s_setbins2 
-  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3S_setBins3" c_th3s_setbins3 
-  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
-foreign import ccall "HROOT.h TH3S_SetMaximum" c_th3s_setmaximum 
-  :: (Ptr RawTH3S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_SetMinimum" c_th3s_setminimum 
-  :: (Ptr RawTH3S) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TH3S_SetXTitle" c_th3s_setxtitle 
-  :: (Ptr RawTH3S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_SetYTitle" c_th3s_setytitle 
-  :: (Ptr RawTH3S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_SetZTitle" c_th3s_setztitle 
-  :: (Ptr RawTH3S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_SetTitle" c_th3s_settitle 
-  :: (Ptr RawTH3S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_SetLineColor" c_th3s_setlinecolor 
-  :: (Ptr RawTH3S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3S_SetFillColor" c_th3s_setfillcolor 
-  :: (Ptr RawTH3S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3S_SetFillStyle" c_th3s_setfillstyle 
-  :: (Ptr RawTH3S) -> CInt -> IO ()
-foreign import ccall "HROOT.h TH3S_GetName" c_th3s_getname 
-  :: (Ptr RawTH3S) -> IO CString
-foreign import ccall "HROOT.h TH3S_Draw" c_th3s_draw 
-  :: (Ptr RawTH3S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_FindObject" c_th3s_findobject 
-  :: (Ptr RawTH3S) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TH3S_SaveAs" c_th3s_saveas 
-  :: (Ptr RawTH3S) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_Write" c_th3s_write 
-  :: (Ptr RawTH3S) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TH3S_IsA" c_th3s_isa 
-  :: (Ptr RawTH3S) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TH3S_printObj" c_th3s_printobj 
-  :: (Ptr RawTH3S) -> CString -> IO ()
-foreign import ccall "HROOT.h TH3S_delete" c_th3s_delete 
-  :: (Ptr RawTH3S) -> IO ()
-
-foreign import ccall "HROOT.h TQObject_delete" c_tqobject_delete 
-  :: (Ptr RawTQObject) -> IO ()
-
-foreign import ccall "HROOT.h TVirtualPad_GetName" c_tvirtualpad_getname 
-  :: (Ptr RawTVirtualPad) -> IO CString
-foreign import ccall "HROOT.h TVirtualPad_Draw" c_tvirtualpad_draw 
-  :: (Ptr RawTVirtualPad) -> CString -> IO ()
-foreign import ccall "HROOT.h TVirtualPad_FindObject" c_tvirtualpad_findobject 
-  :: (Ptr RawTVirtualPad) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TVirtualPad_SaveAs" c_tvirtualpad_saveas 
-  :: (Ptr RawTVirtualPad) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TVirtualPad_Write" c_tvirtualpad_write 
-  :: (Ptr RawTVirtualPad) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TVirtualPad_IsA" c_tvirtualpad_isa 
-  :: (Ptr RawTVirtualPad) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TVirtualPad_printObj" c_tvirtualpad_printobj 
-  :: (Ptr RawTVirtualPad) -> CString -> IO ()
-foreign import ccall "HROOT.h TVirtualPad_SetLineColor" c_tvirtualpad_setlinecolor 
-  :: (Ptr RawTVirtualPad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TVirtualPad_SetFillColor" c_tvirtualpad_setfillcolor 
-  :: (Ptr RawTVirtualPad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TVirtualPad_SetFillStyle" c_tvirtualpad_setfillstyle 
-  :: (Ptr RawTVirtualPad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TVirtualPad_delete" c_tvirtualpad_delete 
-  :: (Ptr RawTVirtualPad) -> IO ()
-foreign import ccall "HROOT.h TVirtualPad_GetFrame" c_tvirtualpad_getframe 
-  :: (Ptr RawTVirtualPad) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TVirtualPad_Range" c_tvirtualpad_range 
-  :: (Ptr RawTVirtualPad) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-
-foreign import ccall "HROOT.h TPad_GetFrame" c_tpad_getframe 
-  :: (Ptr RawTPad) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TPad_Range" c_tpad_range 
-  :: (Ptr RawTPad) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-foreign import ccall "HROOT.h TPad_GetName" c_tpad_getname 
-  :: (Ptr RawTPad) -> IO CString
-foreign import ccall "HROOT.h TPad_Draw" c_tpad_draw 
-  :: (Ptr RawTPad) -> CString -> IO ()
-foreign import ccall "HROOT.h TPad_FindObject" c_tpad_findobject 
-  :: (Ptr RawTPad) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TPad_SaveAs" c_tpad_saveas 
-  :: (Ptr RawTPad) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TPad_Write" c_tpad_write 
-  :: (Ptr RawTPad) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TPad_IsA" c_tpad_isa 
-  :: (Ptr RawTPad) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TPad_printObj" c_tpad_printobj 
-  :: (Ptr RawTPad) -> CString -> IO ()
-foreign import ccall "HROOT.h TPad_SetLineColor" c_tpad_setlinecolor 
-  :: (Ptr RawTPad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPad_SetFillColor" c_tpad_setfillcolor 
-  :: (Ptr RawTPad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPad_SetFillStyle" c_tpad_setfillstyle 
-  :: (Ptr RawTPad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TPad_delete" c_tpad_delete 
-  :: (Ptr RawTPad) -> IO ()
-
-foreign import ccall "HROOT.h TButton_SetTextColor" c_tbutton_settextcolor 
-  :: (Ptr RawTButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TButton_SetTextAlign" c_tbutton_settextalign 
-  :: (Ptr RawTButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TButton_SetTextSize" c_tbutton_settextsize 
-  :: (Ptr RawTButton) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TButton_GetFrame" c_tbutton_getframe 
-  :: (Ptr RawTButton) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TButton_Range" c_tbutton_range 
-  :: (Ptr RawTButton) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-foreign import ccall "HROOT.h TButton_GetName" c_tbutton_getname 
-  :: (Ptr RawTButton) -> IO CString
-foreign import ccall "HROOT.h TButton_Draw" c_tbutton_draw 
-  :: (Ptr RawTButton) -> CString -> IO ()
-foreign import ccall "HROOT.h TButton_FindObject" c_tbutton_findobject 
-  :: (Ptr RawTButton) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TButton_SaveAs" c_tbutton_saveas 
-  :: (Ptr RawTButton) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TButton_Write" c_tbutton_write 
-  :: (Ptr RawTButton) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TButton_IsA" c_tbutton_isa 
-  :: (Ptr RawTButton) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TButton_printObj" c_tbutton_printobj 
-  :: (Ptr RawTButton) -> CString -> IO ()
-foreign import ccall "HROOT.h TButton_SetLineColor" c_tbutton_setlinecolor 
-  :: (Ptr RawTButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TButton_SetFillColor" c_tbutton_setfillcolor 
-  :: (Ptr RawTButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TButton_SetFillStyle" c_tbutton_setfillstyle 
-  :: (Ptr RawTButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TButton_delete" c_tbutton_delete 
-  :: (Ptr RawTButton) -> IO ()
-
-foreign import ccall "HROOT.h TGroupButton_SetTextColor" c_tgroupbutton_settextcolor 
-  :: (Ptr RawTGroupButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGroupButton_SetTextAlign" c_tgroupbutton_settextalign 
-  :: (Ptr RawTGroupButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGroupButton_SetTextSize" c_tgroupbutton_settextsize 
-  :: (Ptr RawTGroupButton) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TGroupButton_GetFrame" c_tgroupbutton_getframe 
-  :: (Ptr RawTGroupButton) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TGroupButton_Range" c_tgroupbutton_range 
-  :: (Ptr RawTGroupButton) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-foreign import ccall "HROOT.h TGroupButton_GetName" c_tgroupbutton_getname 
-  :: (Ptr RawTGroupButton) -> IO CString
-foreign import ccall "HROOT.h TGroupButton_Draw" c_tgroupbutton_draw 
-  :: (Ptr RawTGroupButton) -> CString -> IO ()
-foreign import ccall "HROOT.h TGroupButton_FindObject" c_tgroupbutton_findobject 
-  :: (Ptr RawTGroupButton) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TGroupButton_SaveAs" c_tgroupbutton_saveas 
-  :: (Ptr RawTGroupButton) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TGroupButton_Write" c_tgroupbutton_write 
-  :: (Ptr RawTGroupButton) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TGroupButton_IsA" c_tgroupbutton_isa 
-  :: (Ptr RawTGroupButton) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TGroupButton_printObj" c_tgroupbutton_printobj 
-  :: (Ptr RawTGroupButton) -> CString -> IO ()
-foreign import ccall "HROOT.h TGroupButton_SetLineColor" c_tgroupbutton_setlinecolor 
-  :: (Ptr RawTGroupButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGroupButton_SetFillColor" c_tgroupbutton_setfillcolor 
-  :: (Ptr RawTGroupButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGroupButton_SetFillStyle" c_tgroupbutton_setfillstyle 
-  :: (Ptr RawTGroupButton) -> CInt -> IO ()
-foreign import ccall "HROOT.h TGroupButton_delete" c_tgroupbutton_delete 
-  :: (Ptr RawTGroupButton) -> IO ()
-
-foreign import ccall "HROOT.h TCanvas_GetFrame" c_tcanvas_getframe 
-  :: (Ptr RawTCanvas) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TCanvas_Range" c_tcanvas_range 
-  :: (Ptr RawTCanvas) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-foreign import ccall "HROOT.h TCanvas_GetName" c_tcanvas_getname 
-  :: (Ptr RawTCanvas) -> IO CString
-foreign import ccall "HROOT.h TCanvas_Draw" c_tcanvas_draw 
-  :: (Ptr RawTCanvas) -> CString -> IO ()
-foreign import ccall "HROOT.h TCanvas_FindObject" c_tcanvas_findobject 
-  :: (Ptr RawTCanvas) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TCanvas_SaveAs" c_tcanvas_saveas 
-  :: (Ptr RawTCanvas) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TCanvas_Write" c_tcanvas_write 
-  :: (Ptr RawTCanvas) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TCanvas_IsA" c_tcanvas_isa 
-  :: (Ptr RawTCanvas) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TCanvas_printObj" c_tcanvas_printobj 
-  :: (Ptr RawTCanvas) -> CString -> IO ()
-foreign import ccall "HROOT.h TCanvas_SetLineColor" c_tcanvas_setlinecolor 
-  :: (Ptr RawTCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCanvas_SetFillColor" c_tcanvas_setfillcolor 
-  :: (Ptr RawTCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCanvas_SetFillStyle" c_tcanvas_setfillstyle 
-  :: (Ptr RawTCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TCanvas_delete" c_tcanvas_delete 
-  :: (Ptr RawTCanvas) -> IO ()
-foreign import ccall "HROOT.h TCanvas_newTCanvas" c_tcanvas_newtcanvas 
-  :: CString -> CString -> CInt -> CInt -> IO (Ptr RawTCanvas)
-
-foreign import ccall "HROOT.h TDialogCanvas_SetTextColor" c_tdialogcanvas_settextcolor 
-  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_SetTextAlign" c_tdialogcanvas_settextalign 
-  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_SetTextSize" c_tdialogcanvas_settextsize 
-  :: (Ptr RawTDialogCanvas) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_GetFrame" c_tdialogcanvas_getframe 
-  :: (Ptr RawTDialogCanvas) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TDialogCanvas_Range" c_tdialogcanvas_range 
-  :: (Ptr RawTDialogCanvas) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_GetName" c_tdialogcanvas_getname 
-  :: (Ptr RawTDialogCanvas) -> IO CString
-foreign import ccall "HROOT.h TDialogCanvas_Draw" c_tdialogcanvas_draw 
-  :: (Ptr RawTDialogCanvas) -> CString -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_FindObject" c_tdialogcanvas_findobject 
-  :: (Ptr RawTDialogCanvas) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TDialogCanvas_SaveAs" c_tdialogcanvas_saveas 
-  :: (Ptr RawTDialogCanvas) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_Write" c_tdialogcanvas_write 
-  :: (Ptr RawTDialogCanvas) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TDialogCanvas_IsA" c_tdialogcanvas_isa 
-  :: (Ptr RawTDialogCanvas) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TDialogCanvas_printObj" c_tdialogcanvas_printobj 
-  :: (Ptr RawTDialogCanvas) -> CString -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_SetLineColor" c_tdialogcanvas_setlinecolor 
-  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_SetFillColor" c_tdialogcanvas_setfillcolor 
-  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_SetFillStyle" c_tdialogcanvas_setfillstyle 
-  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TDialogCanvas_delete" c_tdialogcanvas_delete 
-  :: (Ptr RawTDialogCanvas) -> IO ()
-
-foreign import ccall "HROOT.h TInspectCanvas_SetTextColor" c_tinspectcanvas_settextcolor 
-  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_SetTextAlign" c_tinspectcanvas_settextalign 
-  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_SetTextSize" c_tinspectcanvas_settextsize 
-  :: (Ptr RawTInspectCanvas) -> CDouble -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_GetFrame" c_tinspectcanvas_getframe 
-  :: (Ptr RawTInspectCanvas) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TInspectCanvas_Range" c_tinspectcanvas_range 
-  :: (Ptr RawTInspectCanvas) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_GetName" c_tinspectcanvas_getname 
-  :: (Ptr RawTInspectCanvas) -> IO CString
-foreign import ccall "HROOT.h TInspectCanvas_Draw" c_tinspectcanvas_draw 
-  :: (Ptr RawTInspectCanvas) -> CString -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_FindObject" c_tinspectcanvas_findobject 
-  :: (Ptr RawTInspectCanvas) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TInspectCanvas_SaveAs" c_tinspectcanvas_saveas 
-  :: (Ptr RawTInspectCanvas) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_Write" c_tinspectcanvas_write 
-  :: (Ptr RawTInspectCanvas) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TInspectCanvas_IsA" c_tinspectcanvas_isa 
-  :: (Ptr RawTInspectCanvas) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TInspectCanvas_printObj" c_tinspectcanvas_printobj 
-  :: (Ptr RawTInspectCanvas) -> CString -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_SetLineColor" c_tinspectcanvas_setlinecolor 
-  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_SetFillColor" c_tinspectcanvas_setfillcolor 
-  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_SetFillStyle" c_tinspectcanvas_setfillstyle 
-  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
-foreign import ccall "HROOT.h TInspectCanvas_delete" c_tinspectcanvas_delete 
-  :: (Ptr RawTInspectCanvas) -> IO ()
-
-foreign import ccall "HROOT.h TEvePad_GetFrame" c_tevepad_getframe 
-  :: (Ptr RawTEvePad) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TEvePad_Range" c_tevepad_range 
-  :: (Ptr RawTEvePad) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-foreign import ccall "HROOT.h TEvePad_GetName" c_tevepad_getname 
-  :: (Ptr RawTEvePad) -> IO CString
-foreign import ccall "HROOT.h TEvePad_Draw" c_tevepad_draw 
-  :: (Ptr RawTEvePad) -> CString -> IO ()
-foreign import ccall "HROOT.h TEvePad_FindObject" c_tevepad_findobject 
-  :: (Ptr RawTEvePad) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TEvePad_SaveAs" c_tevepad_saveas 
-  :: (Ptr RawTEvePad) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TEvePad_Write" c_tevepad_write 
-  :: (Ptr RawTEvePad) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TEvePad_IsA" c_tevepad_isa 
-  :: (Ptr RawTEvePad) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TEvePad_printObj" c_tevepad_printobj 
-  :: (Ptr RawTEvePad) -> CString -> IO ()
-foreign import ccall "HROOT.h TEvePad_SetLineColor" c_tevepad_setlinecolor 
-  :: (Ptr RawTEvePad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEvePad_SetFillColor" c_tevepad_setfillcolor 
-  :: (Ptr RawTEvePad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEvePad_SetFillStyle" c_tevepad_setfillstyle 
-  :: (Ptr RawTEvePad) -> CInt -> IO ()
-foreign import ccall "HROOT.h TEvePad_delete" c_tevepad_delete 
-  :: (Ptr RawTEvePad) -> IO ()
-
-foreign import ccall "HROOT.h TSlider_GetFrame" c_tslider_getframe 
-  :: (Ptr RawTSlider) -> IO (Ptr RawTFrame)
-foreign import ccall "HROOT.h TSlider_Range" c_tslider_range 
-  :: (Ptr RawTSlider) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
-foreign import ccall "HROOT.h TSlider_GetName" c_tslider_getname 
-  :: (Ptr RawTSlider) -> IO CString
-foreign import ccall "HROOT.h TSlider_Draw" c_tslider_draw 
-  :: (Ptr RawTSlider) -> CString -> IO ()
-foreign import ccall "HROOT.h TSlider_FindObject" c_tslider_findobject 
-  :: (Ptr RawTSlider) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TSlider_SaveAs" c_tslider_saveas 
-  :: (Ptr RawTSlider) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TSlider_Write" c_tslider_write 
-  :: (Ptr RawTSlider) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TSlider_IsA" c_tslider_isa 
-  :: (Ptr RawTSlider) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TSlider_printObj" c_tslider_printobj 
-  :: (Ptr RawTSlider) -> CString -> IO ()
-foreign import ccall "HROOT.h TSlider_SetLineColor" c_tslider_setlinecolor 
-  :: (Ptr RawTSlider) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSlider_SetFillColor" c_tslider_setfillcolor 
-  :: (Ptr RawTSlider) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSlider_SetFillStyle" c_tslider_setfillstyle 
-  :: (Ptr RawTSlider) -> CInt -> IO ()
-foreign import ccall "HROOT.h TSlider_delete" c_tslider_delete 
-  :: (Ptr RawTSlider) -> IO ()
-
-foreign import ccall "HROOT.h TApplication_GetName" c_tapplication_getname 
-  :: (Ptr RawTApplication) -> IO CString
-foreign import ccall "HROOT.h TApplication_Draw" c_tapplication_draw 
-  :: (Ptr RawTApplication) -> CString -> IO ()
-foreign import ccall "HROOT.h TApplication_FindObject" c_tapplication_findobject 
-  :: (Ptr RawTApplication) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TApplication_SaveAs" c_tapplication_saveas 
-  :: (Ptr RawTApplication) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TApplication_Write" c_tapplication_write 
-  :: (Ptr RawTApplication) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TApplication_IsA" c_tapplication_isa 
-  :: (Ptr RawTApplication) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TApplication_printObj" c_tapplication_printobj 
-  :: (Ptr RawTApplication) -> CString -> IO ()
-foreign import ccall "HROOT.h TApplication_delete" c_tapplication_delete 
-  :: (Ptr RawTApplication) -> IO ()
-foreign import ccall "HROOT.h TApplication_newTApplication" c_tapplication_newtapplication 
-  :: CString -> (Ptr CInt) -> (Ptr (CString)) -> IO (Ptr RawTApplication)
-foreign import ccall "HROOT.h TApplication_Run" c_tapplication_run 
-  :: (Ptr RawTApplication) -> CInt -> IO ()
-
-foreign import ccall "HROOT.h TRint_Run" c_trint_run 
-  :: (Ptr RawTRint) -> CInt -> IO ()
-foreign import ccall "HROOT.h TRint_GetName" c_trint_getname 
-  :: (Ptr RawTRint) -> IO CString
-foreign import ccall "HROOT.h TRint_Draw" c_trint_draw 
-  :: (Ptr RawTRint) -> CString -> IO ()
-foreign import ccall "HROOT.h TRint_FindObject" c_trint_findobject 
-  :: (Ptr RawTRint) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TRint_SaveAs" c_trint_saveas 
-  :: (Ptr RawTRint) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TRint_Write" c_trint_write 
-  :: (Ptr RawTRint) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TRint_IsA" c_trint_isa 
-  :: (Ptr RawTRint) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TRint_printObj" c_trint_printobj 
-  :: (Ptr RawTRint) -> CString -> IO ()
-foreign import ccall "HROOT.h TRint_delete" c_trint_delete 
-  :: (Ptr RawTRint) -> IO ()
-foreign import ccall "HROOT.h TRint_newTRint" c_trint_newtrint 
-  :: CString -> (Ptr CInt) -> (Ptr (CString)) -> IO (Ptr RawTRint)
-
-foreign import ccall "HROOT.h TRandom_SetTitle" c_trandom_settitle 
-  :: (Ptr RawTRandom) -> CString -> IO ()
-foreign import ccall "HROOT.h TRandom_GetName" c_trandom_getname 
-  :: (Ptr RawTRandom) -> IO CString
-foreign import ccall "HROOT.h TRandom_Draw" c_trandom_draw 
-  :: (Ptr RawTRandom) -> CString -> IO ()
-foreign import ccall "HROOT.h TRandom_FindObject" c_trandom_findobject 
-  :: (Ptr RawTRandom) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TRandom_SaveAs" c_trandom_saveas 
-  :: (Ptr RawTRandom) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TRandom_Write" c_trandom_write 
-  :: (Ptr RawTRandom) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TRandom_IsA" c_trandom_isa 
-  :: (Ptr RawTRandom) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TRandom_printObj" c_trandom_printobj 
-  :: (Ptr RawTRandom) -> CString -> IO ()
-foreign import ccall "HROOT.h TRandom_delete" c_trandom_delete 
-  :: (Ptr RawTRandom) -> IO ()
-foreign import ccall "HROOT.h TRandom_newTRandom" c_trandom_newtrandom 
-  :: CInt -> IO (Ptr RawTRandom)
-foreign import ccall "HROOT.h TRandom_Gaus" c_trandom_gaus 
-  :: (Ptr RawTRandom) -> CDouble -> CDouble -> IO CDouble
-foreign import ccall "HROOT.h TRandom_Uniform" c_trandom_uniform 
-  :: (Ptr RawTRandom) -> CDouble -> CDouble -> IO CDouble
-
-foreign import ccall "HROOT.h TCollection_GetName" c_tcollection_getname 
-  :: (Ptr RawTCollection) -> IO CString
-foreign import ccall "HROOT.h TCollection_Draw" c_tcollection_draw 
-  :: (Ptr RawTCollection) -> CString -> IO ()
-foreign import ccall "HROOT.h TCollection_FindObject" c_tcollection_findobject 
-  :: (Ptr RawTCollection) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TCollection_SaveAs" c_tcollection_saveas 
-  :: (Ptr RawTCollection) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TCollection_Write" c_tcollection_write 
-  :: (Ptr RawTCollection) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TCollection_IsA" c_tcollection_isa 
-  :: (Ptr RawTCollection) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TCollection_printObj" c_tcollection_printobj 
-  :: (Ptr RawTCollection) -> CString -> IO ()
-foreign import ccall "HROOT.h TCollection_delete" c_tcollection_delete 
-  :: (Ptr RawTCollection) -> IO ()
-
-foreign import ccall "HROOT.h TSeqCollection_GetName" c_tseqcollection_getname 
-  :: (Ptr RawTSeqCollection) -> IO CString
-foreign import ccall "HROOT.h TSeqCollection_Draw" c_tseqcollection_draw 
-  :: (Ptr RawTSeqCollection) -> CString -> IO ()
-foreign import ccall "HROOT.h TSeqCollection_FindObject" c_tseqcollection_findobject 
-  :: (Ptr RawTSeqCollection) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TSeqCollection_SaveAs" c_tseqcollection_saveas 
-  :: (Ptr RawTSeqCollection) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TSeqCollection_Write" c_tseqcollection_write 
-  :: (Ptr RawTSeqCollection) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TSeqCollection_IsA" c_tseqcollection_isa 
-  :: (Ptr RawTSeqCollection) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TSeqCollection_printObj" c_tseqcollection_printobj 
-  :: (Ptr RawTSeqCollection) -> CString -> IO ()
-foreign import ccall "HROOT.h TSeqCollection_delete" c_tseqcollection_delete 
-  :: (Ptr RawTSeqCollection) -> IO ()
-
-foreign import ccall "HROOT.h TObjArray_GetName" c_tobjarray_getname 
-  :: (Ptr RawTObjArray) -> IO CString
-foreign import ccall "HROOT.h TObjArray_Draw" c_tobjarray_draw 
-  :: (Ptr RawTObjArray) -> CString -> IO ()
-foreign import ccall "HROOT.h TObjArray_FindObject" c_tobjarray_findobject 
-  :: (Ptr RawTObjArray) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TObjArray_SaveAs" c_tobjarray_saveas 
-  :: (Ptr RawTObjArray) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TObjArray_Write" c_tobjarray_write 
-  :: (Ptr RawTObjArray) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TObjArray_IsA" c_tobjarray_isa 
-  :: (Ptr RawTObjArray) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TObjArray_printObj" c_tobjarray_printobj 
-  :: (Ptr RawTObjArray) -> CString -> IO ()
-foreign import ccall "HROOT.h TObjArray_delete" c_tobjarray_delete 
-  :: (Ptr RawTObjArray) -> IO ()
-
-foreign import ccall "HROOT.h TList_GetName" c_tlist_getname 
-  :: (Ptr RawTList) -> IO CString
-foreign import ccall "HROOT.h TList_Draw" c_tlist_draw 
-  :: (Ptr RawTList) -> CString -> IO ()
-foreign import ccall "HROOT.h TList_FindObject" c_tlist_findobject 
-  :: (Ptr RawTList) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TList_SaveAs" c_tlist_saveas 
-  :: (Ptr RawTList) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TList_Write" c_tlist_write 
-  :: (Ptr RawTList) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TList_IsA" c_tlist_isa 
-  :: (Ptr RawTList) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TList_printObj" c_tlist_printobj 
-  :: (Ptr RawTList) -> CString -> IO ()
-foreign import ccall "HROOT.h TList_delete" c_tlist_delete 
-  :: (Ptr RawTList) -> IO ()
-
-foreign import ccall "HROOT.h TKey_SetTitle" c_tkey_settitle 
-  :: (Ptr RawTKey) -> CString -> IO ()
-foreign import ccall "HROOT.h TKey_GetName" c_tkey_getname 
-  :: (Ptr RawTKey) -> IO CString
-foreign import ccall "HROOT.h TKey_Draw" c_tkey_draw 
-  :: (Ptr RawTKey) -> CString -> IO ()
-foreign import ccall "HROOT.h TKey_FindObject" c_tkey_findobject 
-  :: (Ptr RawTKey) -> CString -> IO (Ptr RawTObject)
-foreign import ccall "HROOT.h TKey_SaveAs" c_tkey_saveas 
-  :: (Ptr RawTKey) -> CString -> CString -> IO ()
-foreign import ccall "HROOT.h TKey_Write" c_tkey_write 
-  :: (Ptr RawTKey) -> CString -> CInt -> CInt -> IO CInt
-foreign import ccall "HROOT.h TKey_IsA" c_tkey_isa 
-  :: (Ptr RawTKey) -> IO (Ptr RawTClass)
-foreign import ccall "HROOT.h TKey_printObj" c_tkey_printobj 
-  :: (Ptr RawTKey) -> CString -> IO ()
-foreign import ccall "HROOT.h TKey_delete" c_tkey_delete 
-  :: (Ptr RawTKey) -> IO ()
-foreign import ccall "HROOT.h TKey_newTKey" c_tkey_newtkey 
-  :: CString -> CString -> (Ptr RawTClass) -> CInt -> (Ptr RawTDirectory) -> IO (Ptr RawTKey)
-
-foreign import ccall "HROOT.h TDatime_delete" c_tdatime_delete 
-  :: (Ptr RawTDatime) -> IO ()
-foreign import ccall "HROOT.h TDatime_newTDatime" c_tdatime_newtdatime 
-  :: CInt -> CInt -> CInt -> CInt -> CInt -> CInt -> IO (Ptr RawTDatime)
-foreign import ccall "HROOT.h TDatime_Convert" c_tdatime_convert 
-  :: (Ptr RawTDatime) -> CInt -> IO CUInt
+foreign import ccall "HROOT.h TNamed_SetName" c_tnamed_setname 
+  :: (Ptr RawTNamed) -> CString -> IO ()
+foreign import ccall "HROOT.h TNamed_SetNameTitle" c_tnamed_setnametitle 
+  :: (Ptr RawTNamed) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TNamed_SetTitle" c_tnamed_settitle 
+  :: (Ptr RawTNamed) -> CString -> IO ()
+
+
+
+
+
+
+
+
+
+
+
+
+
+foreign import ccall "HROOT.h TClass_SetName" c_tclass_setname 
+  :: (Ptr RawTClass) -> CString -> IO ()
+foreign import ccall "HROOT.h TClass_SetNameTitle" c_tclass_setnametitle 
+  :: (Ptr RawTClass) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TClass_SetTitle" c_tclass_settitle 
+  :: (Ptr RawTClass) -> CString -> IO ()
+foreign import ccall "HROOT.h TClass_GetName" c_tclass_getname 
+  :: (Ptr RawTClass) -> IO CString
+foreign import ccall "HROOT.h TClass_Draw" c_tclass_draw 
+  :: (Ptr RawTClass) -> CString -> IO ()
+foreign import ccall "HROOT.h TClass_FindObject" c_tclass_findobject 
+  :: (Ptr RawTClass) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TClass_SaveAs" c_tclass_saveas 
+  :: (Ptr RawTClass) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TClass_Write" c_tclass_write 
+  :: (Ptr RawTClass) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TClass_IsA" c_tclass_isa 
+  :: (Ptr RawTClass) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TClass_printObj" c_tclass_printobj 
+  :: (Ptr RawTClass) -> CString -> IO ()
+foreign import ccall "HROOT.h TClass_delete" c_tclass_delete 
+  :: (Ptr RawTClass) -> IO ()
+
+foreign import ccall "HROOT.h TFormula_SetName" c_tformula_setname 
+  :: (Ptr RawTFormula) -> CString -> IO ()
+foreign import ccall "HROOT.h TFormula_SetNameTitle" c_tformula_setnametitle 
+  :: (Ptr RawTFormula) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TFormula_SetTitle" c_tformula_settitle 
+  :: (Ptr RawTFormula) -> CString -> IO ()
+foreign import ccall "HROOT.h TFormula_GetName" c_tformula_getname 
+  :: (Ptr RawTFormula) -> IO CString
+foreign import ccall "HROOT.h TFormula_Draw" c_tformula_draw 
+  :: (Ptr RawTFormula) -> CString -> IO ()
+foreign import ccall "HROOT.h TFormula_FindObject" c_tformula_findobject 
+  :: (Ptr RawTFormula) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TFormula_SaveAs" c_tformula_saveas 
+  :: (Ptr RawTFormula) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TFormula_Write" c_tformula_write 
+  :: (Ptr RawTFormula) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TFormula_IsA" c_tformula_isa 
+  :: (Ptr RawTFormula) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TFormula_printObj" c_tformula_printobj 
+  :: (Ptr RawTFormula) -> CString -> IO ()
+foreign import ccall "HROOT.h TFormula_delete" c_tformula_delete 
+  :: (Ptr RawTFormula) -> IO ()
+foreign import ccall "HROOT.h TFormula_newTFormula" c_tformula_newtformula 
+  :: CString -> CString -> IO (Ptr RawTFormula)
+foreign import ccall "HROOT.h TFormula_GetParameter" c_tformula_getparameter 
+  :: (Ptr RawTFormula) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TFormula_SetParameter" c_tformula_setparameter 
+  :: (Ptr RawTFormula) -> CInt -> CDouble -> IO ()
+
+foreign import ccall "HROOT.h TAtt3D_delete" c_tatt3d_delete 
+  :: (Ptr RawTAtt3D) -> IO ()
+
+foreign import ccall "HROOT.h TAttAxis_delete" c_tattaxis_delete 
+  :: (Ptr RawTAttAxis) -> IO ()
+foreign import ccall "HROOT.h TAttAxis_newTAttAxis" c_tattaxis_newtattaxis 
+  :: IO (Ptr RawTAttAxis)
+foreign import ccall "HROOT.h TAttAxis_GetNdivisions" c_tattaxis_getndivisions 
+  :: (Ptr RawTAttAxis) -> IO CInt
+foreign import ccall "HROOT.h TAttAxis_GetAxisColor" c_tattaxis_getaxiscolor 
+  :: (Ptr RawTAttAxis) -> IO CInt
+foreign import ccall "HROOT.h TAttAxis_GetLabelColor" c_tattaxis_getlabelcolor 
+  :: (Ptr RawTAttAxis) -> IO CInt
+foreign import ccall "HROOT.h TAttAxis_GetLabelFont" c_tattaxis_getlabelfont 
+  :: (Ptr RawTAttAxis) -> IO CInt
+foreign import ccall "HROOT.h TAttAxis_GetLabelOffset" c_tattaxis_getlabeloffset 
+  :: (Ptr RawTAttAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAttAxis_GetLabelSize" c_tattaxis_getlabelsize 
+  :: (Ptr RawTAttAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAttAxis_GetTitleOffset" c_tattaxis_gettitleoffset 
+  :: (Ptr RawTAttAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAttAxis_GetTitleSize" c_tattaxis_gettitlesize 
+  :: (Ptr RawTAttAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAttAxis_GetTickLength" c_tattaxis_getticklength 
+  :: (Ptr RawTAttAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAttAxis_GetTitleFont" c_tattaxis_gettitlefont 
+  :: (Ptr RawTAttAxis) -> IO CInt
+foreign import ccall "HROOT.h TAttAxis_SetNdivisions" c_tattaxis_setndivisions 
+  :: (Ptr RawTAttAxis) -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetAxisColor" c_tattaxis_setaxiscolor 
+  :: (Ptr RawTAttAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetLabelColor" c_tattaxis_setlabelcolor 
+  :: (Ptr RawTAttAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetLabelFont" c_tattaxis_setlabelfont 
+  :: (Ptr RawTAttAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetLabelOffset" c_tattaxis_setlabeloffset 
+  :: (Ptr RawTAttAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetLabelSize" c_tattaxis_setlabelsize 
+  :: (Ptr RawTAttAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetTickLength" c_tattaxis_setticklength 
+  :: (Ptr RawTAttAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetTitleOffset" c_tattaxis_settitleoffset 
+  :: (Ptr RawTAttAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetTitleSize" c_tattaxis_settitlesize 
+  :: (Ptr RawTAttAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetTitleColor" c_tattaxis_settitlecolor 
+  :: (Ptr RawTAttAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAttAxis_SetTitleFont" c_tattaxis_settitlefont 
+  :: (Ptr RawTAttAxis) -> CInt -> IO ()
+
+foreign import ccall "HROOT.h TAttBBox_delete" c_tattbbox_delete 
+  :: (Ptr RawTAttBBox) -> IO ()
+
+foreign import ccall "HROOT.h TAttCanvas_delete" c_tattcanvas_delete 
+  :: (Ptr RawTAttCanvas) -> IO ()
+foreign import ccall "HROOT.h TAttCanvas_newTAttCanvas" c_tattcanvas_newtattcanvas 
+  :: IO (Ptr RawTAttCanvas)
+
+foreign import ccall "HROOT.h TAttFill_delete" c_tattfill_delete 
+  :: (Ptr RawTAttFill) -> IO ()
+foreign import ccall "HROOT.h TAttFill_newTAttFill" c_tattfill_newtattfill 
+  :: CInt -> CInt -> IO (Ptr RawTAttFill)
+foreign import ccall "HROOT.h TAttFill_SetFillColor" c_tattfill_setfillcolor 
+  :: (Ptr RawTAttFill) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAttFill_SetFillStyle" c_tattfill_setfillstyle 
+  :: (Ptr RawTAttFill) -> CInt -> IO ()
+
+foreign import ccall "HROOT.h TAttImage_delete" c_tattimage_delete 
+  :: (Ptr RawTAttImage) -> IO ()
+
+foreign import ccall "HROOT.h TAttLine_delete" c_tattline_delete 
+  :: (Ptr RawTAttLine) -> IO ()
+foreign import ccall "HROOT.h TAttLine_newTAttLine" c_tattline_newtattline 
+  :: CInt -> CInt -> CInt -> IO (Ptr RawTAttLine)
+foreign import ccall "HROOT.h TAttLine_SetLineColor" c_tattline_setlinecolor 
+  :: (Ptr RawTAttLine) -> CInt -> IO ()
+
+foreign import ccall "HROOT.h TAttMarker_delete" c_tattmarker_delete 
+  :: (Ptr RawTAttMarker) -> IO ()
+foreign import ccall "HROOT.h TAttMarker_newTAttMarker" c_tattmarker_newtattmarker 
+  :: CInt -> CInt -> CInt -> IO (Ptr RawTAttMarker)
+
+foreign import ccall "HROOT.h TAttPad_delete" c_tattpad_delete 
+  :: (Ptr RawTAttPad) -> IO ()
+foreign import ccall "HROOT.h TAttPad_newTAttPad" c_tattpad_newtattpad 
+  :: IO (Ptr RawTAttPad)
+
+foreign import ccall "HROOT.h TAttParticle_SetName" c_tattparticle_setname 
+  :: (Ptr RawTAttParticle) -> CString -> IO ()
+foreign import ccall "HROOT.h TAttParticle_SetNameTitle" c_tattparticle_setnametitle 
+  :: (Ptr RawTAttParticle) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TAttParticle_SetTitle" c_tattparticle_settitle 
+  :: (Ptr RawTAttParticle) -> CString -> IO ()
+foreign import ccall "HROOT.h TAttParticle_GetName" c_tattparticle_getname 
+  :: (Ptr RawTAttParticle) -> IO CString
+foreign import ccall "HROOT.h TAttParticle_Draw" c_tattparticle_draw 
+  :: (Ptr RawTAttParticle) -> CString -> IO ()
+foreign import ccall "HROOT.h TAttParticle_FindObject" c_tattparticle_findobject 
+  :: (Ptr RawTAttParticle) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TAttParticle_SaveAs" c_tattparticle_saveas 
+  :: (Ptr RawTAttParticle) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TAttParticle_Write" c_tattparticle_write 
+  :: (Ptr RawTAttParticle) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TAttParticle_IsA" c_tattparticle_isa 
+  :: (Ptr RawTAttParticle) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TAttParticle_printObj" c_tattparticle_printobj 
+  :: (Ptr RawTAttParticle) -> CString -> IO ()
+foreign import ccall "HROOT.h TAttParticle_delete" c_tattparticle_delete 
+  :: (Ptr RawTAttParticle) -> IO ()
+
+foreign import ccall "HROOT.h TAttText_delete" c_tatttext_delete 
+  :: (Ptr RawTAttText) -> IO ()
+foreign import ccall "HROOT.h TAttText_newTAttText" c_tatttext_newtatttext 
+  :: CInt -> CDouble -> CInt -> CInt -> CDouble -> IO (Ptr RawTAttText)
+foreign import ccall "HROOT.h TAttText_SetTextColor" c_tatttext_settextcolor 
+  :: (Ptr RawTAttText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAttText_SetTextAlign" c_tatttext_settextalign 
+  :: (Ptr RawTAttText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAttText_SetTextSize" c_tatttext_settextsize 
+  :: (Ptr RawTAttText) -> CDouble -> IO ()
+
+foreign import ccall "HROOT.h THStack_SetName" c_thstack_setname 
+  :: (Ptr RawTHStack) -> CString -> IO ()
+foreign import ccall "HROOT.h THStack_SetNameTitle" c_thstack_setnametitle 
+  :: (Ptr RawTHStack) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h THStack_SetTitle" c_thstack_settitle 
+  :: (Ptr RawTHStack) -> CString -> IO ()
+foreign import ccall "HROOT.h THStack_GetName" c_thstack_getname 
+  :: (Ptr RawTHStack) -> IO CString
+foreign import ccall "HROOT.h THStack_Draw" c_thstack_draw 
+  :: (Ptr RawTHStack) -> CString -> IO ()
+foreign import ccall "HROOT.h THStack_FindObject" c_thstack_findobject 
+  :: (Ptr RawTHStack) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h THStack_SaveAs" c_thstack_saveas 
+  :: (Ptr RawTHStack) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h THStack_Write" c_thstack_write 
+  :: (Ptr RawTHStack) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h THStack_IsA" c_thstack_isa 
+  :: (Ptr RawTHStack) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h THStack_printObj" c_thstack_printobj 
+  :: (Ptr RawTHStack) -> CString -> IO ()
+foreign import ccall "HROOT.h THStack_delete" c_thstack_delete 
+  :: (Ptr RawTHStack) -> IO ()
+foreign import ccall "HROOT.h THStack_newTHStack" c_thstack_newthstack 
+  :: CString -> CString -> IO (Ptr RawTHStack)
+
+foreign import ccall "HROOT.h TF1_GetParameter" c_tf1_getparameter 
+  :: (Ptr RawTF1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TF1_SetParameter" c_tf1_setparameter 
+  :: (Ptr RawTF1) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TF1_SetLineColor" c_tf1_setlinecolor 
+  :: (Ptr RawTF1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TF1_SetFillColor" c_tf1_setfillcolor 
+  :: (Ptr RawTF1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TF1_SetFillStyle" c_tf1_setfillstyle 
+  :: (Ptr RawTF1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TF1_SetName" c_tf1_setname 
+  :: (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TF1_SetNameTitle" c_tf1_setnametitle 
+  :: (Ptr RawTF1) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TF1_SetTitle" c_tf1_settitle 
+  :: (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TF1_GetName" c_tf1_getname 
+  :: (Ptr RawTF1) -> IO CString
+foreign import ccall "HROOT.h TF1_Draw" c_tf1_draw 
+  :: (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TF1_FindObject" c_tf1_findobject 
+  :: (Ptr RawTF1) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TF1_SaveAs" c_tf1_saveas 
+  :: (Ptr RawTF1) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TF1_Write" c_tf1_write 
+  :: (Ptr RawTF1) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TF1_IsA" c_tf1_isa 
+  :: (Ptr RawTF1) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TF1_printObj" c_tf1_printobj 
+  :: (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TF1_delete" c_tf1_delete 
+  :: (Ptr RawTF1) -> IO ()
+foreign import ccall "HROOT.h TF1_newTF1" c_tf1_newtf1 
+  :: CString -> CString -> CDouble -> CDouble -> IO (Ptr RawTF1)
+
+foreign import ccall "HROOT.h TGraph_SetName" c_tgraph_setname 
+  :: (Ptr RawTGraph) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraph_SetNameTitle" c_tgraph_setnametitle 
+  :: (Ptr RawTGraph) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraph_SetTitle" c_tgraph_settitle 
+  :: (Ptr RawTGraph) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraph_SetLineColor" c_tgraph_setlinecolor 
+  :: (Ptr RawTGraph) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraph_SetFillColor" c_tgraph_setfillcolor 
+  :: (Ptr RawTGraph) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraph_SetFillStyle" c_tgraph_setfillstyle 
+  :: (Ptr RawTGraph) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraph_GetName" c_tgraph_getname 
+  :: (Ptr RawTGraph) -> IO CString
+foreign import ccall "HROOT.h TGraph_Draw" c_tgraph_draw 
+  :: (Ptr RawTGraph) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraph_FindObject" c_tgraph_findobject 
+  :: (Ptr RawTGraph) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TGraph_SaveAs" c_tgraph_saveas 
+  :: (Ptr RawTGraph) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraph_Write" c_tgraph_write 
+  :: (Ptr RawTGraph) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TGraph_IsA" c_tgraph_isa 
+  :: (Ptr RawTGraph) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TGraph_printObj" c_tgraph_printobj 
+  :: (Ptr RawTGraph) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraph_delete" c_tgraph_delete 
+  :: (Ptr RawTGraph) -> IO ()
+foreign import ccall "HROOT.h TGraph_newTGraph" c_tgraph_newtgraph 
+  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraph)
+
+foreign import ccall "HROOT.h TGraphAsymmErrors_SetName" c_tgraphasymmerrors_setname 
+  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_SetNameTitle" c_tgraphasymmerrors_setnametitle 
+  :: (Ptr RawTGraphAsymmErrors) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_SetTitle" c_tgraphasymmerrors_settitle 
+  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_SetLineColor" c_tgraphasymmerrors_setlinecolor 
+  :: (Ptr RawTGraphAsymmErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_SetFillColor" c_tgraphasymmerrors_setfillcolor 
+  :: (Ptr RawTGraphAsymmErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_SetFillStyle" c_tgraphasymmerrors_setfillstyle 
+  :: (Ptr RawTGraphAsymmErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_GetName" c_tgraphasymmerrors_getname 
+  :: (Ptr RawTGraphAsymmErrors) -> IO CString
+foreign import ccall "HROOT.h TGraphAsymmErrors_Draw" c_tgraphasymmerrors_draw 
+  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_FindObject" c_tgraphasymmerrors_findobject 
+  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TGraphAsymmErrors_SaveAs" c_tgraphasymmerrors_saveas 
+  :: (Ptr RawTGraphAsymmErrors) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_Write" c_tgraphasymmerrors_write 
+  :: (Ptr RawTGraphAsymmErrors) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TGraphAsymmErrors_IsA" c_tgraphasymmerrors_isa 
+  :: (Ptr RawTGraphAsymmErrors) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TGraphAsymmErrors_printObj" c_tgraphasymmerrors_printobj 
+  :: (Ptr RawTGraphAsymmErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_delete" c_tgraphasymmerrors_delete 
+  :: (Ptr RawTGraphAsymmErrors) -> IO ()
+foreign import ccall "HROOT.h TGraphAsymmErrors_newTGraphAsymmErrors" c_tgraphasymmerrors_newtgraphasymmerrors 
+  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraphAsymmErrors)
+
+foreign import ccall "HROOT.h TCutG_SetName" c_tcutg_setname 
+  :: (Ptr RawTCutG) -> CString -> IO ()
+foreign import ccall "HROOT.h TCutG_SetNameTitle" c_tcutg_setnametitle 
+  :: (Ptr RawTCutG) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TCutG_SetTitle" c_tcutg_settitle 
+  :: (Ptr RawTCutG) -> CString -> IO ()
+foreign import ccall "HROOT.h TCutG_SetLineColor" c_tcutg_setlinecolor 
+  :: (Ptr RawTCutG) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCutG_SetFillColor" c_tcutg_setfillcolor 
+  :: (Ptr RawTCutG) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCutG_SetFillStyle" c_tcutg_setfillstyle 
+  :: (Ptr RawTCutG) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCutG_GetName" c_tcutg_getname 
+  :: (Ptr RawTCutG) -> IO CString
+foreign import ccall "HROOT.h TCutG_Draw" c_tcutg_draw 
+  :: (Ptr RawTCutG) -> CString -> IO ()
+foreign import ccall "HROOT.h TCutG_FindObject" c_tcutg_findobject 
+  :: (Ptr RawTCutG) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TCutG_SaveAs" c_tcutg_saveas 
+  :: (Ptr RawTCutG) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TCutG_Write" c_tcutg_write 
+  :: (Ptr RawTCutG) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TCutG_IsA" c_tcutg_isa 
+  :: (Ptr RawTCutG) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TCutG_printObj" c_tcutg_printobj 
+  :: (Ptr RawTCutG) -> CString -> IO ()
+foreign import ccall "HROOT.h TCutG_delete" c_tcutg_delete 
+  :: (Ptr RawTCutG) -> IO ()
+foreign import ccall "HROOT.h TCutG_newTCutG" c_tcutg_newtcutg 
+  :: CString -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTCutG)
+
+foreign import ccall "HROOT.h TGraphBentErrors_SetName" c_tgraphbenterrors_setname 
+  :: (Ptr RawTGraphBentErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_SetNameTitle" c_tgraphbenterrors_setnametitle 
+  :: (Ptr RawTGraphBentErrors) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_SetTitle" c_tgraphbenterrors_settitle 
+  :: (Ptr RawTGraphBentErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_SetLineColor" c_tgraphbenterrors_setlinecolor 
+  :: (Ptr RawTGraphBentErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_SetFillColor" c_tgraphbenterrors_setfillcolor 
+  :: (Ptr RawTGraphBentErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_SetFillStyle" c_tgraphbenterrors_setfillstyle 
+  :: (Ptr RawTGraphBentErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_GetName" c_tgraphbenterrors_getname 
+  :: (Ptr RawTGraphBentErrors) -> IO CString
+foreign import ccall "HROOT.h TGraphBentErrors_Draw" c_tgraphbenterrors_draw 
+  :: (Ptr RawTGraphBentErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_FindObject" c_tgraphbenterrors_findobject 
+  :: (Ptr RawTGraphBentErrors) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TGraphBentErrors_SaveAs" c_tgraphbenterrors_saveas 
+  :: (Ptr RawTGraphBentErrors) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_Write" c_tgraphbenterrors_write 
+  :: (Ptr RawTGraphBentErrors) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TGraphBentErrors_IsA" c_tgraphbenterrors_isa 
+  :: (Ptr RawTGraphBentErrors) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TGraphBentErrors_printObj" c_tgraphbenterrors_printobj 
+  :: (Ptr RawTGraphBentErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_delete" c_tgraphbenterrors_delete 
+  :: (Ptr RawTGraphBentErrors) -> IO ()
+foreign import ccall "HROOT.h TGraphBentErrors_newTGraphBentErrors" c_tgraphbenterrors_newtgraphbenterrors 
+  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraphBentErrors)
+
+foreign import ccall "HROOT.h TGraphErrors_SetName" c_tgrapherrors_setname 
+  :: (Ptr RawTGraphErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_SetNameTitle" c_tgrapherrors_setnametitle 
+  :: (Ptr RawTGraphErrors) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_SetTitle" c_tgrapherrors_settitle 
+  :: (Ptr RawTGraphErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_SetLineColor" c_tgrapherrors_setlinecolor 
+  :: (Ptr RawTGraphErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_SetFillColor" c_tgrapherrors_setfillcolor 
+  :: (Ptr RawTGraphErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_SetFillStyle" c_tgrapherrors_setfillstyle 
+  :: (Ptr RawTGraphErrors) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_GetName" c_tgrapherrors_getname 
+  :: (Ptr RawTGraphErrors) -> IO CString
+foreign import ccall "HROOT.h TGraphErrors_Draw" c_tgrapherrors_draw 
+  :: (Ptr RawTGraphErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_FindObject" c_tgrapherrors_findobject 
+  :: (Ptr RawTGraphErrors) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TGraphErrors_SaveAs" c_tgrapherrors_saveas 
+  :: (Ptr RawTGraphErrors) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_Write" c_tgrapherrors_write 
+  :: (Ptr RawTGraphErrors) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TGraphErrors_IsA" c_tgrapherrors_isa 
+  :: (Ptr RawTGraphErrors) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TGraphErrors_printObj" c_tgrapherrors_printobj 
+  :: (Ptr RawTGraphErrors) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_delete" c_tgrapherrors_delete 
+  :: (Ptr RawTGraphErrors) -> IO ()
+foreign import ccall "HROOT.h TGraphErrors_newTGraphErrors" c_tgrapherrors_newtgrapherrors 
+  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraphErrors)
+
+foreign import ccall "HROOT.h TGraphPolar_SetName" c_tgraphpolar_setname 
+  :: (Ptr RawTGraphPolar) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_SetNameTitle" c_tgraphpolar_setnametitle 
+  :: (Ptr RawTGraphPolar) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_SetTitle" c_tgraphpolar_settitle 
+  :: (Ptr RawTGraphPolar) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_SetLineColor" c_tgraphpolar_setlinecolor 
+  :: (Ptr RawTGraphPolar) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_SetFillColor" c_tgraphpolar_setfillcolor 
+  :: (Ptr RawTGraphPolar) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_SetFillStyle" c_tgraphpolar_setfillstyle 
+  :: (Ptr RawTGraphPolar) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_GetName" c_tgraphpolar_getname 
+  :: (Ptr RawTGraphPolar) -> IO CString
+foreign import ccall "HROOT.h TGraphPolar_Draw" c_tgraphpolar_draw 
+  :: (Ptr RawTGraphPolar) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_FindObject" c_tgraphpolar_findobject 
+  :: (Ptr RawTGraphPolar) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TGraphPolar_SaveAs" c_tgraphpolar_saveas 
+  :: (Ptr RawTGraphPolar) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_Write" c_tgraphpolar_write 
+  :: (Ptr RawTGraphPolar) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TGraphPolar_IsA" c_tgraphpolar_isa 
+  :: (Ptr RawTGraphPolar) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TGraphPolar_printObj" c_tgraphpolar_printobj 
+  :: (Ptr RawTGraphPolar) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_delete" c_tgraphpolar_delete 
+  :: (Ptr RawTGraphPolar) -> IO ()
+foreign import ccall "HROOT.h TGraphPolar_newTGraphPolar" c_tgraphpolar_newtgraphpolar 
+  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> (Ptr CDouble) -> IO (Ptr RawTGraphPolar)
+
+foreign import ccall "HROOT.h TGraphQQ_SetName" c_tgraphqq_setname 
+  :: (Ptr RawTGraphQQ) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_SetNameTitle" c_tgraphqq_setnametitle 
+  :: (Ptr RawTGraphQQ) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_SetTitle" c_tgraphqq_settitle 
+  :: (Ptr RawTGraphQQ) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_SetLineColor" c_tgraphqq_setlinecolor 
+  :: (Ptr RawTGraphQQ) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_SetFillColor" c_tgraphqq_setfillcolor 
+  :: (Ptr RawTGraphQQ) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_SetFillStyle" c_tgraphqq_setfillstyle 
+  :: (Ptr RawTGraphQQ) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_GetName" c_tgraphqq_getname 
+  :: (Ptr RawTGraphQQ) -> IO CString
+foreign import ccall "HROOT.h TGraphQQ_Draw" c_tgraphqq_draw 
+  :: (Ptr RawTGraphQQ) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_FindObject" c_tgraphqq_findobject 
+  :: (Ptr RawTGraphQQ) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TGraphQQ_SaveAs" c_tgraphqq_saveas 
+  :: (Ptr RawTGraphQQ) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_Write" c_tgraphqq_write 
+  :: (Ptr RawTGraphQQ) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TGraphQQ_IsA" c_tgraphqq_isa 
+  :: (Ptr RawTGraphQQ) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TGraphQQ_printObj" c_tgraphqq_printobj 
+  :: (Ptr RawTGraphQQ) -> CString -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_delete" c_tgraphqq_delete 
+  :: (Ptr RawTGraphQQ) -> IO ()
+foreign import ccall "HROOT.h TGraphQQ_newTGraphQQ" c_tgraphqq_newtgraphqq 
+  :: CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO (Ptr RawTGraphQQ)
+
+foreign import ccall "HROOT.h TEllipse_GetName" c_tellipse_getname 
+  :: (Ptr RawTEllipse) -> IO CString
+foreign import ccall "HROOT.h TEllipse_Draw" c_tellipse_draw 
+  :: (Ptr RawTEllipse) -> CString -> IO ()
+foreign import ccall "HROOT.h TEllipse_FindObject" c_tellipse_findobject 
+  :: (Ptr RawTEllipse) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TEllipse_SaveAs" c_tellipse_saveas 
+  :: (Ptr RawTEllipse) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TEllipse_Write" c_tellipse_write 
+  :: (Ptr RawTEllipse) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TEllipse_IsA" c_tellipse_isa 
+  :: (Ptr RawTEllipse) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TEllipse_printObj" c_tellipse_printobj 
+  :: (Ptr RawTEllipse) -> CString -> IO ()
+foreign import ccall "HROOT.h TEllipse_SetLineColor" c_tellipse_setlinecolor 
+  :: (Ptr RawTEllipse) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEllipse_SetFillColor" c_tellipse_setfillcolor 
+  :: (Ptr RawTEllipse) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEllipse_SetFillStyle" c_tellipse_setfillstyle 
+  :: (Ptr RawTEllipse) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEllipse_delete" c_tellipse_delete 
+  :: (Ptr RawTEllipse) -> IO ()
+foreign import ccall "HROOT.h TEllipse_newTEllipse" c_tellipse_newtellipse 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTEllipse)
+
+foreign import ccall "HROOT.h TArc_GetName" c_tarc_getname 
+  :: (Ptr RawTArc) -> IO CString
+foreign import ccall "HROOT.h TArc_Draw" c_tarc_draw 
+  :: (Ptr RawTArc) -> CString -> IO ()
+foreign import ccall "HROOT.h TArc_FindObject" c_tarc_findobject 
+  :: (Ptr RawTArc) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TArc_SaveAs" c_tarc_saveas 
+  :: (Ptr RawTArc) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TArc_Write" c_tarc_write 
+  :: (Ptr RawTArc) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TArc_IsA" c_tarc_isa 
+  :: (Ptr RawTArc) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TArc_printObj" c_tarc_printobj 
+  :: (Ptr RawTArc) -> CString -> IO ()
+foreign import ccall "HROOT.h TArc_SetLineColor" c_tarc_setlinecolor 
+  :: (Ptr RawTArc) -> CInt -> IO ()
+foreign import ccall "HROOT.h TArc_SetFillColor" c_tarc_setfillcolor 
+  :: (Ptr RawTArc) -> CInt -> IO ()
+foreign import ccall "HROOT.h TArc_SetFillStyle" c_tarc_setfillstyle 
+  :: (Ptr RawTArc) -> CInt -> IO ()
+foreign import ccall "HROOT.h TArc_delete" c_tarc_delete 
+  :: (Ptr RawTArc) -> IO ()
+foreign import ccall "HROOT.h TArc_newTArc" c_tarc_newtarc 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTArc)
+
+foreign import ccall "HROOT.h TCrown_GetName" c_tcrown_getname 
+  :: (Ptr RawTCrown) -> IO CString
+foreign import ccall "HROOT.h TCrown_Draw" c_tcrown_draw 
+  :: (Ptr RawTCrown) -> CString -> IO ()
+foreign import ccall "HROOT.h TCrown_FindObject" c_tcrown_findobject 
+  :: (Ptr RawTCrown) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TCrown_SaveAs" c_tcrown_saveas 
+  :: (Ptr RawTCrown) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TCrown_Write" c_tcrown_write 
+  :: (Ptr RawTCrown) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TCrown_IsA" c_tcrown_isa 
+  :: (Ptr RawTCrown) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TCrown_printObj" c_tcrown_printobj 
+  :: (Ptr RawTCrown) -> CString -> IO ()
+foreign import ccall "HROOT.h TCrown_SetLineColor" c_tcrown_setlinecolor 
+  :: (Ptr RawTCrown) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCrown_SetFillColor" c_tcrown_setfillcolor 
+  :: (Ptr RawTCrown) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCrown_SetFillStyle" c_tcrown_setfillstyle 
+  :: (Ptr RawTCrown) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCrown_delete" c_tcrown_delete 
+  :: (Ptr RawTCrown) -> IO ()
+foreign import ccall "HROOT.h TCrown_newTCrown" c_tcrown_newtcrown 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTCrown)
+
+foreign import ccall "HROOT.h TLine_GetName" c_tline_getname 
+  :: (Ptr RawTLine) -> IO CString
+foreign import ccall "HROOT.h TLine_Draw" c_tline_draw 
+  :: (Ptr RawTLine) -> CString -> IO ()
+foreign import ccall "HROOT.h TLine_FindObject" c_tline_findobject 
+  :: (Ptr RawTLine) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TLine_SaveAs" c_tline_saveas 
+  :: (Ptr RawTLine) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TLine_Write" c_tline_write 
+  :: (Ptr RawTLine) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TLine_IsA" c_tline_isa 
+  :: (Ptr RawTLine) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TLine_printObj" c_tline_printobj 
+  :: (Ptr RawTLine) -> CString -> IO ()
+foreign import ccall "HROOT.h TLine_SetLineColor" c_tline_setlinecolor 
+  :: (Ptr RawTLine) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLine_delete" c_tline_delete 
+  :: (Ptr RawTLine) -> IO ()
+foreign import ccall "HROOT.h TLine_newTLine" c_tline_newtline 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTLine)
+
+foreign import ccall "HROOT.h TArrow_SetFillColor" c_tarrow_setfillcolor 
+  :: (Ptr RawTArrow) -> CInt -> IO ()
+foreign import ccall "HROOT.h TArrow_SetFillStyle" c_tarrow_setfillstyle 
+  :: (Ptr RawTArrow) -> CInt -> IO ()
+foreign import ccall "HROOT.h TArrow_GetName" c_tarrow_getname 
+  :: (Ptr RawTArrow) -> IO CString
+foreign import ccall "HROOT.h TArrow_Draw" c_tarrow_draw 
+  :: (Ptr RawTArrow) -> CString -> IO ()
+foreign import ccall "HROOT.h TArrow_FindObject" c_tarrow_findobject 
+  :: (Ptr RawTArrow) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TArrow_SaveAs" c_tarrow_saveas 
+  :: (Ptr RawTArrow) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TArrow_Write" c_tarrow_write 
+  :: (Ptr RawTArrow) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TArrow_IsA" c_tarrow_isa 
+  :: (Ptr RawTArrow) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TArrow_printObj" c_tarrow_printobj 
+  :: (Ptr RawTArrow) -> CString -> IO ()
+foreign import ccall "HROOT.h TArrow_SetLineColor" c_tarrow_setlinecolor 
+  :: (Ptr RawTArrow) -> CInt -> IO ()
+foreign import ccall "HROOT.h TArrow_delete" c_tarrow_delete 
+  :: (Ptr RawTArrow) -> IO ()
+foreign import ccall "HROOT.h TArrow_newTArrow" c_tarrow_newtarrow 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CString -> IO (Ptr RawTArrow)
+
+foreign import ccall "HROOT.h TGaxis_SetTextColor" c_tgaxis_settextcolor 
+  :: (Ptr RawTGaxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGaxis_SetTextAlign" c_tgaxis_settextalign 
+  :: (Ptr RawTGaxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGaxis_SetTextSize" c_tgaxis_settextsize 
+  :: (Ptr RawTGaxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TGaxis_GetName" c_tgaxis_getname 
+  :: (Ptr RawTGaxis) -> IO CString
+foreign import ccall "HROOT.h TGaxis_Draw" c_tgaxis_draw 
+  :: (Ptr RawTGaxis) -> CString -> IO ()
+foreign import ccall "HROOT.h TGaxis_FindObject" c_tgaxis_findobject 
+  :: (Ptr RawTGaxis) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TGaxis_SaveAs" c_tgaxis_saveas 
+  :: (Ptr RawTGaxis) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGaxis_Write" c_tgaxis_write 
+  :: (Ptr RawTGaxis) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TGaxis_IsA" c_tgaxis_isa 
+  :: (Ptr RawTGaxis) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TGaxis_printObj" c_tgaxis_printobj 
+  :: (Ptr RawTGaxis) -> CString -> IO ()
+foreign import ccall "HROOT.h TGaxis_SetLineColor" c_tgaxis_setlinecolor 
+  :: (Ptr RawTGaxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGaxis_delete" c_tgaxis_delete 
+  :: (Ptr RawTGaxis) -> IO ()
+foreign import ccall "HROOT.h TGaxis_newTGaxis" c_tgaxis_newtgaxis 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CString -> CDouble -> IO (Ptr RawTGaxis)
+
+foreign import ccall "HROOT.h TShape_SetName" c_tshape_setname 
+  :: (Ptr RawTShape) -> CString -> IO ()
+foreign import ccall "HROOT.h TShape_SetNameTitle" c_tshape_setnametitle 
+  :: (Ptr RawTShape) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TShape_SetTitle" c_tshape_settitle 
+  :: (Ptr RawTShape) -> CString -> IO ()
+foreign import ccall "HROOT.h TShape_SetLineColor" c_tshape_setlinecolor 
+  :: (Ptr RawTShape) -> CInt -> IO ()
+foreign import ccall "HROOT.h TShape_SetFillColor" c_tshape_setfillcolor 
+  :: (Ptr RawTShape) -> CInt -> IO ()
+foreign import ccall "HROOT.h TShape_SetFillStyle" c_tshape_setfillstyle 
+  :: (Ptr RawTShape) -> CInt -> IO ()
+foreign import ccall "HROOT.h TShape_GetName" c_tshape_getname 
+  :: (Ptr RawTShape) -> IO CString
+foreign import ccall "HROOT.h TShape_Draw" c_tshape_draw 
+  :: (Ptr RawTShape) -> CString -> IO ()
+foreign import ccall "HROOT.h TShape_FindObject" c_tshape_findobject 
+  :: (Ptr RawTShape) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TShape_SaveAs" c_tshape_saveas 
+  :: (Ptr RawTShape) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TShape_Write" c_tshape_write 
+  :: (Ptr RawTShape) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TShape_IsA" c_tshape_isa 
+  :: (Ptr RawTShape) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TShape_printObj" c_tshape_printobj 
+  :: (Ptr RawTShape) -> CString -> IO ()
+foreign import ccall "HROOT.h TShape_delete" c_tshape_delete 
+  :: (Ptr RawTShape) -> IO ()
+foreign import ccall "HROOT.h TShape_newTShape" c_tshape_newtshape 
+  :: CString -> CString -> CString -> IO (Ptr RawTShape)
+
+foreign import ccall "HROOT.h TBRIK_SetName" c_tbrik_setname 
+  :: (Ptr RawTBRIK) -> CString -> IO ()
+foreign import ccall "HROOT.h TBRIK_SetNameTitle" c_tbrik_setnametitle 
+  :: (Ptr RawTBRIK) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TBRIK_SetTitle" c_tbrik_settitle 
+  :: (Ptr RawTBRIK) -> CString -> IO ()
+foreign import ccall "HROOT.h TBRIK_SetLineColor" c_tbrik_setlinecolor 
+  :: (Ptr RawTBRIK) -> CInt -> IO ()
+foreign import ccall "HROOT.h TBRIK_SetFillColor" c_tbrik_setfillcolor 
+  :: (Ptr RawTBRIK) -> CInt -> IO ()
+foreign import ccall "HROOT.h TBRIK_SetFillStyle" c_tbrik_setfillstyle 
+  :: (Ptr RawTBRIK) -> CInt -> IO ()
+foreign import ccall "HROOT.h TBRIK_GetName" c_tbrik_getname 
+  :: (Ptr RawTBRIK) -> IO CString
+foreign import ccall "HROOT.h TBRIK_Draw" c_tbrik_draw 
+  :: (Ptr RawTBRIK) -> CString -> IO ()
+foreign import ccall "HROOT.h TBRIK_FindObject" c_tbrik_findobject 
+  :: (Ptr RawTBRIK) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TBRIK_SaveAs" c_tbrik_saveas 
+  :: (Ptr RawTBRIK) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TBRIK_Write" c_tbrik_write 
+  :: (Ptr RawTBRIK) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TBRIK_IsA" c_tbrik_isa 
+  :: (Ptr RawTBRIK) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TBRIK_printObj" c_tbrik_printobj 
+  :: (Ptr RawTBRIK) -> CString -> IO ()
+foreign import ccall "HROOT.h TBRIK_delete" c_tbrik_delete 
+  :: (Ptr RawTBRIK) -> IO ()
+foreign import ccall "HROOT.h TBRIK_newTBRIK" c_tbrik_newtbrik 
+  :: CString -> CString -> CString -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTBRIK)
+
+foreign import ccall "HROOT.h TTUBE_SetName" c_ttube_setname 
+  :: (Ptr RawTTUBE) -> CString -> IO ()
+foreign import ccall "HROOT.h TTUBE_SetNameTitle" c_ttube_setnametitle 
+  :: (Ptr RawTTUBE) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TTUBE_SetTitle" c_ttube_settitle 
+  :: (Ptr RawTTUBE) -> CString -> IO ()
+foreign import ccall "HROOT.h TTUBE_SetLineColor" c_ttube_setlinecolor 
+  :: (Ptr RawTTUBE) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTUBE_SetFillColor" c_ttube_setfillcolor 
+  :: (Ptr RawTTUBE) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTUBE_SetFillStyle" c_ttube_setfillstyle 
+  :: (Ptr RawTTUBE) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTUBE_GetName" c_ttube_getname 
+  :: (Ptr RawTTUBE) -> IO CString
+foreign import ccall "HROOT.h TTUBE_Draw" c_ttube_draw 
+  :: (Ptr RawTTUBE) -> CString -> IO ()
+foreign import ccall "HROOT.h TTUBE_FindObject" c_ttube_findobject 
+  :: (Ptr RawTTUBE) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TTUBE_SaveAs" c_ttube_saveas 
+  :: (Ptr RawTTUBE) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TTUBE_Write" c_ttube_write 
+  :: (Ptr RawTTUBE) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TTUBE_IsA" c_ttube_isa 
+  :: (Ptr RawTTUBE) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TTUBE_printObj" c_ttube_printobj 
+  :: (Ptr RawTTUBE) -> CString -> IO ()
+foreign import ccall "HROOT.h TTUBE_delete" c_ttube_delete 
+  :: (Ptr RawTTUBE) -> IO ()
+foreign import ccall "HROOT.h TTUBE_newTTUBE" c_ttube_newttube 
+  :: CString -> CString -> CString -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTTUBE)
+
+foreign import ccall "HROOT.h TPCON_SetName" c_tpcon_setname 
+  :: (Ptr RawTPCON) -> CString -> IO ()
+foreign import ccall "HROOT.h TPCON_SetNameTitle" c_tpcon_setnametitle 
+  :: (Ptr RawTPCON) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPCON_SetTitle" c_tpcon_settitle 
+  :: (Ptr RawTPCON) -> CString -> IO ()
+foreign import ccall "HROOT.h TPCON_SetLineColor" c_tpcon_setlinecolor 
+  :: (Ptr RawTPCON) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPCON_SetFillColor" c_tpcon_setfillcolor 
+  :: (Ptr RawTPCON) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPCON_SetFillStyle" c_tpcon_setfillstyle 
+  :: (Ptr RawTPCON) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPCON_GetName" c_tpcon_getname 
+  :: (Ptr RawTPCON) -> IO CString
+foreign import ccall "HROOT.h TPCON_Draw" c_tpcon_draw 
+  :: (Ptr RawTPCON) -> CString -> IO ()
+foreign import ccall "HROOT.h TPCON_FindObject" c_tpcon_findobject 
+  :: (Ptr RawTPCON) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPCON_SaveAs" c_tpcon_saveas 
+  :: (Ptr RawTPCON) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPCON_Write" c_tpcon_write 
+  :: (Ptr RawTPCON) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPCON_IsA" c_tpcon_isa 
+  :: (Ptr RawTPCON) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPCON_printObj" c_tpcon_printobj 
+  :: (Ptr RawTPCON) -> CString -> IO ()
+foreign import ccall "HROOT.h TPCON_delete" c_tpcon_delete 
+  :: (Ptr RawTPCON) -> IO ()
+foreign import ccall "HROOT.h TPCON_newTPCON" c_tpcon_newtpcon 
+  :: CString -> CString -> CString -> CDouble -> CDouble -> CInt -> IO (Ptr RawTPCON)
+
+foreign import ccall "HROOT.h TSPHE_SetName" c_tsphe_setname 
+  :: (Ptr RawTSPHE) -> CString -> IO ()
+foreign import ccall "HROOT.h TSPHE_SetNameTitle" c_tsphe_setnametitle 
+  :: (Ptr RawTSPHE) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TSPHE_SetTitle" c_tsphe_settitle 
+  :: (Ptr RawTSPHE) -> CString -> IO ()
+foreign import ccall "HROOT.h TSPHE_SetLineColor" c_tsphe_setlinecolor 
+  :: (Ptr RawTSPHE) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSPHE_SetFillColor" c_tsphe_setfillcolor 
+  :: (Ptr RawTSPHE) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSPHE_SetFillStyle" c_tsphe_setfillstyle 
+  :: (Ptr RawTSPHE) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSPHE_GetName" c_tsphe_getname 
+  :: (Ptr RawTSPHE) -> IO CString
+foreign import ccall "HROOT.h TSPHE_Draw" c_tsphe_draw 
+  :: (Ptr RawTSPHE) -> CString -> IO ()
+foreign import ccall "HROOT.h TSPHE_FindObject" c_tsphe_findobject 
+  :: (Ptr RawTSPHE) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TSPHE_SaveAs" c_tsphe_saveas 
+  :: (Ptr RawTSPHE) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TSPHE_Write" c_tsphe_write 
+  :: (Ptr RawTSPHE) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TSPHE_IsA" c_tsphe_isa 
+  :: (Ptr RawTSPHE) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TSPHE_printObj" c_tsphe_printobj 
+  :: (Ptr RawTSPHE) -> CString -> IO ()
+foreign import ccall "HROOT.h TSPHE_delete" c_tsphe_delete 
+  :: (Ptr RawTSPHE) -> IO ()
+foreign import ccall "HROOT.h TSPHE_newTSPHE" c_tsphe_newtsphe 
+  :: CString -> CString -> CString -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTSPHE)
+
+foreign import ccall "HROOT.h TXTRU_SetName" c_txtru_setname 
+  :: (Ptr RawTXTRU) -> CString -> IO ()
+foreign import ccall "HROOT.h TXTRU_SetNameTitle" c_txtru_setnametitle 
+  :: (Ptr RawTXTRU) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TXTRU_SetTitle" c_txtru_settitle 
+  :: (Ptr RawTXTRU) -> CString -> IO ()
+foreign import ccall "HROOT.h TXTRU_SetLineColor" c_txtru_setlinecolor 
+  :: (Ptr RawTXTRU) -> CInt -> IO ()
+foreign import ccall "HROOT.h TXTRU_SetFillColor" c_txtru_setfillcolor 
+  :: (Ptr RawTXTRU) -> CInt -> IO ()
+foreign import ccall "HROOT.h TXTRU_SetFillStyle" c_txtru_setfillstyle 
+  :: (Ptr RawTXTRU) -> CInt -> IO ()
+foreign import ccall "HROOT.h TXTRU_GetName" c_txtru_getname 
+  :: (Ptr RawTXTRU) -> IO CString
+foreign import ccall "HROOT.h TXTRU_Draw" c_txtru_draw 
+  :: (Ptr RawTXTRU) -> CString -> IO ()
+foreign import ccall "HROOT.h TXTRU_FindObject" c_txtru_findobject 
+  :: (Ptr RawTXTRU) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TXTRU_SaveAs" c_txtru_saveas 
+  :: (Ptr RawTXTRU) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TXTRU_Write" c_txtru_write 
+  :: (Ptr RawTXTRU) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TXTRU_IsA" c_txtru_isa 
+  :: (Ptr RawTXTRU) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TXTRU_printObj" c_txtru_printobj 
+  :: (Ptr RawTXTRU) -> CString -> IO ()
+foreign import ccall "HROOT.h TXTRU_delete" c_txtru_delete 
+  :: (Ptr RawTXTRU) -> IO ()
+foreign import ccall "HROOT.h TXTRU_newTXTRU" c_txtru_newtxtru 
+  :: CString -> CString -> CString -> CInt -> CInt -> IO (Ptr RawTXTRU)
+
+foreign import ccall "HROOT.h TBox_GetName" c_tbox_getname 
+  :: (Ptr RawTBox) -> IO CString
+foreign import ccall "HROOT.h TBox_Draw" c_tbox_draw 
+  :: (Ptr RawTBox) -> CString -> IO ()
+foreign import ccall "HROOT.h TBox_FindObject" c_tbox_findobject 
+  :: (Ptr RawTBox) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TBox_SaveAs" c_tbox_saveas 
+  :: (Ptr RawTBox) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TBox_Write" c_tbox_write 
+  :: (Ptr RawTBox) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TBox_IsA" c_tbox_isa 
+  :: (Ptr RawTBox) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TBox_printObj" c_tbox_printobj 
+  :: (Ptr RawTBox) -> CString -> IO ()
+foreign import ccall "HROOT.h TBox_SetLineColor" c_tbox_setlinecolor 
+  :: (Ptr RawTBox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TBox_SetFillColor" c_tbox_setfillcolor 
+  :: (Ptr RawTBox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TBox_SetFillStyle" c_tbox_setfillstyle 
+  :: (Ptr RawTBox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TBox_delete" c_tbox_delete 
+  :: (Ptr RawTBox) -> IO ()
+foreign import ccall "HROOT.h TBox_newTBox" c_tbox_newtbox 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTBox)
+
+foreign import ccall "HROOT.h TPave_GetName" c_tpave_getname 
+  :: (Ptr RawTPave) -> IO CString
+foreign import ccall "HROOT.h TPave_Draw" c_tpave_draw 
+  :: (Ptr RawTPave) -> CString -> IO ()
+foreign import ccall "HROOT.h TPave_FindObject" c_tpave_findobject 
+  :: (Ptr RawTPave) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPave_SaveAs" c_tpave_saveas 
+  :: (Ptr RawTPave) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPave_Write" c_tpave_write 
+  :: (Ptr RawTPave) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPave_IsA" c_tpave_isa 
+  :: (Ptr RawTPave) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPave_printObj" c_tpave_printobj 
+  :: (Ptr RawTPave) -> CString -> IO ()
+foreign import ccall "HROOT.h TPave_SetLineColor" c_tpave_setlinecolor 
+  :: (Ptr RawTPave) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPave_SetFillColor" c_tpave_setfillcolor 
+  :: (Ptr RawTPave) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPave_SetFillStyle" c_tpave_setfillstyle 
+  :: (Ptr RawTPave) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPave_delete" c_tpave_delete 
+  :: (Ptr RawTPave) -> IO ()
+foreign import ccall "HROOT.h TPave_newTPave" c_tpave_newtpave 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CString -> IO (Ptr RawTPave)
+
+foreign import ccall "HROOT.h TPaveText_SetTextColor" c_tpavetext_settextcolor 
+  :: (Ptr RawTPaveText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveText_SetTextAlign" c_tpavetext_settextalign 
+  :: (Ptr RawTPaveText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveText_SetTextSize" c_tpavetext_settextsize 
+  :: (Ptr RawTPaveText) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TPaveText_GetName" c_tpavetext_getname 
+  :: (Ptr RawTPaveText) -> IO CString
+foreign import ccall "HROOT.h TPaveText_Draw" c_tpavetext_draw 
+  :: (Ptr RawTPaveText) -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveText_FindObject" c_tpavetext_findobject 
+  :: (Ptr RawTPaveText) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPaveText_SaveAs" c_tpavetext_saveas 
+  :: (Ptr RawTPaveText) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveText_Write" c_tpavetext_write 
+  :: (Ptr RawTPaveText) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPaveText_IsA" c_tpavetext_isa 
+  :: (Ptr RawTPaveText) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPaveText_printObj" c_tpavetext_printobj 
+  :: (Ptr RawTPaveText) -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveText_SetLineColor" c_tpavetext_setlinecolor 
+  :: (Ptr RawTPaveText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveText_SetFillColor" c_tpavetext_setfillcolor 
+  :: (Ptr RawTPaveText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveText_SetFillStyle" c_tpavetext_setfillstyle 
+  :: (Ptr RawTPaveText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveText_delete" c_tpavetext_delete 
+  :: (Ptr RawTPaveText) -> IO ()
+foreign import ccall "HROOT.h TPaveText_newTPaveText" c_tpavetext_newtpavetext 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CString -> IO (Ptr RawTPaveText)
+
+foreign import ccall "HROOT.h TDiamond_SetTextColor" c_tdiamond_settextcolor 
+  :: (Ptr RawTDiamond) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDiamond_SetTextAlign" c_tdiamond_settextalign 
+  :: (Ptr RawTDiamond) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDiamond_SetTextSize" c_tdiamond_settextsize 
+  :: (Ptr RawTDiamond) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TDiamond_GetName" c_tdiamond_getname 
+  :: (Ptr RawTDiamond) -> IO CString
+foreign import ccall "HROOT.h TDiamond_Draw" c_tdiamond_draw 
+  :: (Ptr RawTDiamond) -> CString -> IO ()
+foreign import ccall "HROOT.h TDiamond_FindObject" c_tdiamond_findobject 
+  :: (Ptr RawTDiamond) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TDiamond_SaveAs" c_tdiamond_saveas 
+  :: (Ptr RawTDiamond) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TDiamond_Write" c_tdiamond_write 
+  :: (Ptr RawTDiamond) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TDiamond_IsA" c_tdiamond_isa 
+  :: (Ptr RawTDiamond) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TDiamond_printObj" c_tdiamond_printobj 
+  :: (Ptr RawTDiamond) -> CString -> IO ()
+foreign import ccall "HROOT.h TDiamond_SetLineColor" c_tdiamond_setlinecolor 
+  :: (Ptr RawTDiamond) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDiamond_SetFillColor" c_tdiamond_setfillcolor 
+  :: (Ptr RawTDiamond) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDiamond_SetFillStyle" c_tdiamond_setfillstyle 
+  :: (Ptr RawTDiamond) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDiamond_delete" c_tdiamond_delete 
+  :: (Ptr RawTDiamond) -> IO ()
+foreign import ccall "HROOT.h TDiamond_newTDiamond" c_tdiamond_newtdiamond 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTDiamond)
+
+foreign import ccall "HROOT.h TPaveStats_SetTextColor" c_tpavestats_settextcolor 
+  :: (Ptr RawTPaveStats) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveStats_SetTextAlign" c_tpavestats_settextalign 
+  :: (Ptr RawTPaveStats) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveStats_SetTextSize" c_tpavestats_settextsize 
+  :: (Ptr RawTPaveStats) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TPaveStats_GetName" c_tpavestats_getname 
+  :: (Ptr RawTPaveStats) -> IO CString
+foreign import ccall "HROOT.h TPaveStats_Draw" c_tpavestats_draw 
+  :: (Ptr RawTPaveStats) -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveStats_FindObject" c_tpavestats_findobject 
+  :: (Ptr RawTPaveStats) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPaveStats_SaveAs" c_tpavestats_saveas 
+  :: (Ptr RawTPaveStats) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveStats_Write" c_tpavestats_write 
+  :: (Ptr RawTPaveStats) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPaveStats_IsA" c_tpavestats_isa 
+  :: (Ptr RawTPaveStats) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPaveStats_printObj" c_tpavestats_printobj 
+  :: (Ptr RawTPaveStats) -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveStats_SetLineColor" c_tpavestats_setlinecolor 
+  :: (Ptr RawTPaveStats) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveStats_SetFillColor" c_tpavestats_setfillcolor 
+  :: (Ptr RawTPaveStats) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveStats_SetFillStyle" c_tpavestats_setfillstyle 
+  :: (Ptr RawTPaveStats) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveStats_delete" c_tpavestats_delete 
+  :: (Ptr RawTPaveStats) -> IO ()
+foreign import ccall "HROOT.h TPaveStats_newTPaveStats" c_tpavestats_newtpavestats 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CString -> IO (Ptr RawTPaveStats)
+
+foreign import ccall "HROOT.h TPavesText_SetTextColor" c_tpavestext_settextcolor 
+  :: (Ptr RawTPavesText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPavesText_SetTextAlign" c_tpavestext_settextalign 
+  :: (Ptr RawTPavesText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPavesText_SetTextSize" c_tpavestext_settextsize 
+  :: (Ptr RawTPavesText) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TPavesText_GetName" c_tpavestext_getname 
+  :: (Ptr RawTPavesText) -> IO CString
+foreign import ccall "HROOT.h TPavesText_Draw" c_tpavestext_draw 
+  :: (Ptr RawTPavesText) -> CString -> IO ()
+foreign import ccall "HROOT.h TPavesText_FindObject" c_tpavestext_findobject 
+  :: (Ptr RawTPavesText) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPavesText_SaveAs" c_tpavestext_saveas 
+  :: (Ptr RawTPavesText) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPavesText_Write" c_tpavestext_write 
+  :: (Ptr RawTPavesText) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPavesText_IsA" c_tpavestext_isa 
+  :: (Ptr RawTPavesText) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPavesText_printObj" c_tpavestext_printobj 
+  :: (Ptr RawTPavesText) -> CString -> IO ()
+foreign import ccall "HROOT.h TPavesText_SetLineColor" c_tpavestext_setlinecolor 
+  :: (Ptr RawTPavesText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPavesText_SetFillColor" c_tpavestext_setfillcolor 
+  :: (Ptr RawTPavesText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPavesText_SetFillStyle" c_tpavestext_setfillstyle 
+  :: (Ptr RawTPavesText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPavesText_delete" c_tpavestext_delete 
+  :: (Ptr RawTPavesText) -> IO ()
+foreign import ccall "HROOT.h TPavesText_newTPavesText" c_tpavestext_newtpavestext 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CString -> IO (Ptr RawTPavesText)
+
+foreign import ccall "HROOT.h TLegend_SetTextColor" c_tlegend_settextcolor 
+  :: (Ptr RawTLegend) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegend_SetTextAlign" c_tlegend_settextalign 
+  :: (Ptr RawTLegend) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegend_SetTextSize" c_tlegend_settextsize 
+  :: (Ptr RawTLegend) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TLegend_GetName" c_tlegend_getname 
+  :: (Ptr RawTLegend) -> IO CString
+foreign import ccall "HROOT.h TLegend_Draw" c_tlegend_draw 
+  :: (Ptr RawTLegend) -> CString -> IO ()
+foreign import ccall "HROOT.h TLegend_FindObject" c_tlegend_findobject 
+  :: (Ptr RawTLegend) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TLegend_SaveAs" c_tlegend_saveas 
+  :: (Ptr RawTLegend) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TLegend_Write" c_tlegend_write 
+  :: (Ptr RawTLegend) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TLegend_IsA" c_tlegend_isa 
+  :: (Ptr RawTLegend) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TLegend_printObj" c_tlegend_printobj 
+  :: (Ptr RawTLegend) -> CString -> IO ()
+foreign import ccall "HROOT.h TLegend_SetLineColor" c_tlegend_setlinecolor 
+  :: (Ptr RawTLegend) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegend_SetFillColor" c_tlegend_setfillcolor 
+  :: (Ptr RawTLegend) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegend_SetFillStyle" c_tlegend_setfillstyle 
+  :: (Ptr RawTLegend) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegend_delete" c_tlegend_delete 
+  :: (Ptr RawTLegend) -> IO ()
+foreign import ccall "HROOT.h TLegend_newTLegend" c_tlegend_newtlegend 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CString -> CString -> IO (Ptr RawTLegend)
+foreign import ccall "HROOT.h TLegend_AddEntry" c_tlegend_addentry 
+  :: (Ptr RawTLegend) -> (Ptr RawTObject) -> CString -> CString -> IO (Ptr RawTLegendEntry)
+
+foreign import ccall "HROOT.h TLegendEntry_GetName" c_tlegendentry_getname 
+  :: (Ptr RawTLegendEntry) -> IO CString
+foreign import ccall "HROOT.h TLegendEntry_Draw" c_tlegendentry_draw 
+  :: (Ptr RawTLegendEntry) -> CString -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_FindObject" c_tlegendentry_findobject 
+  :: (Ptr RawTLegendEntry) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TLegendEntry_SaveAs" c_tlegendentry_saveas 
+  :: (Ptr RawTLegendEntry) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_Write" c_tlegendentry_write 
+  :: (Ptr RawTLegendEntry) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TLegendEntry_IsA" c_tlegendentry_isa 
+  :: (Ptr RawTLegendEntry) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TLegendEntry_printObj" c_tlegendentry_printobj 
+  :: (Ptr RawTLegendEntry) -> CString -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_SetTextColor" c_tlegendentry_settextcolor 
+  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_SetTextAlign" c_tlegendentry_settextalign 
+  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_SetTextSize" c_tlegendentry_settextsize 
+  :: (Ptr RawTLegendEntry) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_SetLineColor" c_tlegendentry_setlinecolor 
+  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_SetFillColor" c_tlegendentry_setfillcolor 
+  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_SetFillStyle" c_tlegendentry_setfillstyle 
+  :: (Ptr RawTLegendEntry) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLegendEntry_delete" c_tlegendentry_delete 
+  :: (Ptr RawTLegendEntry) -> IO ()
+
+foreign import ccall "HROOT.h TPaveLabel_SetTextColor" c_tpavelabel_settextcolor 
+  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_SetTextAlign" c_tpavelabel_settextalign 
+  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_SetTextSize" c_tpavelabel_settextsize 
+  :: (Ptr RawTPaveLabel) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_GetName" c_tpavelabel_getname 
+  :: (Ptr RawTPaveLabel) -> IO CString
+foreign import ccall "HROOT.h TPaveLabel_Draw" c_tpavelabel_draw 
+  :: (Ptr RawTPaveLabel) -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_FindObject" c_tpavelabel_findobject 
+  :: (Ptr RawTPaveLabel) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPaveLabel_SaveAs" c_tpavelabel_saveas 
+  :: (Ptr RawTPaveLabel) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_Write" c_tpavelabel_write 
+  :: (Ptr RawTPaveLabel) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPaveLabel_IsA" c_tpavelabel_isa 
+  :: (Ptr RawTPaveLabel) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPaveLabel_printObj" c_tpavelabel_printobj 
+  :: (Ptr RawTPaveLabel) -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_SetLineColor" c_tpavelabel_setlinecolor 
+  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_SetFillColor" c_tpavelabel_setfillcolor 
+  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_SetFillStyle" c_tpavelabel_setfillstyle 
+  :: (Ptr RawTPaveLabel) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_delete" c_tpavelabel_delete 
+  :: (Ptr RawTPaveLabel) -> IO ()
+foreign import ccall "HROOT.h TPaveLabel_newTPaveLabel" c_tpavelabel_newtpavelabel 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CString -> CString -> IO (Ptr RawTPaveLabel)
+
+foreign import ccall "HROOT.h TPaveClass_SetTextColor" c_tpaveclass_settextcolor 
+  :: (Ptr RawTPaveClass) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveClass_SetTextAlign" c_tpaveclass_settextalign 
+  :: (Ptr RawTPaveClass) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveClass_SetTextSize" c_tpaveclass_settextsize 
+  :: (Ptr RawTPaveClass) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TPaveClass_GetName" c_tpaveclass_getname 
+  :: (Ptr RawTPaveClass) -> IO CString
+foreign import ccall "HROOT.h TPaveClass_Draw" c_tpaveclass_draw 
+  :: (Ptr RawTPaveClass) -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveClass_FindObject" c_tpaveclass_findobject 
+  :: (Ptr RawTPaveClass) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPaveClass_SaveAs" c_tpaveclass_saveas 
+  :: (Ptr RawTPaveClass) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveClass_Write" c_tpaveclass_write 
+  :: (Ptr RawTPaveClass) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPaveClass_IsA" c_tpaveclass_isa 
+  :: (Ptr RawTPaveClass) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPaveClass_printObj" c_tpaveclass_printobj 
+  :: (Ptr RawTPaveClass) -> CString -> IO ()
+foreign import ccall "HROOT.h TPaveClass_SetLineColor" c_tpaveclass_setlinecolor 
+  :: (Ptr RawTPaveClass) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveClass_SetFillColor" c_tpaveclass_setfillcolor 
+  :: (Ptr RawTPaveClass) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveClass_SetFillStyle" c_tpaveclass_setfillstyle 
+  :: (Ptr RawTPaveClass) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPaveClass_delete" c_tpaveclass_delete 
+  :: (Ptr RawTPaveClass) -> IO ()
+
+foreign import ccall "HROOT.h TWbox_GetName" c_twbox_getname 
+  :: (Ptr RawTWbox) -> IO CString
+foreign import ccall "HROOT.h TWbox_Draw" c_twbox_draw 
+  :: (Ptr RawTWbox) -> CString -> IO ()
+foreign import ccall "HROOT.h TWbox_FindObject" c_twbox_findobject 
+  :: (Ptr RawTWbox) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TWbox_SaveAs" c_twbox_saveas 
+  :: (Ptr RawTWbox) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TWbox_Write" c_twbox_write 
+  :: (Ptr RawTWbox) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TWbox_IsA" c_twbox_isa 
+  :: (Ptr RawTWbox) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TWbox_printObj" c_twbox_printobj 
+  :: (Ptr RawTWbox) -> CString -> IO ()
+foreign import ccall "HROOT.h TWbox_SetLineColor" c_twbox_setlinecolor 
+  :: (Ptr RawTWbox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TWbox_SetFillColor" c_twbox_setfillcolor 
+  :: (Ptr RawTWbox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TWbox_SetFillStyle" c_twbox_setfillstyle 
+  :: (Ptr RawTWbox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TWbox_delete" c_twbox_delete 
+  :: (Ptr RawTWbox) -> IO ()
+foreign import ccall "HROOT.h TWbox_newTWbox" c_twbox_newtwbox 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CInt -> CInt -> IO (Ptr RawTWbox)
+foreign import ccall "HROOT.h TWbox_SetBorderMode" c_twbox_setbordermode 
+  :: (Ptr RawTWbox) -> CInt -> IO ()
+
+foreign import ccall "HROOT.h TFrame_SetBorderMode" c_tframe_setbordermode 
+  :: (Ptr RawTFrame) -> CInt -> IO ()
+foreign import ccall "HROOT.h TFrame_GetName" c_tframe_getname 
+  :: (Ptr RawTFrame) -> IO CString
+foreign import ccall "HROOT.h TFrame_Draw" c_tframe_draw 
+  :: (Ptr RawTFrame) -> CString -> IO ()
+foreign import ccall "HROOT.h TFrame_FindObject" c_tframe_findobject 
+  :: (Ptr RawTFrame) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TFrame_SaveAs" c_tframe_saveas 
+  :: (Ptr RawTFrame) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TFrame_Write" c_tframe_write 
+  :: (Ptr RawTFrame) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TFrame_IsA" c_tframe_isa 
+  :: (Ptr RawTFrame) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TFrame_printObj" c_tframe_printobj 
+  :: (Ptr RawTFrame) -> CString -> IO ()
+foreign import ccall "HROOT.h TFrame_SetLineColor" c_tframe_setlinecolor 
+  :: (Ptr RawTFrame) -> CInt -> IO ()
+foreign import ccall "HROOT.h TFrame_SetFillColor" c_tframe_setfillcolor 
+  :: (Ptr RawTFrame) -> CInt -> IO ()
+foreign import ccall "HROOT.h TFrame_SetFillStyle" c_tframe_setfillstyle 
+  :: (Ptr RawTFrame) -> CInt -> IO ()
+foreign import ccall "HROOT.h TFrame_delete" c_tframe_delete 
+  :: (Ptr RawTFrame) -> IO ()
+foreign import ccall "HROOT.h TFrame_newTFrame" c_tframe_newtframe 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTFrame)
+
+foreign import ccall "HROOT.h TSliderBox_SetBorderMode" c_tsliderbox_setbordermode 
+  :: (Ptr RawTSliderBox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSliderBox_GetName" c_tsliderbox_getname 
+  :: (Ptr RawTSliderBox) -> IO CString
+foreign import ccall "HROOT.h TSliderBox_Draw" c_tsliderbox_draw 
+  :: (Ptr RawTSliderBox) -> CString -> IO ()
+foreign import ccall "HROOT.h TSliderBox_FindObject" c_tsliderbox_findobject 
+  :: (Ptr RawTSliderBox) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TSliderBox_SaveAs" c_tsliderbox_saveas 
+  :: (Ptr RawTSliderBox) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TSliderBox_Write" c_tsliderbox_write 
+  :: (Ptr RawTSliderBox) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TSliderBox_IsA" c_tsliderbox_isa 
+  :: (Ptr RawTSliderBox) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TSliderBox_printObj" c_tsliderbox_printobj 
+  :: (Ptr RawTSliderBox) -> CString -> IO ()
+foreign import ccall "HROOT.h TSliderBox_SetLineColor" c_tsliderbox_setlinecolor 
+  :: (Ptr RawTSliderBox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSliderBox_SetFillColor" c_tsliderbox_setfillcolor 
+  :: (Ptr RawTSliderBox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSliderBox_SetFillStyle" c_tsliderbox_setfillstyle 
+  :: (Ptr RawTSliderBox) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSliderBox_delete" c_tsliderbox_delete 
+  :: (Ptr RawTSliderBox) -> IO ()
+foreign import ccall "HROOT.h TSliderBox_newTSliderBox" c_tsliderbox_newtsliderbox 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CInt -> CInt -> CInt -> IO (Ptr RawTSliderBox)
+
+foreign import ccall "HROOT.h TTree_SetName" c_ttree_setname 
+  :: (Ptr RawTTree) -> CString -> IO ()
+foreign import ccall "HROOT.h TTree_SetNameTitle" c_ttree_setnametitle 
+  :: (Ptr RawTTree) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TTree_SetTitle" c_ttree_settitle 
+  :: (Ptr RawTTree) -> CString -> IO ()
+foreign import ccall "HROOT.h TTree_SetLineColor" c_ttree_setlinecolor 
+  :: (Ptr RawTTree) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTree_SetFillColor" c_ttree_setfillcolor 
+  :: (Ptr RawTTree) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTree_SetFillStyle" c_ttree_setfillstyle 
+  :: (Ptr RawTTree) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTree_GetName" c_ttree_getname 
+  :: (Ptr RawTTree) -> IO CString
+foreign import ccall "HROOT.h TTree_Draw" c_ttree_draw 
+  :: (Ptr RawTTree) -> CString -> IO ()
+foreign import ccall "HROOT.h TTree_FindObject" c_ttree_findobject 
+  :: (Ptr RawTTree) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TTree_SaveAs" c_ttree_saveas 
+  :: (Ptr RawTTree) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TTree_Write" c_ttree_write 
+  :: (Ptr RawTTree) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TTree_IsA" c_ttree_isa 
+  :: (Ptr RawTTree) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TTree_printObj" c_ttree_printobj 
+  :: (Ptr RawTTree) -> CString -> IO ()
+foreign import ccall "HROOT.h TTree_delete" c_ttree_delete 
+  :: (Ptr RawTTree) -> IO ()
+foreign import ccall "HROOT.h TTree_newTTree" c_ttree_newttree 
+  :: CString -> CString -> CInt -> IO (Ptr RawTTree)
+
+foreign import ccall "HROOT.h TChain_SetName" c_tchain_setname 
+  :: (Ptr RawTChain) -> CString -> IO ()
+foreign import ccall "HROOT.h TChain_SetNameTitle" c_tchain_setnametitle 
+  :: (Ptr RawTChain) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TChain_SetTitle" c_tchain_settitle 
+  :: (Ptr RawTChain) -> CString -> IO ()
+foreign import ccall "HROOT.h TChain_SetLineColor" c_tchain_setlinecolor 
+  :: (Ptr RawTChain) -> CInt -> IO ()
+foreign import ccall "HROOT.h TChain_SetFillColor" c_tchain_setfillcolor 
+  :: (Ptr RawTChain) -> CInt -> IO ()
+foreign import ccall "HROOT.h TChain_SetFillStyle" c_tchain_setfillstyle 
+  :: (Ptr RawTChain) -> CInt -> IO ()
+foreign import ccall "HROOT.h TChain_GetName" c_tchain_getname 
+  :: (Ptr RawTChain) -> IO CString
+foreign import ccall "HROOT.h TChain_Draw" c_tchain_draw 
+  :: (Ptr RawTChain) -> CString -> IO ()
+foreign import ccall "HROOT.h TChain_FindObject" c_tchain_findobject 
+  :: (Ptr RawTChain) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TChain_SaveAs" c_tchain_saveas 
+  :: (Ptr RawTChain) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TChain_Write" c_tchain_write 
+  :: (Ptr RawTChain) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TChain_IsA" c_tchain_isa 
+  :: (Ptr RawTChain) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TChain_printObj" c_tchain_printobj 
+  :: (Ptr RawTChain) -> CString -> IO ()
+foreign import ccall "HROOT.h TChain_delete" c_tchain_delete 
+  :: (Ptr RawTChain) -> IO ()
+foreign import ccall "HROOT.h TChain_newTChain" c_tchain_newtchain 
+  :: CString -> CString -> IO (Ptr RawTChain)
+
+foreign import ccall "HROOT.h TNtuple_SetName" c_tntuple_setname 
+  :: (Ptr RawTNtuple) -> CString -> IO ()
+foreign import ccall "HROOT.h TNtuple_SetNameTitle" c_tntuple_setnametitle 
+  :: (Ptr RawTNtuple) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TNtuple_SetTitle" c_tntuple_settitle 
+  :: (Ptr RawTNtuple) -> CString -> IO ()
+foreign import ccall "HROOT.h TNtuple_SetLineColor" c_tntuple_setlinecolor 
+  :: (Ptr RawTNtuple) -> CInt -> IO ()
+foreign import ccall "HROOT.h TNtuple_SetFillColor" c_tntuple_setfillcolor 
+  :: (Ptr RawTNtuple) -> CInt -> IO ()
+foreign import ccall "HROOT.h TNtuple_SetFillStyle" c_tntuple_setfillstyle 
+  :: (Ptr RawTNtuple) -> CInt -> IO ()
+foreign import ccall "HROOT.h TNtuple_GetName" c_tntuple_getname 
+  :: (Ptr RawTNtuple) -> IO CString
+foreign import ccall "HROOT.h TNtuple_Draw" c_tntuple_draw 
+  :: (Ptr RawTNtuple) -> CString -> IO ()
+foreign import ccall "HROOT.h TNtuple_FindObject" c_tntuple_findobject 
+  :: (Ptr RawTNtuple) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TNtuple_SaveAs" c_tntuple_saveas 
+  :: (Ptr RawTNtuple) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TNtuple_Write" c_tntuple_write 
+  :: (Ptr RawTNtuple) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TNtuple_IsA" c_tntuple_isa 
+  :: (Ptr RawTNtuple) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TNtuple_printObj" c_tntuple_printobj 
+  :: (Ptr RawTNtuple) -> CString -> IO ()
+foreign import ccall "HROOT.h TNtuple_delete" c_tntuple_delete 
+  :: (Ptr RawTNtuple) -> IO ()
+foreign import ccall "HROOT.h TNtuple_newTNtuple" c_tntuple_newtntuple 
+  :: CString -> CString -> CString -> CInt -> IO (Ptr RawTNtuple)
+
+foreign import ccall "HROOT.h TNtupleD_SetName" c_tntupled_setname 
+  :: (Ptr RawTNtupleD) -> CString -> IO ()
+foreign import ccall "HROOT.h TNtupleD_SetNameTitle" c_tntupled_setnametitle 
+  :: (Ptr RawTNtupleD) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TNtupleD_SetTitle" c_tntupled_settitle 
+  :: (Ptr RawTNtupleD) -> CString -> IO ()
+foreign import ccall "HROOT.h TNtupleD_SetLineColor" c_tntupled_setlinecolor 
+  :: (Ptr RawTNtupleD) -> CInt -> IO ()
+foreign import ccall "HROOT.h TNtupleD_SetFillColor" c_tntupled_setfillcolor 
+  :: (Ptr RawTNtupleD) -> CInt -> IO ()
+foreign import ccall "HROOT.h TNtupleD_SetFillStyle" c_tntupled_setfillstyle 
+  :: (Ptr RawTNtupleD) -> CInt -> IO ()
+foreign import ccall "HROOT.h TNtupleD_GetName" c_tntupled_getname 
+  :: (Ptr RawTNtupleD) -> IO CString
+foreign import ccall "HROOT.h TNtupleD_Draw" c_tntupled_draw 
+  :: (Ptr RawTNtupleD) -> CString -> IO ()
+foreign import ccall "HROOT.h TNtupleD_FindObject" c_tntupled_findobject 
+  :: (Ptr RawTNtupleD) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TNtupleD_SaveAs" c_tntupled_saveas 
+  :: (Ptr RawTNtupleD) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TNtupleD_Write" c_tntupled_write 
+  :: (Ptr RawTNtupleD) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TNtupleD_IsA" c_tntupled_isa 
+  :: (Ptr RawTNtupleD) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TNtupleD_printObj" c_tntupled_printobj 
+  :: (Ptr RawTNtupleD) -> CString -> IO ()
+foreign import ccall "HROOT.h TNtupleD_delete" c_tntupled_delete 
+  :: (Ptr RawTNtupleD) -> IO ()
+foreign import ccall "HROOT.h TNtupleD_newTNtupleD" c_tntupled_newtntupled 
+  :: CString -> CString -> CString -> CInt -> IO (Ptr RawTNtupleD)
+
+foreign import ccall "HROOT.h TTreeSQL_SetName" c_ttreesql_setname 
+  :: (Ptr RawTTreeSQL) -> CString -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_SetNameTitle" c_ttreesql_setnametitle 
+  :: (Ptr RawTTreeSQL) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_SetTitle" c_ttreesql_settitle 
+  :: (Ptr RawTTreeSQL) -> CString -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_SetLineColor" c_ttreesql_setlinecolor 
+  :: (Ptr RawTTreeSQL) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_SetFillColor" c_ttreesql_setfillcolor 
+  :: (Ptr RawTTreeSQL) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_SetFillStyle" c_ttreesql_setfillstyle 
+  :: (Ptr RawTTreeSQL) -> CInt -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_GetName" c_ttreesql_getname 
+  :: (Ptr RawTTreeSQL) -> IO CString
+foreign import ccall "HROOT.h TTreeSQL_Draw" c_ttreesql_draw 
+  :: (Ptr RawTTreeSQL) -> CString -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_FindObject" c_ttreesql_findobject 
+  :: (Ptr RawTTreeSQL) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TTreeSQL_SaveAs" c_ttreesql_saveas 
+  :: (Ptr RawTTreeSQL) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_Write" c_ttreesql_write 
+  :: (Ptr RawTTreeSQL) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TTreeSQL_IsA" c_ttreesql_isa 
+  :: (Ptr RawTTreeSQL) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TTreeSQL_printObj" c_ttreesql_printobj 
+  :: (Ptr RawTTreeSQL) -> CString -> IO ()
+foreign import ccall "HROOT.h TTreeSQL_delete" c_ttreesql_delete 
+  :: (Ptr RawTTreeSQL) -> IO ()
+
+foreign import ccall "HROOT.h TPolyLine_GetName" c_tpolyline_getname 
+  :: (Ptr RawTPolyLine) -> IO CString
+foreign import ccall "HROOT.h TPolyLine_Draw" c_tpolyline_draw 
+  :: (Ptr RawTPolyLine) -> CString -> IO ()
+foreign import ccall "HROOT.h TPolyLine_FindObject" c_tpolyline_findobject 
+  :: (Ptr RawTPolyLine) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPolyLine_SaveAs" c_tpolyline_saveas 
+  :: (Ptr RawTPolyLine) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPolyLine_Write" c_tpolyline_write 
+  :: (Ptr RawTPolyLine) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPolyLine_IsA" c_tpolyline_isa 
+  :: (Ptr RawTPolyLine) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPolyLine_printObj" c_tpolyline_printobj 
+  :: (Ptr RawTPolyLine) -> CString -> IO ()
+foreign import ccall "HROOT.h TPolyLine_SetLineColor" c_tpolyline_setlinecolor 
+  :: (Ptr RawTPolyLine) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPolyLine_SetFillColor" c_tpolyline_setfillcolor 
+  :: (Ptr RawTPolyLine) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPolyLine_SetFillStyle" c_tpolyline_setfillstyle 
+  :: (Ptr RawTPolyLine) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPolyLine_delete" c_tpolyline_delete 
+  :: (Ptr RawTPolyLine) -> IO ()
+foreign import ccall "HROOT.h TPolyLine_newTPolyLine" c_tpolyline_newtpolyline 
+  :: CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CString -> IO (Ptr RawTPolyLine)
+
+foreign import ccall "HROOT.h TCurlyLine_GetName" c_tcurlyline_getname 
+  :: (Ptr RawTCurlyLine) -> IO CString
+foreign import ccall "HROOT.h TCurlyLine_Draw" c_tcurlyline_draw 
+  :: (Ptr RawTCurlyLine) -> CString -> IO ()
+foreign import ccall "HROOT.h TCurlyLine_FindObject" c_tcurlyline_findobject 
+  :: (Ptr RawTCurlyLine) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TCurlyLine_SaveAs" c_tcurlyline_saveas 
+  :: (Ptr RawTCurlyLine) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TCurlyLine_Write" c_tcurlyline_write 
+  :: (Ptr RawTCurlyLine) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TCurlyLine_IsA" c_tcurlyline_isa 
+  :: (Ptr RawTCurlyLine) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TCurlyLine_printObj" c_tcurlyline_printobj 
+  :: (Ptr RawTCurlyLine) -> CString -> IO ()
+foreign import ccall "HROOT.h TCurlyLine_SetLineColor" c_tcurlyline_setlinecolor 
+  :: (Ptr RawTCurlyLine) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCurlyLine_SetFillColor" c_tcurlyline_setfillcolor 
+  :: (Ptr RawTCurlyLine) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCurlyLine_SetFillStyle" c_tcurlyline_setfillstyle 
+  :: (Ptr RawTCurlyLine) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCurlyLine_delete" c_tcurlyline_delete 
+  :: (Ptr RawTCurlyLine) -> IO ()
+foreign import ccall "HROOT.h TCurlyLine_newTCurlyLine" c_tcurlyline_newtcurlyline 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTCurlyLine)
+
+foreign import ccall "HROOT.h TCurlyArc_GetName" c_tcurlyarc_getname 
+  :: (Ptr RawTCurlyArc) -> IO CString
+foreign import ccall "HROOT.h TCurlyArc_Draw" c_tcurlyarc_draw 
+  :: (Ptr RawTCurlyArc) -> CString -> IO ()
+foreign import ccall "HROOT.h TCurlyArc_FindObject" c_tcurlyarc_findobject 
+  :: (Ptr RawTCurlyArc) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TCurlyArc_SaveAs" c_tcurlyarc_saveas 
+  :: (Ptr RawTCurlyArc) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TCurlyArc_Write" c_tcurlyarc_write 
+  :: (Ptr RawTCurlyArc) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TCurlyArc_IsA" c_tcurlyarc_isa 
+  :: (Ptr RawTCurlyArc) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TCurlyArc_printObj" c_tcurlyarc_printobj 
+  :: (Ptr RawTCurlyArc) -> CString -> IO ()
+foreign import ccall "HROOT.h TCurlyArc_SetLineColor" c_tcurlyarc_setlinecolor 
+  :: (Ptr RawTCurlyArc) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCurlyArc_SetFillColor" c_tcurlyarc_setfillcolor 
+  :: (Ptr RawTCurlyArc) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCurlyArc_SetFillStyle" c_tcurlyarc_setfillstyle 
+  :: (Ptr RawTCurlyArc) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCurlyArc_delete" c_tcurlyarc_delete 
+  :: (Ptr RawTCurlyArc) -> IO ()
+foreign import ccall "HROOT.h TCurlyArc_newTCurlyArc" c_tcurlyarc_newtcurlyarc 
+  :: CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> CDouble -> IO (Ptr RawTCurlyArc)
+
+foreign import ccall "HROOT.h TEfficiency_SetName" c_tefficiency_setname 
+  :: (Ptr RawTEfficiency) -> CString -> IO ()
+foreign import ccall "HROOT.h TEfficiency_SetNameTitle" c_tefficiency_setnametitle 
+  :: (Ptr RawTEfficiency) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TEfficiency_SetTitle" c_tefficiency_settitle 
+  :: (Ptr RawTEfficiency) -> CString -> IO ()
+foreign import ccall "HROOT.h TEfficiency_SetLineColor" c_tefficiency_setlinecolor 
+  :: (Ptr RawTEfficiency) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEfficiency_SetFillColor" c_tefficiency_setfillcolor 
+  :: (Ptr RawTEfficiency) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEfficiency_SetFillStyle" c_tefficiency_setfillstyle 
+  :: (Ptr RawTEfficiency) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEfficiency_GetName" c_tefficiency_getname 
+  :: (Ptr RawTEfficiency) -> IO CString
+foreign import ccall "HROOT.h TEfficiency_Draw" c_tefficiency_draw 
+  :: (Ptr RawTEfficiency) -> CString -> IO ()
+foreign import ccall "HROOT.h TEfficiency_FindObject" c_tefficiency_findobject 
+  :: (Ptr RawTEfficiency) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TEfficiency_SaveAs" c_tefficiency_saveas 
+  :: (Ptr RawTEfficiency) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TEfficiency_Write" c_tefficiency_write 
+  :: (Ptr RawTEfficiency) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TEfficiency_IsA" c_tefficiency_isa 
+  :: (Ptr RawTEfficiency) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TEfficiency_printObj" c_tefficiency_printobj 
+  :: (Ptr RawTEfficiency) -> CString -> IO ()
+foreign import ccall "HROOT.h TEfficiency_delete" c_tefficiency_delete 
+  :: (Ptr RawTEfficiency) -> IO ()
+
+foreign import ccall "HROOT.h TAxis_SetName" c_taxis_setname 
+  :: (Ptr RawTAxis) -> CString -> IO ()
+foreign import ccall "HROOT.h TAxis_SetNameTitle" c_taxis_setnametitle 
+  :: (Ptr RawTAxis) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TAxis_SetTitle" c_taxis_settitle 
+  :: (Ptr RawTAxis) -> CString -> IO ()
+foreign import ccall "HROOT.h TAxis_GetNdivisions" c_taxis_getndivisions 
+  :: (Ptr RawTAxis) -> IO CInt
+foreign import ccall "HROOT.h TAxis_GetAxisColor" c_taxis_getaxiscolor 
+  :: (Ptr RawTAxis) -> IO CInt
+foreign import ccall "HROOT.h TAxis_GetLabelColor" c_taxis_getlabelcolor 
+  :: (Ptr RawTAxis) -> IO CInt
+foreign import ccall "HROOT.h TAxis_GetLabelFont" c_taxis_getlabelfont 
+  :: (Ptr RawTAxis) -> IO CInt
+foreign import ccall "HROOT.h TAxis_GetLabelOffset" c_taxis_getlabeloffset 
+  :: (Ptr RawTAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAxis_GetLabelSize" c_taxis_getlabelsize 
+  :: (Ptr RawTAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAxis_GetTitleOffset" c_taxis_gettitleoffset 
+  :: (Ptr RawTAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAxis_GetTitleSize" c_taxis_gettitlesize 
+  :: (Ptr RawTAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAxis_GetTickLength" c_taxis_getticklength 
+  :: (Ptr RawTAxis) -> IO CDouble
+foreign import ccall "HROOT.h TAxis_GetTitleFont" c_taxis_gettitlefont 
+  :: (Ptr RawTAxis) -> IO CInt
+foreign import ccall "HROOT.h TAxis_SetNdivisions" c_taxis_setndivisions 
+  :: (Ptr RawTAxis) -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TAxis_SetAxisColor" c_taxis_setaxiscolor 
+  :: (Ptr RawTAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAxis_SetLabelColor" c_taxis_setlabelcolor 
+  :: (Ptr RawTAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAxis_SetLabelFont" c_taxis_setlabelfont 
+  :: (Ptr RawTAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAxis_SetLabelOffset" c_taxis_setlabeloffset 
+  :: (Ptr RawTAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAxis_SetLabelSize" c_taxis_setlabelsize 
+  :: (Ptr RawTAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAxis_SetTickLength" c_taxis_setticklength 
+  :: (Ptr RawTAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAxis_SetTitleOffset" c_taxis_settitleoffset 
+  :: (Ptr RawTAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAxis_SetTitleSize" c_taxis_settitlesize 
+  :: (Ptr RawTAxis) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TAxis_SetTitleColor" c_taxis_settitlecolor 
+  :: (Ptr RawTAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAxis_SetTitleFont" c_taxis_settitlefont 
+  :: (Ptr RawTAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAxis_GetName" c_taxis_getname 
+  :: (Ptr RawTAxis) -> IO CString
+foreign import ccall "HROOT.h TAxis_Draw" c_taxis_draw 
+  :: (Ptr RawTAxis) -> CString -> IO ()
+foreign import ccall "HROOT.h TAxis_FindObject" c_taxis_findobject 
+  :: (Ptr RawTAxis) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TAxis_SaveAs" c_taxis_saveas 
+  :: (Ptr RawTAxis) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TAxis_Write" c_taxis_write 
+  :: (Ptr RawTAxis) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TAxis_IsA" c_taxis_isa 
+  :: (Ptr RawTAxis) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TAxis_printObj" c_taxis_printobj 
+  :: (Ptr RawTAxis) -> CString -> IO ()
+foreign import ccall "HROOT.h TAxis_delete" c_taxis_delete 
+  :: (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TAxis_newTAxis" c_taxis_newtaxis 
+  :: CInt -> CDouble -> CDouble -> IO (Ptr RawTAxis)
+foreign import ccall "HROOT.h TAxis_SetTimeDisplay" c_taxis_settimedisplay 
+  :: (Ptr RawTAxis) -> CInt -> IO ()
+foreign import ccall "HROOT.h TAxis_SetTimeFormat" c_taxis_settimeformat 
+  :: (Ptr RawTAxis) -> CString -> IO ()
+foreign import ccall "HROOT.h TAxis_SetTimeOffset" c_taxis_settimeoffset 
+  :: (Ptr RawTAxis) -> CDouble -> CString -> IO ()
+
+foreign import ccall "HROOT.h TLatex_SetLineColor" c_tlatex_setlinecolor 
+  :: (Ptr RawTLatex) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLatex_SetName" c_tlatex_setname 
+  :: (Ptr RawTLatex) -> CString -> IO ()
+foreign import ccall "HROOT.h TLatex_SetNameTitle" c_tlatex_setnametitle 
+  :: (Ptr RawTLatex) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TLatex_SetTitle" c_tlatex_settitle 
+  :: (Ptr RawTLatex) -> CString -> IO ()
+foreign import ccall "HROOT.h TLatex_SetTextColor" c_tlatex_settextcolor 
+  :: (Ptr RawTLatex) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLatex_SetTextAlign" c_tlatex_settextalign 
+  :: (Ptr RawTLatex) -> CInt -> IO ()
+foreign import ccall "HROOT.h TLatex_SetTextSize" c_tlatex_settextsize 
+  :: (Ptr RawTLatex) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TLatex_GetName" c_tlatex_getname 
+  :: (Ptr RawTLatex) -> IO CString
+foreign import ccall "HROOT.h TLatex_Draw" c_tlatex_draw 
+  :: (Ptr RawTLatex) -> CString -> IO ()
+foreign import ccall "HROOT.h TLatex_FindObject" c_tlatex_findobject 
+  :: (Ptr RawTLatex) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TLatex_SaveAs" c_tlatex_saveas 
+  :: (Ptr RawTLatex) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TLatex_Write" c_tlatex_write 
+  :: (Ptr RawTLatex) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TLatex_IsA" c_tlatex_isa 
+  :: (Ptr RawTLatex) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TLatex_printObj" c_tlatex_printobj 
+  :: (Ptr RawTLatex) -> CString -> IO ()
+foreign import ccall "HROOT.h TLatex_delete" c_tlatex_delete 
+  :: (Ptr RawTLatex) -> IO ()
+foreign import ccall "HROOT.h TLatex_newTLatex" c_tlatex_newtlatex 
+  :: CDouble -> CDouble -> CString -> IO (Ptr RawTLatex)
+foreign import ccall "HROOT.h TLatex_tLatexDrawLatex" c_tlatex_tlatexdrawlatex 
+  :: (Ptr RawTLatex) -> CDouble -> CDouble -> CString -> IO (Ptr RawTLatex)
+
+foreign import ccall "HROOT.h TText_SetName" c_ttext_setname 
+  :: (Ptr RawTText) -> CString -> IO ()
+foreign import ccall "HROOT.h TText_SetNameTitle" c_ttext_setnametitle 
+  :: (Ptr RawTText) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TText_SetTitle" c_ttext_settitle 
+  :: (Ptr RawTText) -> CString -> IO ()
+foreign import ccall "HROOT.h TText_SetTextColor" c_ttext_settextcolor 
+  :: (Ptr RawTText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TText_SetTextAlign" c_ttext_settextalign 
+  :: (Ptr RawTText) -> CInt -> IO ()
+foreign import ccall "HROOT.h TText_SetTextSize" c_ttext_settextsize 
+  :: (Ptr RawTText) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TText_GetName" c_ttext_getname 
+  :: (Ptr RawTText) -> IO CString
+foreign import ccall "HROOT.h TText_Draw" c_ttext_draw 
+  :: (Ptr RawTText) -> CString -> IO ()
+foreign import ccall "HROOT.h TText_FindObject" c_ttext_findobject 
+  :: (Ptr RawTText) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TText_SaveAs" c_ttext_saveas 
+  :: (Ptr RawTText) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TText_Write" c_ttext_write 
+  :: (Ptr RawTText) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TText_IsA" c_ttext_isa 
+  :: (Ptr RawTText) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TText_printObj" c_ttext_printobj 
+  :: (Ptr RawTText) -> CString -> IO ()
+foreign import ccall "HROOT.h TText_delete" c_ttext_delete 
+  :: (Ptr RawTText) -> IO ()
+
+foreign import ccall "HROOT.h TDirectory_SetName" c_tdirectory_setname 
+  :: (Ptr RawTDirectory) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectory_SetNameTitle" c_tdirectory_setnametitle 
+  :: (Ptr RawTDirectory) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectory_SetTitle" c_tdirectory_settitle 
+  :: (Ptr RawTDirectory) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectory_GetName" c_tdirectory_getname 
+  :: (Ptr RawTDirectory) -> IO CString
+foreign import ccall "HROOT.h TDirectory_Draw" c_tdirectory_draw 
+  :: (Ptr RawTDirectory) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectory_FindObject" c_tdirectory_findobject 
+  :: (Ptr RawTDirectory) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TDirectory_SaveAs" c_tdirectory_saveas 
+  :: (Ptr RawTDirectory) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectory_Write" c_tdirectory_write 
+  :: (Ptr RawTDirectory) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TDirectory_IsA" c_tdirectory_isa 
+  :: (Ptr RawTDirectory) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TDirectory_printObj" c_tdirectory_printobj 
+  :: (Ptr RawTDirectory) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectory_delete" c_tdirectory_delete 
+  :: (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TDirectory_Append" c_tdirectory_append 
+  :: (Ptr RawTDirectory) -> (Ptr RawTObject) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDirectory_addD" c_tdirectory_addd 
+  :: (Ptr RawTDirectory) -> (Ptr RawTObject) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDirectory_AppendKey" c_tdirectory_appendkey 
+  :: (Ptr RawTDirectory) -> (Ptr RawTKey) -> IO CInt
+foreign import ccall "HROOT.h TDirectory_Close" c_tdirectory_close 
+  :: (Ptr RawTDirectory) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectory_Get" c_tdirectory_get 
+  :: (Ptr RawTDirectory) -> CString -> IO (Ptr RawTObject)
+
+foreign import ccall "HROOT.h TDirectoryFile_Append" c_tdirectoryfile_append 
+  :: (Ptr RawTDirectoryFile) -> (Ptr RawTObject) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_addD" c_tdirectoryfile_addd 
+  :: (Ptr RawTDirectoryFile) -> (Ptr RawTObject) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_AppendKey" c_tdirectoryfile_appendkey 
+  :: (Ptr RawTDirectoryFile) -> (Ptr RawTKey) -> IO CInt
+foreign import ccall "HROOT.h TDirectoryFile_Close" c_tdirectoryfile_close 
+  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_Get" c_tdirectoryfile_get 
+  :: (Ptr RawTDirectoryFile) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TDirectoryFile_SetName" c_tdirectoryfile_setname 
+  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_SetNameTitle" c_tdirectoryfile_setnametitle 
+  :: (Ptr RawTDirectoryFile) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_SetTitle" c_tdirectoryfile_settitle 
+  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_GetName" c_tdirectoryfile_getname 
+  :: (Ptr RawTDirectoryFile) -> IO CString
+foreign import ccall "HROOT.h TDirectoryFile_Draw" c_tdirectoryfile_draw 
+  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_FindObject" c_tdirectoryfile_findobject 
+  :: (Ptr RawTDirectoryFile) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TDirectoryFile_SaveAs" c_tdirectoryfile_saveas 
+  :: (Ptr RawTDirectoryFile) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_Write" c_tdirectoryfile_write 
+  :: (Ptr RawTDirectoryFile) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TDirectoryFile_IsA" c_tdirectoryfile_isa 
+  :: (Ptr RawTDirectoryFile) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TDirectoryFile_printObj" c_tdirectoryfile_printobj 
+  :: (Ptr RawTDirectoryFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_delete" c_tdirectoryfile_delete 
+  :: (Ptr RawTDirectoryFile) -> IO ()
+foreign import ccall "HROOT.h TDirectoryFile_GetListOfKeys" c_tdirectoryfile_getlistofkeys 
+  :: (Ptr RawTDirectoryFile) -> IO (Ptr RawTList)
+
+foreign import ccall "HROOT.h TFile_GetListOfKeys" c_tfile_getlistofkeys 
+  :: (Ptr RawTFile) -> IO (Ptr RawTList)
+foreign import ccall "HROOT.h TFile_Append" c_tfile_append 
+  :: (Ptr RawTFile) -> (Ptr RawTObject) -> CInt -> IO ()
+foreign import ccall "HROOT.h TFile_addD" c_tfile_addd 
+  :: (Ptr RawTFile) -> (Ptr RawTObject) -> CInt -> IO ()
+foreign import ccall "HROOT.h TFile_AppendKey" c_tfile_appendkey 
+  :: (Ptr RawTFile) -> (Ptr RawTKey) -> IO CInt
+foreign import ccall "HROOT.h TFile_Close" c_tfile_close 
+  :: (Ptr RawTFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TFile_Get" c_tfile_get 
+  :: (Ptr RawTFile) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TFile_SetName" c_tfile_setname 
+  :: (Ptr RawTFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TFile_SetNameTitle" c_tfile_setnametitle 
+  :: (Ptr RawTFile) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TFile_SetTitle" c_tfile_settitle 
+  :: (Ptr RawTFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TFile_GetName" c_tfile_getname 
+  :: (Ptr RawTFile) -> IO CString
+foreign import ccall "HROOT.h TFile_Draw" c_tfile_draw 
+  :: (Ptr RawTFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TFile_FindObject" c_tfile_findobject 
+  :: (Ptr RawTFile) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TFile_SaveAs" c_tfile_saveas 
+  :: (Ptr RawTFile) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TFile_Write" c_tfile_write 
+  :: (Ptr RawTFile) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TFile_IsA" c_tfile_isa 
+  :: (Ptr RawTFile) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TFile_printObj" c_tfile_printobj 
+  :: (Ptr RawTFile) -> CString -> IO ()
+foreign import ccall "HROOT.h TFile_delete" c_tfile_delete 
+  :: (Ptr RawTFile) -> IO ()
+foreign import ccall "HROOT.h TFile_newTFile" c_tfile_newtfile 
+  :: CString -> CString -> CString -> CInt -> IO (Ptr RawTFile)
+
+foreign import ccall "HROOT.h TBranch_SetName" c_tbranch_setname 
+  :: (Ptr RawTBranch) -> CString -> IO ()
+foreign import ccall "HROOT.h TBranch_SetNameTitle" c_tbranch_setnametitle 
+  :: (Ptr RawTBranch) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TBranch_SetTitle" c_tbranch_settitle 
+  :: (Ptr RawTBranch) -> CString -> IO ()
+foreign import ccall "HROOT.h TBranch_SetFillColor" c_tbranch_setfillcolor 
+  :: (Ptr RawTBranch) -> CInt -> IO ()
+foreign import ccall "HROOT.h TBranch_SetFillStyle" c_tbranch_setfillstyle 
+  :: (Ptr RawTBranch) -> CInt -> IO ()
+foreign import ccall "HROOT.h TBranch_GetName" c_tbranch_getname 
+  :: (Ptr RawTBranch) -> IO CString
+foreign import ccall "HROOT.h TBranch_Draw" c_tbranch_draw 
+  :: (Ptr RawTBranch) -> CString -> IO ()
+foreign import ccall "HROOT.h TBranch_FindObject" c_tbranch_findobject 
+  :: (Ptr RawTBranch) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TBranch_SaveAs" c_tbranch_saveas 
+  :: (Ptr RawTBranch) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TBranch_Write" c_tbranch_write 
+  :: (Ptr RawTBranch) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TBranch_IsA" c_tbranch_isa 
+  :: (Ptr RawTBranch) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TBranch_printObj" c_tbranch_printobj 
+  :: (Ptr RawTBranch) -> CString -> IO ()
+foreign import ccall "HROOT.h TBranch_delete" c_tbranch_delete 
+  :: (Ptr RawTBranch) -> IO ()
+
+foreign import ccall "HROOT.h TVirtualTreePlayer_GetName" c_tvirtualtreeplayer_getname 
+  :: (Ptr RawTVirtualTreePlayer) -> IO CString
+foreign import ccall "HROOT.h TVirtualTreePlayer_Draw" c_tvirtualtreeplayer_draw 
+  :: (Ptr RawTVirtualTreePlayer) -> CString -> IO ()
+foreign import ccall "HROOT.h TVirtualTreePlayer_FindObject" c_tvirtualtreeplayer_findobject 
+  :: (Ptr RawTVirtualTreePlayer) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TVirtualTreePlayer_SaveAs" c_tvirtualtreeplayer_saveas 
+  :: (Ptr RawTVirtualTreePlayer) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TVirtualTreePlayer_Write" c_tvirtualtreeplayer_write 
+  :: (Ptr RawTVirtualTreePlayer) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TVirtualTreePlayer_IsA" c_tvirtualtreeplayer_isa 
+  :: (Ptr RawTVirtualTreePlayer) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TVirtualTreePlayer_printObj" c_tvirtualtreeplayer_printobj 
+  :: (Ptr RawTVirtualTreePlayer) -> CString -> IO ()
+foreign import ccall "HROOT.h TVirtualTreePlayer_delete" c_tvirtualtreeplayer_delete 
+  :: (Ptr RawTVirtualTreePlayer) -> IO ()
+
+foreign import ccall "HROOT.h TTreePlayer_GetName" c_ttreeplayer_getname 
+  :: (Ptr RawTTreePlayer) -> IO CString
+foreign import ccall "HROOT.h TTreePlayer_Draw" c_ttreeplayer_draw 
+  :: (Ptr RawTTreePlayer) -> CString -> IO ()
+foreign import ccall "HROOT.h TTreePlayer_FindObject" c_ttreeplayer_findobject 
+  :: (Ptr RawTTreePlayer) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TTreePlayer_SaveAs" c_ttreeplayer_saveas 
+  :: (Ptr RawTTreePlayer) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TTreePlayer_Write" c_ttreeplayer_write 
+  :: (Ptr RawTTreePlayer) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TTreePlayer_IsA" c_ttreeplayer_isa 
+  :: (Ptr RawTTreePlayer) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TTreePlayer_printObj" c_ttreeplayer_printobj 
+  :: (Ptr RawTTreePlayer) -> CString -> IO ()
+foreign import ccall "HROOT.h TTreePlayer_delete" c_ttreeplayer_delete 
+  :: (Ptr RawTTreePlayer) -> IO ()
+
+foreign import ccall "HROOT.h TArray_delete" c_tarray_delete 
+  :: (Ptr RawTArray) -> IO ()
+
+foreign import ccall "HROOT.h TArrayC_delete" c_tarrayc_delete 
+  :: (Ptr RawTArrayC) -> IO ()
+
+foreign import ccall "HROOT.h TArrayD_delete" c_tarrayd_delete 
+  :: (Ptr RawTArrayD) -> IO ()
+
+foreign import ccall "HROOT.h TArrayF_delete" c_tarrayf_delete 
+  :: (Ptr RawTArrayF) -> IO ()
+
+foreign import ccall "HROOT.h TArrayI_delete" c_tarrayi_delete 
+  :: (Ptr RawTArrayI) -> IO ()
+
+foreign import ccall "HROOT.h TArrayL_delete" c_tarrayl_delete 
+  :: (Ptr RawTArrayL) -> IO ()
+
+foreign import ccall "HROOT.h TArrayL64_delete" c_tarrayl64_delete 
+  :: (Ptr RawTArrayL64) -> IO ()
+
+foreign import ccall "HROOT.h TArrayS_delete" c_tarrays_delete 
+  :: (Ptr RawTArrayS) -> IO ()
+
+foreign import ccall "HROOT.h TH1_SetName" c_th1_setname 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetNameTitle" c_th1_setnametitle 
+  :: (Ptr RawTH1) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetTitle" c_th1_settitle 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetLineColor" c_th1_setlinecolor 
+  :: (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1_SetFillColor" c_th1_setfillcolor 
+  :: (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1_SetFillStyle" c_th1_setfillstyle 
+  :: (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1_GetName" c_th1_getname 
+  :: (Ptr RawTH1) -> IO CString
+foreign import ccall "HROOT.h TH1_Draw" c_th1_draw 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_FindObject" c_th1_findobject 
+  :: (Ptr RawTH1) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH1_SaveAs" c_th1_saveas 
+  :: (Ptr RawTH1) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_Write" c_th1_write 
+  :: (Ptr RawTH1) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1_IsA" c_th1_isa 
+  :: (Ptr RawTH1) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH1_printObj" c_th1_printobj 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_delete" c_th1_delete 
+  :: (Ptr RawTH1) -> IO ()
+foreign import ccall "HROOT.h TH1_Add" c_th1_add 
+  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_AddBinContent" c_th1_addbincontent 
+  :: (Ptr RawTH1) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_Chi2Test" c_th1_chi2test 
+  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH1_ComputeIntegral" c_th1_computeintegral 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_DirectoryAutoAdd" c_th1_directoryautoadd 
+  :: (Ptr RawTH1) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1_DistancetoPrimitive" c_th1_distancetoprimitive 
+  :: (Ptr RawTH1) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1_Divide" c_th1_divide 
+  :: (Ptr RawTH1) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_DrawCopy" c_th1_drawcopy 
+  :: (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1_DrawNormalized" c_th1_drawnormalized 
+  :: (Ptr RawTH1) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1_DrawPanel" c_th1_drawpanel 
+  :: (Ptr RawTH1) -> IO ()
+foreign import ccall "HROOT.h TH1_BufferEmpty" c_th1_bufferempty 
+  :: (Ptr RawTH1) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1_Eval" c_th1_eval 
+  :: (Ptr RawTH1) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_ExecuteEvent" c_th1_executeevent 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1_FFT" c_th1_fft 
+  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1_fill1" c_th1_fill1 
+  :: (Ptr RawTH1) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1_FillN" c_th1_filln 
+  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1_FillRandom" c_th1_fillrandom 
+  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1_FindBin" c_th1_findbin 
+  :: (Ptr RawTH1) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1_FindFixBin" c_th1_findfixbin 
+  :: (Ptr RawTH1) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1_FindFirstBinAbove" c_th1_findfirstbinabove 
+  :: (Ptr RawTH1) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1_FindLastBinAbove" c_th1_findlastbinabove 
+  :: (Ptr RawTH1) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1_FitPanel" c_th1_fitpanel 
+  :: (Ptr RawTH1) -> IO ()
+foreign import ccall "HROOT.h TH1_tH1GetAsymmetry" c_th1_th1getasymmetry 
+  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1_tH1GetBufferLength" c_th1_th1getbufferlength 
+  :: (Ptr RawTH1) -> IO CInt
+foreign import ccall "HROOT.h TH1_tH1GetBufferSize" c_th1_th1getbuffersize 
+  :: (Ptr RawTH1) -> IO CInt
+foreign import ccall "HROOT.h TH1_getNdivisionA" c_th1_getndivisiona 
+  :: (Ptr RawTH1) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1_getAxisColorA" c_th1_getaxiscolora 
+  :: (Ptr RawTH1) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1_getLabelColorA" c_th1_getlabelcolora 
+  :: (Ptr RawTH1) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1_getLabelFontA" c_th1_getlabelfonta 
+  :: (Ptr RawTH1) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1_getLabelOffsetA" c_th1_getlabeloffseta 
+  :: (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1_getLabelSizeA" c_th1_getlabelsizea 
+  :: (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1_getTitleFontA" c_th1_gettitlefonta 
+  :: (Ptr RawTH1) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1_getTitleOffsetA" c_th1_gettitleoffseta 
+  :: (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1_getTitleSizeA" c_th1_gettitlesizea 
+  :: (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1_getTickLengthA" c_th1_getticklengtha 
+  :: (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBarOffset" c_th1_getbaroffset 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBarWidth" c_th1_getbarwidth 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetContour" c_th1_getcontour 
+  :: (Ptr RawTH1) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1_GetContourLevel" c_th1_getcontourlevel 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetContourLevelPad" c_th1_getcontourlevelpad 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBin" c_th1_getbin 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1_GetBinCenter" c_th1_getbincenter 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBinContent1" c_th1_getbincontent1 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBinContent2" c_th1_getbincontent2 
+  :: (Ptr RawTH1) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBinContent3" c_th1_getbincontent3 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBinError1" c_th1_getbinerror1 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBinError2" c_th1_getbinerror2 
+  :: (Ptr RawTH1) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBinError3" c_th1_getbinerror3 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBinLowEdge" c_th1_getbinlowedge 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetBinWidth" c_th1_getbinwidth 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetCellContent" c_th1_getcellcontent 
+  :: (Ptr RawTH1) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetCellError" c_th1_getcellerror 
+  :: (Ptr RawTH1) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_tH1GetDirectory" c_th1_th1getdirectory 
+  :: (Ptr RawTH1) -> IO (Ptr RawTDirectory)
+foreign import ccall "HROOT.h TH1_GetEntries" c_th1_getentries 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetEffectiveEntries" c_th1_geteffectiveentries 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetFunction" c_th1_getfunction 
+  :: (Ptr RawTH1) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH1_GetDimension" c_th1_getdimension 
+  :: (Ptr RawTH1) -> IO CInt
+foreign import ccall "HROOT.h TH1_GetKurtosis" c_th1_getkurtosis 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetLowEdge" c_th1_getlowedge 
+  :: (Ptr RawTH1) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_GetMaximum" c_th1_getmaximum 
+  :: (Ptr RawTH1) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetMaximumBin" c_th1_getmaximumbin 
+  :: (Ptr RawTH1) -> IO CInt
+foreign import ccall "HROOT.h TH1_GetMaximumStored" c_th1_getmaximumstored 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetMinimum" c_th1_getminimum 
+  :: (Ptr RawTH1) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetMinimumBin" c_th1_getminimumbin 
+  :: (Ptr RawTH1) -> IO CInt
+foreign import ccall "HROOT.h TH1_GetMinimumStored" c_th1_getminimumstored 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetMean" c_th1_getmean 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetMeanError" c_th1_getmeanerror 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetNbinsX" c_th1_getnbinsx 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetNbinsY" c_th1_getnbinsy 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetNbinsZ" c_th1_getnbinsz 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetQuantiles" c_th1_getquantiles 
+  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1_GetRandom" c_th1_getrandom 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetStats" c_th1_getstats 
+  :: (Ptr RawTH1) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_GetSumOfWeights" c_th1_getsumofweights 
+  :: (Ptr RawTH1) -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetSumw2" c_th1_getsumw2 
+  :: (Ptr RawTH1) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH1_GetSumw2N" c_th1_getsumw2n 
+  :: (Ptr RawTH1) -> IO CInt
+foreign import ccall "HROOT.h TH1_GetRMS" c_th1_getrms 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetRMSError" c_th1_getrmserror 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_GetSkewness" c_th1_getskewness 
+  :: (Ptr RawTH1) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1_tH1GetXaxis" c_th1_th1getxaxis 
+  :: (Ptr RawTH1) -> IO (Ptr RawTAxis)
+foreign import ccall "HROOT.h TH1_tH1GetYaxis" c_th1_th1getyaxis 
+  :: (Ptr RawTH1) -> IO (Ptr RawTAxis)
+foreign import ccall "HROOT.h TH1_tH1GetZaxis" c_th1_th1getzaxis 
+  :: (Ptr RawTH1) -> IO (Ptr RawTAxis)
+foreign import ccall "HROOT.h TH1_integral1" c_th1_integral1 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1_interpolate1" c_th1_interpolate1 
+  :: (Ptr RawTH1) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1_interpolate2" c_th1_interpolate2 
+  :: (Ptr RawTH1) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1_interpolate3" c_th1_interpolate3 
+  :: (Ptr RawTH1) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1_tH1IsBinOverflow" c_th1_th1isbinoverflow 
+  :: (Ptr RawTH1) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1_tH1IsBinUnderflow" c_th1_th1isbinunderflow 
+  :: (Ptr RawTH1) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1_KolmogorovTest" c_th1_kolmogorovtest 
+  :: (Ptr RawTH1) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1_LabelsDeflate" c_th1_labelsdeflate 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_LabelsInflate" c_th1_labelsinflate 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_LabelsOption" c_th1_labelsoption 
+  :: (Ptr RawTH1) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_multiflyF" c_th1_multiflyf 
+  :: (Ptr RawTH1) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_Multiply" c_th1_multiply 
+  :: (Ptr RawTH1) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_Paint" c_th1_paint 
+  :: (Ptr RawTH1) -> IO ()
+foreign import ccall "HROOT.h TH1_PutStats" c_th1_putstats 
+  :: (Ptr RawTH1) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_Rebin" c_th1_rebin 
+  :: (Ptr RawTH1) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1_RebinAxis" c_th1_rebinaxis 
+  :: (Ptr RawTH1) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH1_Rebuild" c_th1_rebuild 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_RecursiveRemove" c_th1_recursiveremove 
+  :: (Ptr RawTH1) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH1_Reset" c_th1_reset 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_ResetStats" c_th1_resetstats 
+  :: (Ptr RawTH1) -> IO ()
+foreign import ccall "HROOT.h TH1_Scale" c_th1_scale 
+  :: (Ptr RawTH1) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_setAxisColorA" c_th1_setaxiscolora 
+  :: (Ptr RawTH1) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetAxisRange" c_th1_setaxisrange 
+  :: (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetBarOffset" c_th1_setbaroffset 
+  :: (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_SetBarWidth" c_th1_setbarwidth 
+  :: (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_setBinContent1" c_th1_setbincontent1 
+  :: (Ptr RawTH1) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_setBinContent2" c_th1_setbincontent2 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_setBinContent3" c_th1_setbincontent3 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_setBinError1" c_th1_setbinerror1 
+  :: (Ptr RawTH1) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_setBinError2" c_th1_setbinerror2 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_setBinError3" c_th1_setbinerror3 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_setBins1" c_th1_setbins1 
+  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_setBins2" c_th1_setbins2 
+  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_setBins3" c_th1_setbins3 
+  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_SetBinsLength" c_th1_setbinslength 
+  :: (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1_SetBuffer" c_th1_setbuffer 
+  :: (Ptr RawTH1) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetCellContent" c_th1_setcellcontent 
+  :: (Ptr RawTH1) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_SetContent" c_th1_setcontent 
+  :: (Ptr RawTH1) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_SetContour" c_th1_setcontour 
+  :: (Ptr RawTH1) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_SetContourLevel" c_th1_setcontourlevel 
+  :: (Ptr RawTH1) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_SetDirectory" c_th1_setdirectory 
+  :: (Ptr RawTH1) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1_SetEntries" c_th1_setentries 
+  :: (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_SetError" c_th1_seterror 
+  :: (Ptr RawTH1) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1_setLabelColorA" c_th1_setlabelcolora 
+  :: (Ptr RawTH1) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_setLabelSizeA" c_th1_setlabelsizea 
+  :: (Ptr RawTH1) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_setLabelFontA" c_th1_setlabelfonta 
+  :: (Ptr RawTH1) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_setLabelOffsetA" c_th1_setlabeloffseta 
+  :: (Ptr RawTH1) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetMaximum" c_th1_setmaximum 
+  :: (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_SetMinimum" c_th1_setminimum 
+  :: (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_SetNormFactor" c_th1_setnormfactor 
+  :: (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1_SetStats" c_th1_setstats 
+  :: (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1_SetOption" c_th1_setoption 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetXTitle" c_th1_setxtitle 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetYTitle" c_th1_setytitle 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_SetZTitle" c_th1_setztitle 
+  :: (Ptr RawTH1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_ShowBackground" c_th1_showbackground 
+  :: (Ptr RawTH1) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1_ShowPeaks" c_th1_showpeaks 
+  :: (Ptr RawTH1) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1_Smooth" c_th1_smooth 
+  :: (Ptr RawTH1) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1_Sumw2" c_th1_sumw2 
+  :: (Ptr RawTH1) -> IO ()
+foreign import ccall "HROOT.h TH1_tH1UseCurrentStyle" c_th1_th1usecurrentstyle 
+  :: (Ptr RawTH1) -> IO ()
+
+foreign import ccall "HROOT.h TH2_Add" c_th2_add 
+  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_AddBinContent" c_th2_addbincontent 
+  :: (Ptr RawTH2) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_Chi2Test" c_th2_chi2test 
+  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH2_ComputeIntegral" c_th2_computeintegral 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_DirectoryAutoAdd" c_th2_directoryautoadd 
+  :: (Ptr RawTH2) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2_DistancetoPrimitive" c_th2_distancetoprimitive 
+  :: (Ptr RawTH2) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2_Divide" c_th2_divide 
+  :: (Ptr RawTH2) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_DrawCopy" c_th2_drawcopy 
+  :: (Ptr RawTH2) -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2_DrawNormalized" c_th2_drawnormalized 
+  :: (Ptr RawTH2) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2_DrawPanel" c_th2_drawpanel 
+  :: (Ptr RawTH2) -> IO ()
+foreign import ccall "HROOT.h TH2_BufferEmpty" c_th2_bufferempty 
+  :: (Ptr RawTH2) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2_Eval" c_th2_eval 
+  :: (Ptr RawTH2) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_ExecuteEvent" c_th2_executeevent 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_FFT" c_th2_fft 
+  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2_fill1" c_th2_fill1 
+  :: (Ptr RawTH2) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2_FillN" c_th2_filln 
+  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_FillRandom" c_th2_fillrandom 
+  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_FindBin" c_th2_findbin 
+  :: (Ptr RawTH2) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2_FindFixBin" c_th2_findfixbin 
+  :: (Ptr RawTH2) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2_FindFirstBinAbove" c_th2_findfirstbinabove 
+  :: (Ptr RawTH2) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2_FindLastBinAbove" c_th2_findlastbinabove 
+  :: (Ptr RawTH2) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2_FitPanel" c_th2_fitpanel 
+  :: (Ptr RawTH2) -> IO ()
+foreign import ccall "HROOT.h TH2_getNdivisionA" c_th2_getndivisiona 
+  :: (Ptr RawTH2) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2_getAxisColorA" c_th2_getaxiscolora 
+  :: (Ptr RawTH2) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2_getLabelColorA" c_th2_getlabelcolora 
+  :: (Ptr RawTH2) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2_getLabelFontA" c_th2_getlabelfonta 
+  :: (Ptr RawTH2) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2_getLabelOffsetA" c_th2_getlabeloffseta 
+  :: (Ptr RawTH2) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2_getLabelSizeA" c_th2_getlabelsizea 
+  :: (Ptr RawTH2) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2_getTitleFontA" c_th2_gettitlefonta 
+  :: (Ptr RawTH2) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2_getTitleOffsetA" c_th2_gettitleoffseta 
+  :: (Ptr RawTH2) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2_getTitleSizeA" c_th2_gettitlesizea 
+  :: (Ptr RawTH2) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2_getTickLengthA" c_th2_getticklengtha 
+  :: (Ptr RawTH2) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBarOffset" c_th2_getbaroffset 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBarWidth" c_th2_getbarwidth 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetContour" c_th2_getcontour 
+  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2_GetContourLevel" c_th2_getcontourlevel 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetContourLevelPad" c_th2_getcontourlevelpad 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBin" c_th2_getbin 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2_GetBinCenter" c_th2_getbincenter 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBinContent1" c_th2_getbincontent1 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBinContent2" c_th2_getbincontent2 
+  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBinContent3" c_th2_getbincontent3 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBinError1" c_th2_getbinerror1 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBinError2" c_th2_getbinerror2 
+  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBinError3" c_th2_getbinerror3 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBinLowEdge" c_th2_getbinlowedge 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetBinWidth" c_th2_getbinwidth 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetCellContent" c_th2_getcellcontent 
+  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetCellError" c_th2_getcellerror 
+  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetEntries" c_th2_getentries 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetEffectiveEntries" c_th2_geteffectiveentries 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetFunction" c_th2_getfunction 
+  :: (Ptr RawTH2) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH2_GetDimension" c_th2_getdimension 
+  :: (Ptr RawTH2) -> IO CInt
+foreign import ccall "HROOT.h TH2_GetKurtosis" c_th2_getkurtosis 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetLowEdge" c_th2_getlowedge 
+  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_GetMaximum" c_th2_getmaximum 
+  :: (Ptr RawTH2) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetMaximumBin" c_th2_getmaximumbin 
+  :: (Ptr RawTH2) -> IO CInt
+foreign import ccall "HROOT.h TH2_GetMaximumStored" c_th2_getmaximumstored 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetMinimum" c_th2_getminimum 
+  :: (Ptr RawTH2) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetMinimumBin" c_th2_getminimumbin 
+  :: (Ptr RawTH2) -> IO CInt
+foreign import ccall "HROOT.h TH2_GetMinimumStored" c_th2_getminimumstored 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetMean" c_th2_getmean 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetMeanError" c_th2_getmeanerror 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetNbinsX" c_th2_getnbinsx 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetNbinsY" c_th2_getnbinsy 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetNbinsZ" c_th2_getnbinsz 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetQuantiles" c_th2_getquantiles 
+  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2_GetRandom" c_th2_getrandom 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetStats" c_th2_getstats 
+  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_GetSumOfWeights" c_th2_getsumofweights 
+  :: (Ptr RawTH2) -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetSumw2" c_th2_getsumw2 
+  :: (Ptr RawTH2) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH2_GetSumw2N" c_th2_getsumw2n 
+  :: (Ptr RawTH2) -> IO CInt
+foreign import ccall "HROOT.h TH2_GetRMS" c_th2_getrms 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetRMSError" c_th2_getrmserror 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetSkewness" c_th2_getskewness 
+  :: (Ptr RawTH2) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_integral1" c_th2_integral1 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2_interpolate1" c_th2_interpolate1 
+  :: (Ptr RawTH2) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2_interpolate2" c_th2_interpolate2 
+  :: (Ptr RawTH2) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2_interpolate3" c_th2_interpolate3 
+  :: (Ptr RawTH2) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2_KolmogorovTest" c_th2_kolmogorovtest 
+  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2_LabelsDeflate" c_th2_labelsdeflate 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_LabelsInflate" c_th2_labelsinflate 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_LabelsOption" c_th2_labelsoption 
+  :: (Ptr RawTH2) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_multiflyF" c_th2_multiflyf 
+  :: (Ptr RawTH2) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_Multiply" c_th2_multiply 
+  :: (Ptr RawTH2) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_Paint" c_th2_paint 
+  :: (Ptr RawTH2) -> IO ()
+foreign import ccall "HROOT.h TH2_PutStats" c_th2_putstats 
+  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_Rebin" c_th2_rebin 
+  :: (Ptr RawTH2) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2_RebinAxis" c_th2_rebinaxis 
+  :: (Ptr RawTH2) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH2_Rebuild" c_th2_rebuild 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_RecursiveRemove" c_th2_recursiveremove 
+  :: (Ptr RawTH2) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH2_Reset" c_th2_reset 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_ResetStats" c_th2_resetstats 
+  :: (Ptr RawTH2) -> IO ()
+foreign import ccall "HROOT.h TH2_Scale" c_th2_scale 
+  :: (Ptr RawTH2) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_setAxisColorA" c_th2_setaxiscolora 
+  :: (Ptr RawTH2) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetAxisRange" c_th2_setaxisrange 
+  :: (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetBarOffset" c_th2_setbaroffset 
+  :: (Ptr RawTH2) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_SetBarWidth" c_th2_setbarwidth 
+  :: (Ptr RawTH2) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_setBinContent1" c_th2_setbincontent1 
+  :: (Ptr RawTH2) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_setBinContent2" c_th2_setbincontent2 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_setBinContent3" c_th2_setbincontent3 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_setBinError1" c_th2_setbinerror1 
+  :: (Ptr RawTH2) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_setBinError2" c_th2_setbinerror2 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_setBinError3" c_th2_setbinerror3 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_setBins1" c_th2_setbins1 
+  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_setBins2" c_th2_setbins2 
+  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_setBins3" c_th2_setbins3 
+  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_SetBinsLength" c_th2_setbinslength 
+  :: (Ptr RawTH2) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_SetBuffer" c_th2_setbuffer 
+  :: (Ptr RawTH2) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetCellContent" c_th2_setcellcontent 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_SetContent" c_th2_setcontent 
+  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_SetContour" c_th2_setcontour 
+  :: (Ptr RawTH2) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_SetContourLevel" c_th2_setcontourlevel 
+  :: (Ptr RawTH2) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_SetDirectory" c_th2_setdirectory 
+  :: (Ptr RawTH2) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2_SetEntries" c_th2_setentries 
+  :: (Ptr RawTH2) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_SetError" c_th2_seterror 
+  :: (Ptr RawTH2) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2_setLabelColorA" c_th2_setlabelcolora 
+  :: (Ptr RawTH2) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_setLabelSizeA" c_th2_setlabelsizea 
+  :: (Ptr RawTH2) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_setLabelFontA" c_th2_setlabelfonta 
+  :: (Ptr RawTH2) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_setLabelOffsetA" c_th2_setlabeloffseta 
+  :: (Ptr RawTH2) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetMaximum" c_th2_setmaximum 
+  :: (Ptr RawTH2) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_SetMinimum" c_th2_setminimum 
+  :: (Ptr RawTH2) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_SetNormFactor" c_th2_setnormfactor 
+  :: (Ptr RawTH2) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2_SetStats" c_th2_setstats 
+  :: (Ptr RawTH2) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_SetOption" c_th2_setoption 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetXTitle" c_th2_setxtitle 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetYTitle" c_th2_setytitle 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetZTitle" c_th2_setztitle 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_ShowBackground" c_th2_showbackground 
+  :: (Ptr RawTH2) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2_ShowPeaks" c_th2_showpeaks 
+  :: (Ptr RawTH2) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2_Smooth" c_th2_smooth 
+  :: (Ptr RawTH2) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_Sumw2" c_th2_sumw2 
+  :: (Ptr RawTH2) -> IO ()
+foreign import ccall "HROOT.h TH2_SetName" c_th2_setname 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetNameTitle" c_th2_setnametitle 
+  :: (Ptr RawTH2) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetTitle" c_th2_settitle 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_SetLineColor" c_th2_setlinecolor 
+  :: (Ptr RawTH2) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_SetFillColor" c_th2_setfillcolor 
+  :: (Ptr RawTH2) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_SetFillStyle" c_th2_setfillstyle 
+  :: (Ptr RawTH2) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_GetName" c_th2_getname 
+  :: (Ptr RawTH2) -> IO CString
+foreign import ccall "HROOT.h TH2_Draw" c_th2_draw 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_FindObject" c_th2_findobject 
+  :: (Ptr RawTH2) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH2_SaveAs" c_th2_saveas 
+  :: (Ptr RawTH2) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_Write" c_th2_write 
+  :: (Ptr RawTH2) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2_IsA" c_th2_isa 
+  :: (Ptr RawTH2) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH2_printObj" c_th2_printobj 
+  :: (Ptr RawTH2) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2_delete" c_th2_delete 
+  :: (Ptr RawTH2) -> IO ()
+foreign import ccall "HROOT.h TH2_fill2" c_th2_fill2 
+  :: (Ptr RawTH2) -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2_fillRandom2" c_th2_fillrandom2 
+  :: (Ptr RawTH2) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_findFirstBinAbove2" c_th2_findfirstbinabove2 
+  :: (Ptr RawTH2) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2_findLastBinAbove2" c_th2_findlastbinabove2 
+  :: (Ptr RawTH2) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2_FitSlicesX" c_th2_fitslicesx 
+  :: (Ptr RawTH2) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2_FitSlicesY" c_th2_fitslicesy 
+  :: (Ptr RawTH2) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2_GetCorrelationFactor" c_th2_getcorrelationfactor 
+  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_GetCovariance" c_th2_getcovariance 
+  :: (Ptr RawTH2) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2_integral2" c_th2_integral2 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2_tH2ProjectionX" c_th2_th2projectionx 
+  :: (Ptr RawTH2) -> CString -> CInt -> CInt -> CString -> IO (Ptr RawTH1D)
+foreign import ccall "HROOT.h TH2_tH2ProjectionY" c_th2_th2projectiony 
+  :: (Ptr RawTH2) -> CString -> CInt -> CInt -> CString -> IO (Ptr RawTH1D)
+foreign import ccall "HROOT.h TH2_RebinX" c_th2_rebinx 
+  :: (Ptr RawTH2) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2_RebinY" c_th2_rebiny 
+  :: (Ptr RawTH2) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2_Rebin2D" c_th2_rebin2d 
+  :: (Ptr RawTH2) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2_SetShowProjectionX" c_th2_setshowprojectionx 
+  :: (Ptr RawTH2) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2_SetShowProjectionY" c_th2_setshowprojectiony 
+  :: (Ptr RawTH2) -> CInt -> IO ()
+
+foreign import ccall "HROOT.h TH3_Add" c_th3_add 
+  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_AddBinContent" c_th3_addbincontent 
+  :: (Ptr RawTH3) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_Chi2Test" c_th3_chi2test 
+  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH3_ComputeIntegral" c_th3_computeintegral 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_DirectoryAutoAdd" c_th3_directoryautoadd 
+  :: (Ptr RawTH3) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3_DistancetoPrimitive" c_th3_distancetoprimitive 
+  :: (Ptr RawTH3) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3_Divide" c_th3_divide 
+  :: (Ptr RawTH3) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_DrawCopy" c_th3_drawcopy 
+  :: (Ptr RawTH3) -> CString -> IO (Ptr RawTH3)
+foreign import ccall "HROOT.h TH3_DrawNormalized" c_th3_drawnormalized 
+  :: (Ptr RawTH3) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3_DrawPanel" c_th3_drawpanel 
+  :: (Ptr RawTH3) -> IO ()
+foreign import ccall "HROOT.h TH3_BufferEmpty" c_th3_bufferempty 
+  :: (Ptr RawTH3) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3_Eval" c_th3_eval 
+  :: (Ptr RawTH3) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_ExecuteEvent" c_th3_executeevent 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3_FFT" c_th3_fft 
+  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3_fill1" c_th3_fill1 
+  :: (Ptr RawTH3) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3_FillN" c_th3_filln 
+  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3_FillRandom" c_th3_fillrandom 
+  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3_FindBin" c_th3_findbin 
+  :: (Ptr RawTH3) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3_FindFixBin" c_th3_findfixbin 
+  :: (Ptr RawTH3) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3_FindFirstBinAbove" c_th3_findfirstbinabove 
+  :: (Ptr RawTH3) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3_FindLastBinAbove" c_th3_findlastbinabove 
+  :: (Ptr RawTH3) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3_FitPanel" c_th3_fitpanel 
+  :: (Ptr RawTH3) -> IO ()
+foreign import ccall "HROOT.h TH3_getNdivisionA" c_th3_getndivisiona 
+  :: (Ptr RawTH3) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3_getAxisColorA" c_th3_getaxiscolora 
+  :: (Ptr RawTH3) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3_getLabelColorA" c_th3_getlabelcolora 
+  :: (Ptr RawTH3) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3_getLabelFontA" c_th3_getlabelfonta 
+  :: (Ptr RawTH3) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3_getLabelOffsetA" c_th3_getlabeloffseta 
+  :: (Ptr RawTH3) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3_getLabelSizeA" c_th3_getlabelsizea 
+  :: (Ptr RawTH3) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3_getTitleFontA" c_th3_gettitlefonta 
+  :: (Ptr RawTH3) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3_getTitleOffsetA" c_th3_gettitleoffseta 
+  :: (Ptr RawTH3) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3_getTitleSizeA" c_th3_gettitlesizea 
+  :: (Ptr RawTH3) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3_getTickLengthA" c_th3_getticklengtha 
+  :: (Ptr RawTH3) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBarOffset" c_th3_getbaroffset 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBarWidth" c_th3_getbarwidth 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetContour" c_th3_getcontour 
+  :: (Ptr RawTH3) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3_GetContourLevel" c_th3_getcontourlevel 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetContourLevelPad" c_th3_getcontourlevelpad 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBin" c_th3_getbin 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3_GetBinCenter" c_th3_getbincenter 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBinContent1" c_th3_getbincontent1 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBinContent2" c_th3_getbincontent2 
+  :: (Ptr RawTH3) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBinContent3" c_th3_getbincontent3 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBinError1" c_th3_getbinerror1 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBinError2" c_th3_getbinerror2 
+  :: (Ptr RawTH3) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBinError3" c_th3_getbinerror3 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBinLowEdge" c_th3_getbinlowedge 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetBinWidth" c_th3_getbinwidth 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetCellContent" c_th3_getcellcontent 
+  :: (Ptr RawTH3) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetCellError" c_th3_getcellerror 
+  :: (Ptr RawTH3) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetEntries" c_th3_getentries 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetEffectiveEntries" c_th3_geteffectiveentries 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetFunction" c_th3_getfunction 
+  :: (Ptr RawTH3) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH3_GetDimension" c_th3_getdimension 
+  :: (Ptr RawTH3) -> IO CInt
+foreign import ccall "HROOT.h TH3_GetKurtosis" c_th3_getkurtosis 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetLowEdge" c_th3_getlowedge 
+  :: (Ptr RawTH3) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_GetMaximum" c_th3_getmaximum 
+  :: (Ptr RawTH3) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetMaximumBin" c_th3_getmaximumbin 
+  :: (Ptr RawTH3) -> IO CInt
+foreign import ccall "HROOT.h TH3_GetMaximumStored" c_th3_getmaximumstored 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetMinimum" c_th3_getminimum 
+  :: (Ptr RawTH3) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetMinimumBin" c_th3_getminimumbin 
+  :: (Ptr RawTH3) -> IO CInt
+foreign import ccall "HROOT.h TH3_GetMinimumStored" c_th3_getminimumstored 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetMean" c_th3_getmean 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetMeanError" c_th3_getmeanerror 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetNbinsX" c_th3_getnbinsx 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetNbinsY" c_th3_getnbinsy 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetNbinsZ" c_th3_getnbinsz 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetQuantiles" c_th3_getquantiles 
+  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3_GetRandom" c_th3_getrandom 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetStats" c_th3_getstats 
+  :: (Ptr RawTH3) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_GetSumOfWeights" c_th3_getsumofweights 
+  :: (Ptr RawTH3) -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetSumw2" c_th3_getsumw2 
+  :: (Ptr RawTH3) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH3_GetSumw2N" c_th3_getsumw2n 
+  :: (Ptr RawTH3) -> IO CInt
+foreign import ccall "HROOT.h TH3_GetRMS" c_th3_getrms 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetRMSError" c_th3_getrmserror 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_GetSkewness" c_th3_getskewness 
+  :: (Ptr RawTH3) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3_integral1" c_th3_integral1 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3_interpolate1" c_th3_interpolate1 
+  :: (Ptr RawTH3) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3_interpolate2" c_th3_interpolate2 
+  :: (Ptr RawTH3) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3_interpolate3" c_th3_interpolate3 
+  :: (Ptr RawTH3) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3_KolmogorovTest" c_th3_kolmogorovtest 
+  :: (Ptr RawTH3) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3_LabelsDeflate" c_th3_labelsdeflate 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_LabelsInflate" c_th3_labelsinflate 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_LabelsOption" c_th3_labelsoption 
+  :: (Ptr RawTH3) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_multiflyF" c_th3_multiflyf 
+  :: (Ptr RawTH3) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_Multiply" c_th3_multiply 
+  :: (Ptr RawTH3) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_Paint" c_th3_paint 
+  :: (Ptr RawTH3) -> IO ()
+foreign import ccall "HROOT.h TH3_PutStats" c_th3_putstats 
+  :: (Ptr RawTH3) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_Rebin" c_th3_rebin 
+  :: (Ptr RawTH3) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3_RebinAxis" c_th3_rebinaxis 
+  :: (Ptr RawTH3) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH3_Rebuild" c_th3_rebuild 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_RecursiveRemove" c_th3_recursiveremove 
+  :: (Ptr RawTH3) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH3_Reset" c_th3_reset 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_ResetStats" c_th3_resetstats 
+  :: (Ptr RawTH3) -> IO ()
+foreign import ccall "HROOT.h TH3_Scale" c_th3_scale 
+  :: (Ptr RawTH3) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_setAxisColorA" c_th3_setaxiscolora 
+  :: (Ptr RawTH3) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetAxisRange" c_th3_setaxisrange 
+  :: (Ptr RawTH3) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetBarOffset" c_th3_setbaroffset 
+  :: (Ptr RawTH3) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_SetBarWidth" c_th3_setbarwidth 
+  :: (Ptr RawTH3) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_setBinContent1" c_th3_setbincontent1 
+  :: (Ptr RawTH3) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_setBinContent2" c_th3_setbincontent2 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_setBinContent3" c_th3_setbincontent3 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_setBinError1" c_th3_setbinerror1 
+  :: (Ptr RawTH3) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_setBinError2" c_th3_setbinerror2 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_setBinError3" c_th3_setbinerror3 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_setBins1" c_th3_setbins1 
+  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_setBins2" c_th3_setbins2 
+  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_setBins3" c_th3_setbins3 
+  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_SetBinsLength" c_th3_setbinslength 
+  :: (Ptr RawTH3) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3_SetBuffer" c_th3_setbuffer 
+  :: (Ptr RawTH3) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetCellContent" c_th3_setcellcontent 
+  :: (Ptr RawTH3) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_SetContent" c_th3_setcontent 
+  :: (Ptr RawTH3) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_SetContour" c_th3_setcontour 
+  :: (Ptr RawTH3) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_SetContourLevel" c_th3_setcontourlevel 
+  :: (Ptr RawTH3) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_SetDirectory" c_th3_setdirectory 
+  :: (Ptr RawTH3) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3_SetEntries" c_th3_setentries 
+  :: (Ptr RawTH3) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_SetError" c_th3_seterror 
+  :: (Ptr RawTH3) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3_setLabelColorA" c_th3_setlabelcolora 
+  :: (Ptr RawTH3) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_setLabelSizeA" c_th3_setlabelsizea 
+  :: (Ptr RawTH3) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_setLabelFontA" c_th3_setlabelfonta 
+  :: (Ptr RawTH3) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_setLabelOffsetA" c_th3_setlabeloffseta 
+  :: (Ptr RawTH3) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetMaximum" c_th3_setmaximum 
+  :: (Ptr RawTH3) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_SetMinimum" c_th3_setminimum 
+  :: (Ptr RawTH3) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_SetNormFactor" c_th3_setnormfactor 
+  :: (Ptr RawTH3) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3_SetStats" c_th3_setstats 
+  :: (Ptr RawTH3) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3_SetOption" c_th3_setoption 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetXTitle" c_th3_setxtitle 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetYTitle" c_th3_setytitle 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetZTitle" c_th3_setztitle 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_ShowBackground" c_th3_showbackground 
+  :: (Ptr RawTH3) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3_ShowPeaks" c_th3_showpeaks 
+  :: (Ptr RawTH3) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3_Smooth" c_th3_smooth 
+  :: (Ptr RawTH3) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_Sumw2" c_th3_sumw2 
+  :: (Ptr RawTH3) -> IO ()
+foreign import ccall "HROOT.h TH3_SetName" c_th3_setname 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetNameTitle" c_th3_setnametitle 
+  :: (Ptr RawTH3) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetTitle" c_th3_settitle 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_SetLineColor" c_th3_setlinecolor 
+  :: (Ptr RawTH3) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3_SetFillColor" c_th3_setfillcolor 
+  :: (Ptr RawTH3) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3_SetFillStyle" c_th3_setfillstyle 
+  :: (Ptr RawTH3) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3_GetName" c_th3_getname 
+  :: (Ptr RawTH3) -> IO CString
+foreign import ccall "HROOT.h TH3_Draw" c_th3_draw 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_FindObject" c_th3_findobject 
+  :: (Ptr RawTH3) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH3_SaveAs" c_th3_saveas 
+  :: (Ptr RawTH3) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_Write" c_th3_write 
+  :: (Ptr RawTH3) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3_IsA" c_th3_isa 
+  :: (Ptr RawTH3) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH3_printObj" c_th3_printobj 
+  :: (Ptr RawTH3) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3_delete" c_th3_delete 
+  :: (Ptr RawTH3) -> IO ()
+
+foreign import ccall "HROOT.h TH1C_Add" c_th1c_add 
+  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_AddBinContent" c_th1c_addbincontent 
+  :: (Ptr RawTH1C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_Chi2Test" c_th1c_chi2test 
+  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_ComputeIntegral" c_th1c_computeintegral 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_DirectoryAutoAdd" c_th1c_directoryautoadd 
+  :: (Ptr RawTH1C) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1C_DistancetoPrimitive" c_th1c_distancetoprimitive 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1C_Divide" c_th1c_divide 
+  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_DrawCopy" c_th1c_drawcopy 
+  :: (Ptr RawTH1C) -> CString -> IO (Ptr RawTH1C)
+foreign import ccall "HROOT.h TH1C_DrawNormalized" c_th1c_drawnormalized 
+  :: (Ptr RawTH1C) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1C_DrawPanel" c_th1c_drawpanel 
+  :: (Ptr RawTH1C) -> IO ()
+foreign import ccall "HROOT.h TH1C_BufferEmpty" c_th1c_bufferempty 
+  :: (Ptr RawTH1C) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1C_Eval" c_th1c_eval 
+  :: (Ptr RawTH1C) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_ExecuteEvent" c_th1c_executeevent 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1C_FFT" c_th1c_fft 
+  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1C_fill1" c_th1c_fill1 
+  :: (Ptr RawTH1C) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1C_FillN" c_th1c_filln 
+  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1C_FillRandom" c_th1c_fillrandom 
+  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1C_FindBin" c_th1c_findbin 
+  :: (Ptr RawTH1C) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1C_FindFixBin" c_th1c_findfixbin 
+  :: (Ptr RawTH1C) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1C_FindFirstBinAbove" c_th1c_findfirstbinabove 
+  :: (Ptr RawTH1C) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1C_FindLastBinAbove" c_th1c_findlastbinabove 
+  :: (Ptr RawTH1C) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1C_FitPanel" c_th1c_fitpanel 
+  :: (Ptr RawTH1C) -> IO ()
+foreign import ccall "HROOT.h TH1C_getNdivisionA" c_th1c_getndivisiona 
+  :: (Ptr RawTH1C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1C_getAxisColorA" c_th1c_getaxiscolora 
+  :: (Ptr RawTH1C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1C_getLabelColorA" c_th1c_getlabelcolora 
+  :: (Ptr RawTH1C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1C_getLabelFontA" c_th1c_getlabelfonta 
+  :: (Ptr RawTH1C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1C_getLabelOffsetA" c_th1c_getlabeloffseta 
+  :: (Ptr RawTH1C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1C_getLabelSizeA" c_th1c_getlabelsizea 
+  :: (Ptr RawTH1C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1C_getTitleFontA" c_th1c_gettitlefonta 
+  :: (Ptr RawTH1C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1C_getTitleOffsetA" c_th1c_gettitleoffseta 
+  :: (Ptr RawTH1C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1C_getTitleSizeA" c_th1c_gettitlesizea 
+  :: (Ptr RawTH1C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1C_getTickLengthA" c_th1c_getticklengtha 
+  :: (Ptr RawTH1C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBarOffset" c_th1c_getbaroffset 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBarWidth" c_th1c_getbarwidth 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetContour" c_th1c_getcontour 
+  :: (Ptr RawTH1C) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1C_GetContourLevel" c_th1c_getcontourlevel 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetContourLevelPad" c_th1c_getcontourlevelpad 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBin" c_th1c_getbin 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1C_GetBinCenter" c_th1c_getbincenter 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBinContent1" c_th1c_getbincontent1 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBinContent2" c_th1c_getbincontent2 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBinContent3" c_th1c_getbincontent3 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBinError1" c_th1c_getbinerror1 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBinError2" c_th1c_getbinerror2 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBinError3" c_th1c_getbinerror3 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBinLowEdge" c_th1c_getbinlowedge 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetBinWidth" c_th1c_getbinwidth 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetCellContent" c_th1c_getcellcontent 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetCellError" c_th1c_getcellerror 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetEntries" c_th1c_getentries 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetEffectiveEntries" c_th1c_geteffectiveentries 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetFunction" c_th1c_getfunction 
+  :: (Ptr RawTH1C) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH1C_GetDimension" c_th1c_getdimension 
+  :: (Ptr RawTH1C) -> IO CInt
+foreign import ccall "HROOT.h TH1C_GetKurtosis" c_th1c_getkurtosis 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetLowEdge" c_th1c_getlowedge 
+  :: (Ptr RawTH1C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_GetMaximum" c_th1c_getmaximum 
+  :: (Ptr RawTH1C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetMaximumBin" c_th1c_getmaximumbin 
+  :: (Ptr RawTH1C) -> IO CInt
+foreign import ccall "HROOT.h TH1C_GetMaximumStored" c_th1c_getmaximumstored 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetMinimum" c_th1c_getminimum 
+  :: (Ptr RawTH1C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetMinimumBin" c_th1c_getminimumbin 
+  :: (Ptr RawTH1C) -> IO CInt
+foreign import ccall "HROOT.h TH1C_GetMinimumStored" c_th1c_getminimumstored 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetMean" c_th1c_getmean 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetMeanError" c_th1c_getmeanerror 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetNbinsX" c_th1c_getnbinsx 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetNbinsY" c_th1c_getnbinsy 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetNbinsZ" c_th1c_getnbinsz 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetQuantiles" c_th1c_getquantiles 
+  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1C_GetRandom" c_th1c_getrandom 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetStats" c_th1c_getstats 
+  :: (Ptr RawTH1C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_GetSumOfWeights" c_th1c_getsumofweights 
+  :: (Ptr RawTH1C) -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetSumw2" c_th1c_getsumw2 
+  :: (Ptr RawTH1C) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH1C_GetSumw2N" c_th1c_getsumw2n 
+  :: (Ptr RawTH1C) -> IO CInt
+foreign import ccall "HROOT.h TH1C_GetRMS" c_th1c_getrms 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetRMSError" c_th1c_getrmserror 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_GetSkewness" c_th1c_getskewness 
+  :: (Ptr RawTH1C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1C_integral1" c_th1c_integral1 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1C_interpolate1" c_th1c_interpolate1 
+  :: (Ptr RawTH1C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1C_interpolate2" c_th1c_interpolate2 
+  :: (Ptr RawTH1C) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1C_interpolate3" c_th1c_interpolate3 
+  :: (Ptr RawTH1C) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1C_KolmogorovTest" c_th1c_kolmogorovtest 
+  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1C_LabelsDeflate" c_th1c_labelsdeflate 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_LabelsInflate" c_th1c_labelsinflate 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_LabelsOption" c_th1c_labelsoption 
+  :: (Ptr RawTH1C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_multiflyF" c_th1c_multiflyf 
+  :: (Ptr RawTH1C) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_Multiply" c_th1c_multiply 
+  :: (Ptr RawTH1C) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_Paint" c_th1c_paint 
+  :: (Ptr RawTH1C) -> IO ()
+foreign import ccall "HROOT.h TH1C_PutStats" c_th1c_putstats 
+  :: (Ptr RawTH1C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_Rebin" c_th1c_rebin 
+  :: (Ptr RawTH1C) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1C_RebinAxis" c_th1c_rebinaxis 
+  :: (Ptr RawTH1C) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH1C_Rebuild" c_th1c_rebuild 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_RecursiveRemove" c_th1c_recursiveremove 
+  :: (Ptr RawTH1C) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH1C_Reset" c_th1c_reset 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_ResetStats" c_th1c_resetstats 
+  :: (Ptr RawTH1C) -> IO ()
+foreign import ccall "HROOT.h TH1C_Scale" c_th1c_scale 
+  :: (Ptr RawTH1C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_setAxisColorA" c_th1c_setaxiscolora 
+  :: (Ptr RawTH1C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetAxisRange" c_th1c_setaxisrange 
+  :: (Ptr RawTH1C) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetBarOffset" c_th1c_setbaroffset 
+  :: (Ptr RawTH1C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_SetBarWidth" c_th1c_setbarwidth 
+  :: (Ptr RawTH1C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_setBinContent1" c_th1c_setbincontent1 
+  :: (Ptr RawTH1C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_setBinContent2" c_th1c_setbincontent2 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_setBinContent3" c_th1c_setbincontent3 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_setBinError1" c_th1c_setbinerror1 
+  :: (Ptr RawTH1C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_setBinError2" c_th1c_setbinerror2 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_setBinError3" c_th1c_setbinerror3 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_setBins1" c_th1c_setbins1 
+  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_setBins2" c_th1c_setbins2 
+  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_setBins3" c_th1c_setbins3 
+  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_SetBinsLength" c_th1c_setbinslength 
+  :: (Ptr RawTH1C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1C_SetBuffer" c_th1c_setbuffer 
+  :: (Ptr RawTH1C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetCellContent" c_th1c_setcellcontent 
+  :: (Ptr RawTH1C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_SetContent" c_th1c_setcontent 
+  :: (Ptr RawTH1C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_SetContour" c_th1c_setcontour 
+  :: (Ptr RawTH1C) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_SetContourLevel" c_th1c_setcontourlevel 
+  :: (Ptr RawTH1C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_SetDirectory" c_th1c_setdirectory 
+  :: (Ptr RawTH1C) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1C_SetEntries" c_th1c_setentries 
+  :: (Ptr RawTH1C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_SetError" c_th1c_seterror 
+  :: (Ptr RawTH1C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1C_setLabelColorA" c_th1c_setlabelcolora 
+  :: (Ptr RawTH1C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_setLabelSizeA" c_th1c_setlabelsizea 
+  :: (Ptr RawTH1C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_setLabelFontA" c_th1c_setlabelfonta 
+  :: (Ptr RawTH1C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_setLabelOffsetA" c_th1c_setlabeloffseta 
+  :: (Ptr RawTH1C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetMaximum" c_th1c_setmaximum 
+  :: (Ptr RawTH1C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_SetMinimum" c_th1c_setminimum 
+  :: (Ptr RawTH1C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_SetNormFactor" c_th1c_setnormfactor 
+  :: (Ptr RawTH1C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1C_SetStats" c_th1c_setstats 
+  :: (Ptr RawTH1C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1C_SetOption" c_th1c_setoption 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetXTitle" c_th1c_setxtitle 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetYTitle" c_th1c_setytitle 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetZTitle" c_th1c_setztitle 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_ShowBackground" c_th1c_showbackground 
+  :: (Ptr RawTH1C) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1C_ShowPeaks" c_th1c_showpeaks 
+  :: (Ptr RawTH1C) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1C_Smooth" c_th1c_smooth 
+  :: (Ptr RawTH1C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_Sumw2" c_th1c_sumw2 
+  :: (Ptr RawTH1C) -> IO ()
+foreign import ccall "HROOT.h TH1C_SetName" c_th1c_setname 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetNameTitle" c_th1c_setnametitle 
+  :: (Ptr RawTH1C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetTitle" c_th1c_settitle 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_SetLineColor" c_th1c_setlinecolor 
+  :: (Ptr RawTH1C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1C_SetFillColor" c_th1c_setfillcolor 
+  :: (Ptr RawTH1C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1C_SetFillStyle" c_th1c_setfillstyle 
+  :: (Ptr RawTH1C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1C_GetName" c_th1c_getname 
+  :: (Ptr RawTH1C) -> IO CString
+foreign import ccall "HROOT.h TH1C_Draw" c_th1c_draw 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_FindObject" c_th1c_findobject 
+  :: (Ptr RawTH1C) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH1C_SaveAs" c_th1c_saveas 
+  :: (Ptr RawTH1C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_Write" c_th1c_write 
+  :: (Ptr RawTH1C) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1C_IsA" c_th1c_isa 
+  :: (Ptr RawTH1C) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH1C_printObj" c_th1c_printobj 
+  :: (Ptr RawTH1C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1C_delete" c_th1c_delete 
+  :: (Ptr RawTH1C) -> IO ()
+
+foreign import ccall "HROOT.h TH1D_Add" c_th1d_add 
+  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_AddBinContent" c_th1d_addbincontent 
+  :: (Ptr RawTH1D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_Chi2Test" c_th1d_chi2test 
+  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_ComputeIntegral" c_th1d_computeintegral 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_DirectoryAutoAdd" c_th1d_directoryautoadd 
+  :: (Ptr RawTH1D) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1D_DistancetoPrimitive" c_th1d_distancetoprimitive 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1D_Divide" c_th1d_divide 
+  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_DrawCopy" c_th1d_drawcopy 
+  :: (Ptr RawTH1D) -> CString -> IO (Ptr RawTH1D)
+foreign import ccall "HROOT.h TH1D_DrawNormalized" c_th1d_drawnormalized 
+  :: (Ptr RawTH1D) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1D_DrawPanel" c_th1d_drawpanel 
+  :: (Ptr RawTH1D) -> IO ()
+foreign import ccall "HROOT.h TH1D_BufferEmpty" c_th1d_bufferempty 
+  :: (Ptr RawTH1D) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1D_Eval" c_th1d_eval 
+  :: (Ptr RawTH1D) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_ExecuteEvent" c_th1d_executeevent 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1D_FFT" c_th1d_fft 
+  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1D_fill1" c_th1d_fill1 
+  :: (Ptr RawTH1D) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1D_FillN" c_th1d_filln 
+  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1D_FillRandom" c_th1d_fillrandom 
+  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1D_FindBin" c_th1d_findbin 
+  :: (Ptr RawTH1D) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1D_FindFixBin" c_th1d_findfixbin 
+  :: (Ptr RawTH1D) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1D_FindFirstBinAbove" c_th1d_findfirstbinabove 
+  :: (Ptr RawTH1D) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1D_FindLastBinAbove" c_th1d_findlastbinabove 
+  :: (Ptr RawTH1D) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1D_FitPanel" c_th1d_fitpanel 
+  :: (Ptr RawTH1D) -> IO ()
+foreign import ccall "HROOT.h TH1D_getNdivisionA" c_th1d_getndivisiona 
+  :: (Ptr RawTH1D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1D_getAxisColorA" c_th1d_getaxiscolora 
+  :: (Ptr RawTH1D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1D_getLabelColorA" c_th1d_getlabelcolora 
+  :: (Ptr RawTH1D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1D_getLabelFontA" c_th1d_getlabelfonta 
+  :: (Ptr RawTH1D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1D_getLabelOffsetA" c_th1d_getlabeloffseta 
+  :: (Ptr RawTH1D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1D_getLabelSizeA" c_th1d_getlabelsizea 
+  :: (Ptr RawTH1D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1D_getTitleFontA" c_th1d_gettitlefonta 
+  :: (Ptr RawTH1D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1D_getTitleOffsetA" c_th1d_gettitleoffseta 
+  :: (Ptr RawTH1D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1D_getTitleSizeA" c_th1d_gettitlesizea 
+  :: (Ptr RawTH1D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1D_getTickLengthA" c_th1d_getticklengtha 
+  :: (Ptr RawTH1D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBarOffset" c_th1d_getbaroffset 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBarWidth" c_th1d_getbarwidth 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetContour" c_th1d_getcontour 
+  :: (Ptr RawTH1D) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1D_GetContourLevel" c_th1d_getcontourlevel 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetContourLevelPad" c_th1d_getcontourlevelpad 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBin" c_th1d_getbin 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1D_GetBinCenter" c_th1d_getbincenter 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBinContent1" c_th1d_getbincontent1 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBinContent2" c_th1d_getbincontent2 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBinContent3" c_th1d_getbincontent3 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBinError1" c_th1d_getbinerror1 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBinError2" c_th1d_getbinerror2 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBinError3" c_th1d_getbinerror3 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBinLowEdge" c_th1d_getbinlowedge 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetBinWidth" c_th1d_getbinwidth 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetCellContent" c_th1d_getcellcontent 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetCellError" c_th1d_getcellerror 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetEntries" c_th1d_getentries 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetEffectiveEntries" c_th1d_geteffectiveentries 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetFunction" c_th1d_getfunction 
+  :: (Ptr RawTH1D) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH1D_GetDimension" c_th1d_getdimension 
+  :: (Ptr RawTH1D) -> IO CInt
+foreign import ccall "HROOT.h TH1D_GetKurtosis" c_th1d_getkurtosis 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetLowEdge" c_th1d_getlowedge 
+  :: (Ptr RawTH1D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_GetMaximum" c_th1d_getmaximum 
+  :: (Ptr RawTH1D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetMaximumBin" c_th1d_getmaximumbin 
+  :: (Ptr RawTH1D) -> IO CInt
+foreign import ccall "HROOT.h TH1D_GetMaximumStored" c_th1d_getmaximumstored 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetMinimum" c_th1d_getminimum 
+  :: (Ptr RawTH1D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetMinimumBin" c_th1d_getminimumbin 
+  :: (Ptr RawTH1D) -> IO CInt
+foreign import ccall "HROOT.h TH1D_GetMinimumStored" c_th1d_getminimumstored 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetMean" c_th1d_getmean 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetMeanError" c_th1d_getmeanerror 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetNbinsX" c_th1d_getnbinsx 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetNbinsY" c_th1d_getnbinsy 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetNbinsZ" c_th1d_getnbinsz 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetQuantiles" c_th1d_getquantiles 
+  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1D_GetRandom" c_th1d_getrandom 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetStats" c_th1d_getstats 
+  :: (Ptr RawTH1D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_GetSumOfWeights" c_th1d_getsumofweights 
+  :: (Ptr RawTH1D) -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetSumw2" c_th1d_getsumw2 
+  :: (Ptr RawTH1D) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH1D_GetSumw2N" c_th1d_getsumw2n 
+  :: (Ptr RawTH1D) -> IO CInt
+foreign import ccall "HROOT.h TH1D_GetRMS" c_th1d_getrms 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetRMSError" c_th1d_getrmserror 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_GetSkewness" c_th1d_getskewness 
+  :: (Ptr RawTH1D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1D_integral1" c_th1d_integral1 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1D_interpolate1" c_th1d_interpolate1 
+  :: (Ptr RawTH1D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1D_interpolate2" c_th1d_interpolate2 
+  :: (Ptr RawTH1D) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1D_interpolate3" c_th1d_interpolate3 
+  :: (Ptr RawTH1D) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1D_KolmogorovTest" c_th1d_kolmogorovtest 
+  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1D_LabelsDeflate" c_th1d_labelsdeflate 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_LabelsInflate" c_th1d_labelsinflate 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_LabelsOption" c_th1d_labelsoption 
+  :: (Ptr RawTH1D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_multiflyF" c_th1d_multiflyf 
+  :: (Ptr RawTH1D) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_Multiply" c_th1d_multiply 
+  :: (Ptr RawTH1D) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_Paint" c_th1d_paint 
+  :: (Ptr RawTH1D) -> IO ()
+foreign import ccall "HROOT.h TH1D_PutStats" c_th1d_putstats 
+  :: (Ptr RawTH1D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_Rebin" c_th1d_rebin 
+  :: (Ptr RawTH1D) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1D_RebinAxis" c_th1d_rebinaxis 
+  :: (Ptr RawTH1D) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH1D_Rebuild" c_th1d_rebuild 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_RecursiveRemove" c_th1d_recursiveremove 
+  :: (Ptr RawTH1D) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH1D_Reset" c_th1d_reset 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_ResetStats" c_th1d_resetstats 
+  :: (Ptr RawTH1D) -> IO ()
+foreign import ccall "HROOT.h TH1D_Scale" c_th1d_scale 
+  :: (Ptr RawTH1D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_setAxisColorA" c_th1d_setaxiscolora 
+  :: (Ptr RawTH1D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetAxisRange" c_th1d_setaxisrange 
+  :: (Ptr RawTH1D) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetBarOffset" c_th1d_setbaroffset 
+  :: (Ptr RawTH1D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_SetBarWidth" c_th1d_setbarwidth 
+  :: (Ptr RawTH1D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_setBinContent1" c_th1d_setbincontent1 
+  :: (Ptr RawTH1D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_setBinContent2" c_th1d_setbincontent2 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_setBinContent3" c_th1d_setbincontent3 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_setBinError1" c_th1d_setbinerror1 
+  :: (Ptr RawTH1D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_setBinError2" c_th1d_setbinerror2 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_setBinError3" c_th1d_setbinerror3 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_setBins1" c_th1d_setbins1 
+  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_setBins2" c_th1d_setbins2 
+  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_setBins3" c_th1d_setbins3 
+  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_SetBinsLength" c_th1d_setbinslength 
+  :: (Ptr RawTH1D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1D_SetBuffer" c_th1d_setbuffer 
+  :: (Ptr RawTH1D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetCellContent" c_th1d_setcellcontent 
+  :: (Ptr RawTH1D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_SetContent" c_th1d_setcontent 
+  :: (Ptr RawTH1D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_SetContour" c_th1d_setcontour 
+  :: (Ptr RawTH1D) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_SetContourLevel" c_th1d_setcontourlevel 
+  :: (Ptr RawTH1D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_SetDirectory" c_th1d_setdirectory 
+  :: (Ptr RawTH1D) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1D_SetEntries" c_th1d_setentries 
+  :: (Ptr RawTH1D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_SetError" c_th1d_seterror 
+  :: (Ptr RawTH1D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1D_setLabelColorA" c_th1d_setlabelcolora 
+  :: (Ptr RawTH1D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_setLabelSizeA" c_th1d_setlabelsizea 
+  :: (Ptr RawTH1D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_setLabelFontA" c_th1d_setlabelfonta 
+  :: (Ptr RawTH1D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_setLabelOffsetA" c_th1d_setlabeloffseta 
+  :: (Ptr RawTH1D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetMaximum" c_th1d_setmaximum 
+  :: (Ptr RawTH1D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_SetMinimum" c_th1d_setminimum 
+  :: (Ptr RawTH1D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_SetNormFactor" c_th1d_setnormfactor 
+  :: (Ptr RawTH1D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1D_SetStats" c_th1d_setstats 
+  :: (Ptr RawTH1D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1D_SetOption" c_th1d_setoption 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetXTitle" c_th1d_setxtitle 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetYTitle" c_th1d_setytitle 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetZTitle" c_th1d_setztitle 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_ShowBackground" c_th1d_showbackground 
+  :: (Ptr RawTH1D) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1D_ShowPeaks" c_th1d_showpeaks 
+  :: (Ptr RawTH1D) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1D_Smooth" c_th1d_smooth 
+  :: (Ptr RawTH1D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_Sumw2" c_th1d_sumw2 
+  :: (Ptr RawTH1D) -> IO ()
+foreign import ccall "HROOT.h TH1D_SetName" c_th1d_setname 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetNameTitle" c_th1d_setnametitle 
+  :: (Ptr RawTH1D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetTitle" c_th1d_settitle 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_SetLineColor" c_th1d_setlinecolor 
+  :: (Ptr RawTH1D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1D_SetFillColor" c_th1d_setfillcolor 
+  :: (Ptr RawTH1D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1D_SetFillStyle" c_th1d_setfillstyle 
+  :: (Ptr RawTH1D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1D_GetName" c_th1d_getname 
+  :: (Ptr RawTH1D) -> IO CString
+foreign import ccall "HROOT.h TH1D_Draw" c_th1d_draw 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_FindObject" c_th1d_findobject 
+  :: (Ptr RawTH1D) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH1D_SaveAs" c_th1d_saveas 
+  :: (Ptr RawTH1D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_Write" c_th1d_write 
+  :: (Ptr RawTH1D) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1D_IsA" c_th1d_isa 
+  :: (Ptr RawTH1D) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH1D_printObj" c_th1d_printobj 
+  :: (Ptr RawTH1D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1D_delete" c_th1d_delete 
+  :: (Ptr RawTH1D) -> IO ()
+foreign import ccall "HROOT.h TH1D_newTH1D" c_th1d_newth1d 
+  :: CString -> CString -> CInt -> CDouble -> CDouble -> IO (Ptr RawTH1D)
+
+foreign import ccall "HROOT.h TH1F_Add" c_th1f_add 
+  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_AddBinContent" c_th1f_addbincontent 
+  :: (Ptr RawTH1F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_Chi2Test" c_th1f_chi2test 
+  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_ComputeIntegral" c_th1f_computeintegral 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_DirectoryAutoAdd" c_th1f_directoryautoadd 
+  :: (Ptr RawTH1F) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1F_DistancetoPrimitive" c_th1f_distancetoprimitive 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1F_Divide" c_th1f_divide 
+  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_DrawCopy" c_th1f_drawcopy 
+  :: (Ptr RawTH1F) -> CString -> IO (Ptr RawTH1F)
+foreign import ccall "HROOT.h TH1F_DrawNormalized" c_th1f_drawnormalized 
+  :: (Ptr RawTH1F) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1F_DrawPanel" c_th1f_drawpanel 
+  :: (Ptr RawTH1F) -> IO ()
+foreign import ccall "HROOT.h TH1F_BufferEmpty" c_th1f_bufferempty 
+  :: (Ptr RawTH1F) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1F_Eval" c_th1f_eval 
+  :: (Ptr RawTH1F) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_ExecuteEvent" c_th1f_executeevent 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1F_FFT" c_th1f_fft 
+  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1F_fill1" c_th1f_fill1 
+  :: (Ptr RawTH1F) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1F_FillN" c_th1f_filln 
+  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1F_FillRandom" c_th1f_fillrandom 
+  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1F_FindBin" c_th1f_findbin 
+  :: (Ptr RawTH1F) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1F_FindFixBin" c_th1f_findfixbin 
+  :: (Ptr RawTH1F) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1F_FindFirstBinAbove" c_th1f_findfirstbinabove 
+  :: (Ptr RawTH1F) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1F_FindLastBinAbove" c_th1f_findlastbinabove 
+  :: (Ptr RawTH1F) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1F_FitPanel" c_th1f_fitpanel 
+  :: (Ptr RawTH1F) -> IO ()
+foreign import ccall "HROOT.h TH1F_getNdivisionA" c_th1f_getndivisiona 
+  :: (Ptr RawTH1F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1F_getAxisColorA" c_th1f_getaxiscolora 
+  :: (Ptr RawTH1F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1F_getLabelColorA" c_th1f_getlabelcolora 
+  :: (Ptr RawTH1F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1F_getLabelFontA" c_th1f_getlabelfonta 
+  :: (Ptr RawTH1F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1F_getLabelOffsetA" c_th1f_getlabeloffseta 
+  :: (Ptr RawTH1F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1F_getLabelSizeA" c_th1f_getlabelsizea 
+  :: (Ptr RawTH1F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1F_getTitleFontA" c_th1f_gettitlefonta 
+  :: (Ptr RawTH1F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1F_getTitleOffsetA" c_th1f_gettitleoffseta 
+  :: (Ptr RawTH1F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1F_getTitleSizeA" c_th1f_gettitlesizea 
+  :: (Ptr RawTH1F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1F_getTickLengthA" c_th1f_getticklengtha 
+  :: (Ptr RawTH1F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBarOffset" c_th1f_getbaroffset 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBarWidth" c_th1f_getbarwidth 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetContour" c_th1f_getcontour 
+  :: (Ptr RawTH1F) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1F_GetContourLevel" c_th1f_getcontourlevel 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetContourLevelPad" c_th1f_getcontourlevelpad 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBin" c_th1f_getbin 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1F_GetBinCenter" c_th1f_getbincenter 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBinContent1" c_th1f_getbincontent1 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBinContent2" c_th1f_getbincontent2 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBinContent3" c_th1f_getbincontent3 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBinError1" c_th1f_getbinerror1 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBinError2" c_th1f_getbinerror2 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBinError3" c_th1f_getbinerror3 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBinLowEdge" c_th1f_getbinlowedge 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetBinWidth" c_th1f_getbinwidth 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetCellContent" c_th1f_getcellcontent 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetCellError" c_th1f_getcellerror 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetEntries" c_th1f_getentries 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetEffectiveEntries" c_th1f_geteffectiveentries 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetFunction" c_th1f_getfunction 
+  :: (Ptr RawTH1F) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH1F_GetDimension" c_th1f_getdimension 
+  :: (Ptr RawTH1F) -> IO CInt
+foreign import ccall "HROOT.h TH1F_GetKurtosis" c_th1f_getkurtosis 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetLowEdge" c_th1f_getlowedge 
+  :: (Ptr RawTH1F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_GetMaximum" c_th1f_getmaximum 
+  :: (Ptr RawTH1F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetMaximumBin" c_th1f_getmaximumbin 
+  :: (Ptr RawTH1F) -> IO CInt
+foreign import ccall "HROOT.h TH1F_GetMaximumStored" c_th1f_getmaximumstored 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetMinimum" c_th1f_getminimum 
+  :: (Ptr RawTH1F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetMinimumBin" c_th1f_getminimumbin 
+  :: (Ptr RawTH1F) -> IO CInt
+foreign import ccall "HROOT.h TH1F_GetMinimumStored" c_th1f_getminimumstored 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetMean" c_th1f_getmean 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetMeanError" c_th1f_getmeanerror 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetNbinsX" c_th1f_getnbinsx 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetNbinsY" c_th1f_getnbinsy 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetNbinsZ" c_th1f_getnbinsz 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetQuantiles" c_th1f_getquantiles 
+  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1F_GetRandom" c_th1f_getrandom 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetStats" c_th1f_getstats 
+  :: (Ptr RawTH1F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_GetSumOfWeights" c_th1f_getsumofweights 
+  :: (Ptr RawTH1F) -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetSumw2" c_th1f_getsumw2 
+  :: (Ptr RawTH1F) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH1F_GetSumw2N" c_th1f_getsumw2n 
+  :: (Ptr RawTH1F) -> IO CInt
+foreign import ccall "HROOT.h TH1F_GetRMS" c_th1f_getrms 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetRMSError" c_th1f_getrmserror 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_GetSkewness" c_th1f_getskewness 
+  :: (Ptr RawTH1F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1F_integral1" c_th1f_integral1 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1F_interpolate1" c_th1f_interpolate1 
+  :: (Ptr RawTH1F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1F_interpolate2" c_th1f_interpolate2 
+  :: (Ptr RawTH1F) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1F_interpolate3" c_th1f_interpolate3 
+  :: (Ptr RawTH1F) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1F_KolmogorovTest" c_th1f_kolmogorovtest 
+  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1F_LabelsDeflate" c_th1f_labelsdeflate 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_LabelsInflate" c_th1f_labelsinflate 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_LabelsOption" c_th1f_labelsoption 
+  :: (Ptr RawTH1F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_multiflyF" c_th1f_multiflyf 
+  :: (Ptr RawTH1F) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_Multiply" c_th1f_multiply 
+  :: (Ptr RawTH1F) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_Paint" c_th1f_paint 
+  :: (Ptr RawTH1F) -> IO ()
+foreign import ccall "HROOT.h TH1F_PutStats" c_th1f_putstats 
+  :: (Ptr RawTH1F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_Rebin" c_th1f_rebin 
+  :: (Ptr RawTH1F) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1F_RebinAxis" c_th1f_rebinaxis 
+  :: (Ptr RawTH1F) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH1F_Rebuild" c_th1f_rebuild 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_RecursiveRemove" c_th1f_recursiveremove 
+  :: (Ptr RawTH1F) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH1F_Reset" c_th1f_reset 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_ResetStats" c_th1f_resetstats 
+  :: (Ptr RawTH1F) -> IO ()
+foreign import ccall "HROOT.h TH1F_Scale" c_th1f_scale 
+  :: (Ptr RawTH1F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_setAxisColorA" c_th1f_setaxiscolora 
+  :: (Ptr RawTH1F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetAxisRange" c_th1f_setaxisrange 
+  :: (Ptr RawTH1F) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetBarOffset" c_th1f_setbaroffset 
+  :: (Ptr RawTH1F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_SetBarWidth" c_th1f_setbarwidth 
+  :: (Ptr RawTH1F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_setBinContent1" c_th1f_setbincontent1 
+  :: (Ptr RawTH1F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_setBinContent2" c_th1f_setbincontent2 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_setBinContent3" c_th1f_setbincontent3 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_setBinError1" c_th1f_setbinerror1 
+  :: (Ptr RawTH1F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_setBinError2" c_th1f_setbinerror2 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_setBinError3" c_th1f_setbinerror3 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_setBins1" c_th1f_setbins1 
+  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_setBins2" c_th1f_setbins2 
+  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_setBins3" c_th1f_setbins3 
+  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_SetBinsLength" c_th1f_setbinslength 
+  :: (Ptr RawTH1F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1F_SetBuffer" c_th1f_setbuffer 
+  :: (Ptr RawTH1F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetCellContent" c_th1f_setcellcontent 
+  :: (Ptr RawTH1F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_SetContent" c_th1f_setcontent 
+  :: (Ptr RawTH1F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_SetContour" c_th1f_setcontour 
+  :: (Ptr RawTH1F) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_SetContourLevel" c_th1f_setcontourlevel 
+  :: (Ptr RawTH1F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_SetDirectory" c_th1f_setdirectory 
+  :: (Ptr RawTH1F) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1F_SetEntries" c_th1f_setentries 
+  :: (Ptr RawTH1F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_SetError" c_th1f_seterror 
+  :: (Ptr RawTH1F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1F_setLabelColorA" c_th1f_setlabelcolora 
+  :: (Ptr RawTH1F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_setLabelSizeA" c_th1f_setlabelsizea 
+  :: (Ptr RawTH1F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_setLabelFontA" c_th1f_setlabelfonta 
+  :: (Ptr RawTH1F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_setLabelOffsetA" c_th1f_setlabeloffseta 
+  :: (Ptr RawTH1F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetMaximum" c_th1f_setmaximum 
+  :: (Ptr RawTH1F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_SetMinimum" c_th1f_setminimum 
+  :: (Ptr RawTH1F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_SetNormFactor" c_th1f_setnormfactor 
+  :: (Ptr RawTH1F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1F_SetStats" c_th1f_setstats 
+  :: (Ptr RawTH1F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1F_SetOption" c_th1f_setoption 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetXTitle" c_th1f_setxtitle 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetYTitle" c_th1f_setytitle 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetZTitle" c_th1f_setztitle 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_ShowBackground" c_th1f_showbackground 
+  :: (Ptr RawTH1F) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1F_ShowPeaks" c_th1f_showpeaks 
+  :: (Ptr RawTH1F) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1F_Smooth" c_th1f_smooth 
+  :: (Ptr RawTH1F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_Sumw2" c_th1f_sumw2 
+  :: (Ptr RawTH1F) -> IO ()
+foreign import ccall "HROOT.h TH1F_SetName" c_th1f_setname 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetNameTitle" c_th1f_setnametitle 
+  :: (Ptr RawTH1F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetTitle" c_th1f_settitle 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_SetLineColor" c_th1f_setlinecolor 
+  :: (Ptr RawTH1F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1F_SetFillColor" c_th1f_setfillcolor 
+  :: (Ptr RawTH1F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1F_SetFillStyle" c_th1f_setfillstyle 
+  :: (Ptr RawTH1F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1F_GetName" c_th1f_getname 
+  :: (Ptr RawTH1F) -> IO CString
+foreign import ccall "HROOT.h TH1F_Draw" c_th1f_draw 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_FindObject" c_th1f_findobject 
+  :: (Ptr RawTH1F) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH1F_SaveAs" c_th1f_saveas 
+  :: (Ptr RawTH1F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_Write" c_th1f_write 
+  :: (Ptr RawTH1F) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1F_IsA" c_th1f_isa 
+  :: (Ptr RawTH1F) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH1F_printObj" c_th1f_printobj 
+  :: (Ptr RawTH1F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1F_delete" c_th1f_delete 
+  :: (Ptr RawTH1F) -> IO ()
+foreign import ccall "HROOT.h TH1F_newTH1F" c_th1f_newth1f 
+  :: CString -> CString -> CInt -> CDouble -> CDouble -> IO (Ptr RawTH1F)
+
+foreign import ccall "HROOT.h TH1I_Add" c_th1i_add 
+  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_AddBinContent" c_th1i_addbincontent 
+  :: (Ptr RawTH1I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_Chi2Test" c_th1i_chi2test 
+  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_ComputeIntegral" c_th1i_computeintegral 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_DirectoryAutoAdd" c_th1i_directoryautoadd 
+  :: (Ptr RawTH1I) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1I_DistancetoPrimitive" c_th1i_distancetoprimitive 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1I_Divide" c_th1i_divide 
+  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_DrawCopy" c_th1i_drawcopy 
+  :: (Ptr RawTH1I) -> CString -> IO (Ptr RawTH1I)
+foreign import ccall "HROOT.h TH1I_DrawNormalized" c_th1i_drawnormalized 
+  :: (Ptr RawTH1I) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1I_DrawPanel" c_th1i_drawpanel 
+  :: (Ptr RawTH1I) -> IO ()
+foreign import ccall "HROOT.h TH1I_BufferEmpty" c_th1i_bufferempty 
+  :: (Ptr RawTH1I) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1I_Eval" c_th1i_eval 
+  :: (Ptr RawTH1I) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_ExecuteEvent" c_th1i_executeevent 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1I_FFT" c_th1i_fft 
+  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1I_fill1" c_th1i_fill1 
+  :: (Ptr RawTH1I) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1I_FillN" c_th1i_filln 
+  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1I_FillRandom" c_th1i_fillrandom 
+  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1I_FindBin" c_th1i_findbin 
+  :: (Ptr RawTH1I) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1I_FindFixBin" c_th1i_findfixbin 
+  :: (Ptr RawTH1I) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1I_FindFirstBinAbove" c_th1i_findfirstbinabove 
+  :: (Ptr RawTH1I) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1I_FindLastBinAbove" c_th1i_findlastbinabove 
+  :: (Ptr RawTH1I) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1I_FitPanel" c_th1i_fitpanel 
+  :: (Ptr RawTH1I) -> IO ()
+foreign import ccall "HROOT.h TH1I_getNdivisionA" c_th1i_getndivisiona 
+  :: (Ptr RawTH1I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1I_getAxisColorA" c_th1i_getaxiscolora 
+  :: (Ptr RawTH1I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1I_getLabelColorA" c_th1i_getlabelcolora 
+  :: (Ptr RawTH1I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1I_getLabelFontA" c_th1i_getlabelfonta 
+  :: (Ptr RawTH1I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1I_getLabelOffsetA" c_th1i_getlabeloffseta 
+  :: (Ptr RawTH1I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1I_getLabelSizeA" c_th1i_getlabelsizea 
+  :: (Ptr RawTH1I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1I_getTitleFontA" c_th1i_gettitlefonta 
+  :: (Ptr RawTH1I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1I_getTitleOffsetA" c_th1i_gettitleoffseta 
+  :: (Ptr RawTH1I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1I_getTitleSizeA" c_th1i_gettitlesizea 
+  :: (Ptr RawTH1I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1I_getTickLengthA" c_th1i_getticklengtha 
+  :: (Ptr RawTH1I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBarOffset" c_th1i_getbaroffset 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBarWidth" c_th1i_getbarwidth 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetContour" c_th1i_getcontour 
+  :: (Ptr RawTH1I) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1I_GetContourLevel" c_th1i_getcontourlevel 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetContourLevelPad" c_th1i_getcontourlevelpad 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBin" c_th1i_getbin 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1I_GetBinCenter" c_th1i_getbincenter 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBinContent1" c_th1i_getbincontent1 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBinContent2" c_th1i_getbincontent2 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBinContent3" c_th1i_getbincontent3 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBinError1" c_th1i_getbinerror1 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBinError2" c_th1i_getbinerror2 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBinError3" c_th1i_getbinerror3 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBinLowEdge" c_th1i_getbinlowedge 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetBinWidth" c_th1i_getbinwidth 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetCellContent" c_th1i_getcellcontent 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetCellError" c_th1i_getcellerror 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetEntries" c_th1i_getentries 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetEffectiveEntries" c_th1i_geteffectiveentries 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetFunction" c_th1i_getfunction 
+  :: (Ptr RawTH1I) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH1I_GetDimension" c_th1i_getdimension 
+  :: (Ptr RawTH1I) -> IO CInt
+foreign import ccall "HROOT.h TH1I_GetKurtosis" c_th1i_getkurtosis 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetLowEdge" c_th1i_getlowedge 
+  :: (Ptr RawTH1I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_GetMaximum" c_th1i_getmaximum 
+  :: (Ptr RawTH1I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetMaximumBin" c_th1i_getmaximumbin 
+  :: (Ptr RawTH1I) -> IO CInt
+foreign import ccall "HROOT.h TH1I_GetMaximumStored" c_th1i_getmaximumstored 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetMinimum" c_th1i_getminimum 
+  :: (Ptr RawTH1I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetMinimumBin" c_th1i_getminimumbin 
+  :: (Ptr RawTH1I) -> IO CInt
+foreign import ccall "HROOT.h TH1I_GetMinimumStored" c_th1i_getminimumstored 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetMean" c_th1i_getmean 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetMeanError" c_th1i_getmeanerror 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetNbinsX" c_th1i_getnbinsx 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetNbinsY" c_th1i_getnbinsy 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetNbinsZ" c_th1i_getnbinsz 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetQuantiles" c_th1i_getquantiles 
+  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1I_GetRandom" c_th1i_getrandom 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetStats" c_th1i_getstats 
+  :: (Ptr RawTH1I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_GetSumOfWeights" c_th1i_getsumofweights 
+  :: (Ptr RawTH1I) -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetSumw2" c_th1i_getsumw2 
+  :: (Ptr RawTH1I) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH1I_GetSumw2N" c_th1i_getsumw2n 
+  :: (Ptr RawTH1I) -> IO CInt
+foreign import ccall "HROOT.h TH1I_GetRMS" c_th1i_getrms 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetRMSError" c_th1i_getrmserror 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_GetSkewness" c_th1i_getskewness 
+  :: (Ptr RawTH1I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1I_integral1" c_th1i_integral1 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1I_interpolate1" c_th1i_interpolate1 
+  :: (Ptr RawTH1I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1I_interpolate2" c_th1i_interpolate2 
+  :: (Ptr RawTH1I) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1I_interpolate3" c_th1i_interpolate3 
+  :: (Ptr RawTH1I) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1I_KolmogorovTest" c_th1i_kolmogorovtest 
+  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1I_LabelsDeflate" c_th1i_labelsdeflate 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_LabelsInflate" c_th1i_labelsinflate 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_LabelsOption" c_th1i_labelsoption 
+  :: (Ptr RawTH1I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_multiflyF" c_th1i_multiflyf 
+  :: (Ptr RawTH1I) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_Multiply" c_th1i_multiply 
+  :: (Ptr RawTH1I) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_Paint" c_th1i_paint 
+  :: (Ptr RawTH1I) -> IO ()
+foreign import ccall "HROOT.h TH1I_PutStats" c_th1i_putstats 
+  :: (Ptr RawTH1I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_Rebin" c_th1i_rebin 
+  :: (Ptr RawTH1I) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1I_RebinAxis" c_th1i_rebinaxis 
+  :: (Ptr RawTH1I) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH1I_Rebuild" c_th1i_rebuild 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_RecursiveRemove" c_th1i_recursiveremove 
+  :: (Ptr RawTH1I) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH1I_Reset" c_th1i_reset 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_ResetStats" c_th1i_resetstats 
+  :: (Ptr RawTH1I) -> IO ()
+foreign import ccall "HROOT.h TH1I_Scale" c_th1i_scale 
+  :: (Ptr RawTH1I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_setAxisColorA" c_th1i_setaxiscolora 
+  :: (Ptr RawTH1I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetAxisRange" c_th1i_setaxisrange 
+  :: (Ptr RawTH1I) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetBarOffset" c_th1i_setbaroffset 
+  :: (Ptr RawTH1I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_SetBarWidth" c_th1i_setbarwidth 
+  :: (Ptr RawTH1I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_setBinContent1" c_th1i_setbincontent1 
+  :: (Ptr RawTH1I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_setBinContent2" c_th1i_setbincontent2 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_setBinContent3" c_th1i_setbincontent3 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_setBinError1" c_th1i_setbinerror1 
+  :: (Ptr RawTH1I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_setBinError2" c_th1i_setbinerror2 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_setBinError3" c_th1i_setbinerror3 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_setBins1" c_th1i_setbins1 
+  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_setBins2" c_th1i_setbins2 
+  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_setBins3" c_th1i_setbins3 
+  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_SetBinsLength" c_th1i_setbinslength 
+  :: (Ptr RawTH1I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1I_SetBuffer" c_th1i_setbuffer 
+  :: (Ptr RawTH1I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetCellContent" c_th1i_setcellcontent 
+  :: (Ptr RawTH1I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_SetContent" c_th1i_setcontent 
+  :: (Ptr RawTH1I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_SetContour" c_th1i_setcontour 
+  :: (Ptr RawTH1I) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_SetContourLevel" c_th1i_setcontourlevel 
+  :: (Ptr RawTH1I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_SetDirectory" c_th1i_setdirectory 
+  :: (Ptr RawTH1I) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1I_SetEntries" c_th1i_setentries 
+  :: (Ptr RawTH1I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_SetError" c_th1i_seterror 
+  :: (Ptr RawTH1I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1I_setLabelColorA" c_th1i_setlabelcolora 
+  :: (Ptr RawTH1I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_setLabelSizeA" c_th1i_setlabelsizea 
+  :: (Ptr RawTH1I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_setLabelFontA" c_th1i_setlabelfonta 
+  :: (Ptr RawTH1I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_setLabelOffsetA" c_th1i_setlabeloffseta 
+  :: (Ptr RawTH1I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetMaximum" c_th1i_setmaximum 
+  :: (Ptr RawTH1I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_SetMinimum" c_th1i_setminimum 
+  :: (Ptr RawTH1I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_SetNormFactor" c_th1i_setnormfactor 
+  :: (Ptr RawTH1I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1I_SetStats" c_th1i_setstats 
+  :: (Ptr RawTH1I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1I_SetOption" c_th1i_setoption 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetXTitle" c_th1i_setxtitle 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetYTitle" c_th1i_setytitle 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetZTitle" c_th1i_setztitle 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_ShowBackground" c_th1i_showbackground 
+  :: (Ptr RawTH1I) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1I_ShowPeaks" c_th1i_showpeaks 
+  :: (Ptr RawTH1I) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1I_Smooth" c_th1i_smooth 
+  :: (Ptr RawTH1I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_Sumw2" c_th1i_sumw2 
+  :: (Ptr RawTH1I) -> IO ()
+foreign import ccall "HROOT.h TH1I_SetName" c_th1i_setname 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetNameTitle" c_th1i_setnametitle 
+  :: (Ptr RawTH1I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetTitle" c_th1i_settitle 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_SetLineColor" c_th1i_setlinecolor 
+  :: (Ptr RawTH1I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1I_SetFillColor" c_th1i_setfillcolor 
+  :: (Ptr RawTH1I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1I_SetFillStyle" c_th1i_setfillstyle 
+  :: (Ptr RawTH1I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1I_GetName" c_th1i_getname 
+  :: (Ptr RawTH1I) -> IO CString
+foreign import ccall "HROOT.h TH1I_Draw" c_th1i_draw 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_FindObject" c_th1i_findobject 
+  :: (Ptr RawTH1I) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH1I_SaveAs" c_th1i_saveas 
+  :: (Ptr RawTH1I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_Write" c_th1i_write 
+  :: (Ptr RawTH1I) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1I_IsA" c_th1i_isa 
+  :: (Ptr RawTH1I) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH1I_printObj" c_th1i_printobj 
+  :: (Ptr RawTH1I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1I_delete" c_th1i_delete 
+  :: (Ptr RawTH1I) -> IO ()
+
+foreign import ccall "HROOT.h TH1S_Add" c_th1s_add 
+  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_AddBinContent" c_th1s_addbincontent 
+  :: (Ptr RawTH1S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_Chi2Test" c_th1s_chi2test 
+  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_ComputeIntegral" c_th1s_computeintegral 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_DirectoryAutoAdd" c_th1s_directoryautoadd 
+  :: (Ptr RawTH1S) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1S_DistancetoPrimitive" c_th1s_distancetoprimitive 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1S_Divide" c_th1s_divide 
+  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_DrawCopy" c_th1s_drawcopy 
+  :: (Ptr RawTH1S) -> CString -> IO (Ptr RawTH1S)
+foreign import ccall "HROOT.h TH1S_DrawNormalized" c_th1s_drawnormalized 
+  :: (Ptr RawTH1S) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1S_DrawPanel" c_th1s_drawpanel 
+  :: (Ptr RawTH1S) -> IO ()
+foreign import ccall "HROOT.h TH1S_BufferEmpty" c_th1s_bufferempty 
+  :: (Ptr RawTH1S) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1S_Eval" c_th1s_eval 
+  :: (Ptr RawTH1S) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_ExecuteEvent" c_th1s_executeevent 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1S_FFT" c_th1s_fft 
+  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1S_fill1" c_th1s_fill1 
+  :: (Ptr RawTH1S) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1S_FillN" c_th1s_filln 
+  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1S_FillRandom" c_th1s_fillrandom 
+  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1S_FindBin" c_th1s_findbin 
+  :: (Ptr RawTH1S) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1S_FindFixBin" c_th1s_findfixbin 
+  :: (Ptr RawTH1S) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1S_FindFirstBinAbove" c_th1s_findfirstbinabove 
+  :: (Ptr RawTH1S) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1S_FindLastBinAbove" c_th1s_findlastbinabove 
+  :: (Ptr RawTH1S) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1S_FitPanel" c_th1s_fitpanel 
+  :: (Ptr RawTH1S) -> IO ()
+foreign import ccall "HROOT.h TH1S_getNdivisionA" c_th1s_getndivisiona 
+  :: (Ptr RawTH1S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1S_getAxisColorA" c_th1s_getaxiscolora 
+  :: (Ptr RawTH1S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1S_getLabelColorA" c_th1s_getlabelcolora 
+  :: (Ptr RawTH1S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1S_getLabelFontA" c_th1s_getlabelfonta 
+  :: (Ptr RawTH1S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1S_getLabelOffsetA" c_th1s_getlabeloffseta 
+  :: (Ptr RawTH1S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1S_getLabelSizeA" c_th1s_getlabelsizea 
+  :: (Ptr RawTH1S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1S_getTitleFontA" c_th1s_gettitlefonta 
+  :: (Ptr RawTH1S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH1S_getTitleOffsetA" c_th1s_gettitleoffseta 
+  :: (Ptr RawTH1S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1S_getTitleSizeA" c_th1s_gettitlesizea 
+  :: (Ptr RawTH1S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1S_getTickLengthA" c_th1s_getticklengtha 
+  :: (Ptr RawTH1S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBarOffset" c_th1s_getbaroffset 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBarWidth" c_th1s_getbarwidth 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetContour" c_th1s_getcontour 
+  :: (Ptr RawTH1S) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1S_GetContourLevel" c_th1s_getcontourlevel 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetContourLevelPad" c_th1s_getcontourlevelpad 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBin" c_th1s_getbin 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1S_GetBinCenter" c_th1s_getbincenter 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBinContent1" c_th1s_getbincontent1 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBinContent2" c_th1s_getbincontent2 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBinContent3" c_th1s_getbincontent3 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBinError1" c_th1s_getbinerror1 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBinError2" c_th1s_getbinerror2 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBinError3" c_th1s_getbinerror3 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBinLowEdge" c_th1s_getbinlowedge 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetBinWidth" c_th1s_getbinwidth 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetCellContent" c_th1s_getcellcontent 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetCellError" c_th1s_getcellerror 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetEntries" c_th1s_getentries 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetEffectiveEntries" c_th1s_geteffectiveentries 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetFunction" c_th1s_getfunction 
+  :: (Ptr RawTH1S) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH1S_GetDimension" c_th1s_getdimension 
+  :: (Ptr RawTH1S) -> IO CInt
+foreign import ccall "HROOT.h TH1S_GetKurtosis" c_th1s_getkurtosis 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetLowEdge" c_th1s_getlowedge 
+  :: (Ptr RawTH1S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_GetMaximum" c_th1s_getmaximum 
+  :: (Ptr RawTH1S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetMaximumBin" c_th1s_getmaximumbin 
+  :: (Ptr RawTH1S) -> IO CInt
+foreign import ccall "HROOT.h TH1S_GetMaximumStored" c_th1s_getmaximumstored 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetMinimum" c_th1s_getminimum 
+  :: (Ptr RawTH1S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetMinimumBin" c_th1s_getminimumbin 
+  :: (Ptr RawTH1S) -> IO CInt
+foreign import ccall "HROOT.h TH1S_GetMinimumStored" c_th1s_getminimumstored 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetMean" c_th1s_getmean 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetMeanError" c_th1s_getmeanerror 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetNbinsX" c_th1s_getnbinsx 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetNbinsY" c_th1s_getnbinsy 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetNbinsZ" c_th1s_getnbinsz 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetQuantiles" c_th1s_getquantiles 
+  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH1S_GetRandom" c_th1s_getrandom 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetStats" c_th1s_getstats 
+  :: (Ptr RawTH1S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_GetSumOfWeights" c_th1s_getsumofweights 
+  :: (Ptr RawTH1S) -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetSumw2" c_th1s_getsumw2 
+  :: (Ptr RawTH1S) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH1S_GetSumw2N" c_th1s_getsumw2n 
+  :: (Ptr RawTH1S) -> IO CInt
+foreign import ccall "HROOT.h TH1S_GetRMS" c_th1s_getrms 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetRMSError" c_th1s_getrmserror 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_GetSkewness" c_th1s_getskewness 
+  :: (Ptr RawTH1S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH1S_integral1" c_th1s_integral1 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1S_interpolate1" c_th1s_interpolate1 
+  :: (Ptr RawTH1S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1S_interpolate2" c_th1s_interpolate2 
+  :: (Ptr RawTH1S) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1S_interpolate3" c_th1s_interpolate3 
+  :: (Ptr RawTH1S) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH1S_KolmogorovTest" c_th1s_kolmogorovtest 
+  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH1S_LabelsDeflate" c_th1s_labelsdeflate 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_LabelsInflate" c_th1s_labelsinflate 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_LabelsOption" c_th1s_labelsoption 
+  :: (Ptr RawTH1S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_multiflyF" c_th1s_multiflyf 
+  :: (Ptr RawTH1S) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_Multiply" c_th1s_multiply 
+  :: (Ptr RawTH1S) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_Paint" c_th1s_paint 
+  :: (Ptr RawTH1S) -> IO ()
+foreign import ccall "HROOT.h TH1S_PutStats" c_th1s_putstats 
+  :: (Ptr RawTH1S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_Rebin" c_th1s_rebin 
+  :: (Ptr RawTH1S) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1S_RebinAxis" c_th1s_rebinaxis 
+  :: (Ptr RawTH1S) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH1S_Rebuild" c_th1s_rebuild 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_RecursiveRemove" c_th1s_recursiveremove 
+  :: (Ptr RawTH1S) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH1S_Reset" c_th1s_reset 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_ResetStats" c_th1s_resetstats 
+  :: (Ptr RawTH1S) -> IO ()
+foreign import ccall "HROOT.h TH1S_Scale" c_th1s_scale 
+  :: (Ptr RawTH1S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_setAxisColorA" c_th1s_setaxiscolora 
+  :: (Ptr RawTH1S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetAxisRange" c_th1s_setaxisrange 
+  :: (Ptr RawTH1S) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetBarOffset" c_th1s_setbaroffset 
+  :: (Ptr RawTH1S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_SetBarWidth" c_th1s_setbarwidth 
+  :: (Ptr RawTH1S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_setBinContent1" c_th1s_setbincontent1 
+  :: (Ptr RawTH1S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_setBinContent2" c_th1s_setbincontent2 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_setBinContent3" c_th1s_setbincontent3 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_setBinError1" c_th1s_setbinerror1 
+  :: (Ptr RawTH1S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_setBinError2" c_th1s_setbinerror2 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_setBinError3" c_th1s_setbinerror3 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_setBins1" c_th1s_setbins1 
+  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_setBins2" c_th1s_setbins2 
+  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_setBins3" c_th1s_setbins3 
+  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_SetBinsLength" c_th1s_setbinslength 
+  :: (Ptr RawTH1S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1S_SetBuffer" c_th1s_setbuffer 
+  :: (Ptr RawTH1S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetCellContent" c_th1s_setcellcontent 
+  :: (Ptr RawTH1S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_SetContent" c_th1s_setcontent 
+  :: (Ptr RawTH1S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_SetContour" c_th1s_setcontour 
+  :: (Ptr RawTH1S) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_SetContourLevel" c_th1s_setcontourlevel 
+  :: (Ptr RawTH1S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_SetDirectory" c_th1s_setdirectory 
+  :: (Ptr RawTH1S) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH1S_SetEntries" c_th1s_setentries 
+  :: (Ptr RawTH1S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_SetError" c_th1s_seterror 
+  :: (Ptr RawTH1S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH1S_setLabelColorA" c_th1s_setlabelcolora 
+  :: (Ptr RawTH1S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_setLabelSizeA" c_th1s_setlabelsizea 
+  :: (Ptr RawTH1S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_setLabelFontA" c_th1s_setlabelfonta 
+  :: (Ptr RawTH1S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_setLabelOffsetA" c_th1s_setlabeloffseta 
+  :: (Ptr RawTH1S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetMaximum" c_th1s_setmaximum 
+  :: (Ptr RawTH1S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_SetMinimum" c_th1s_setminimum 
+  :: (Ptr RawTH1S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_SetNormFactor" c_th1s_setnormfactor 
+  :: (Ptr RawTH1S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH1S_SetStats" c_th1s_setstats 
+  :: (Ptr RawTH1S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1S_SetOption" c_th1s_setoption 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetXTitle" c_th1s_setxtitle 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetYTitle" c_th1s_setytitle 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetZTitle" c_th1s_setztitle 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_ShowBackground" c_th1s_showbackground 
+  :: (Ptr RawTH1S) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH1S_ShowPeaks" c_th1s_showpeaks 
+  :: (Ptr RawTH1S) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH1S_Smooth" c_th1s_smooth 
+  :: (Ptr RawTH1S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_Sumw2" c_th1s_sumw2 
+  :: (Ptr RawTH1S) -> IO ()
+foreign import ccall "HROOT.h TH1S_SetName" c_th1s_setname 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetNameTitle" c_th1s_setnametitle 
+  :: (Ptr RawTH1S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetTitle" c_th1s_settitle 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_SetLineColor" c_th1s_setlinecolor 
+  :: (Ptr RawTH1S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1S_SetFillColor" c_th1s_setfillcolor 
+  :: (Ptr RawTH1S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1S_SetFillStyle" c_th1s_setfillstyle 
+  :: (Ptr RawTH1S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH1S_GetName" c_th1s_getname 
+  :: (Ptr RawTH1S) -> IO CString
+foreign import ccall "HROOT.h TH1S_Draw" c_th1s_draw 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_FindObject" c_th1s_findobject 
+  :: (Ptr RawTH1S) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH1S_SaveAs" c_th1s_saveas 
+  :: (Ptr RawTH1S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_Write" c_th1s_write 
+  :: (Ptr RawTH1S) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH1S_IsA" c_th1s_isa 
+  :: (Ptr RawTH1S) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH1S_printObj" c_th1s_printobj 
+  :: (Ptr RawTH1S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH1S_delete" c_th1s_delete 
+  :: (Ptr RawTH1S) -> IO ()
+
+foreign import ccall "HROOT.h TH2C_fill2" c_th2c_fill2 
+  :: (Ptr RawTH2C) -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2C_fillRandom2" c_th2c_fillrandom2 
+  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_findFirstBinAbove2" c_th2c_findfirstbinabove2 
+  :: (Ptr RawTH2C) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2C_findLastBinAbove2" c_th2c_findlastbinabove2 
+  :: (Ptr RawTH2C) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2C_FitSlicesX" c_th2c_fitslicesx 
+  :: (Ptr RawTH2C) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2C_FitSlicesY" c_th2c_fitslicesy 
+  :: (Ptr RawTH2C) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2C_GetCorrelationFactor" c_th2c_getcorrelationfactor 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetCovariance" c_th2c_getcovariance 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_integral2" c_th2c_integral2 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2C_RebinX" c_th2c_rebinx 
+  :: (Ptr RawTH2C) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2C_RebinY" c_th2c_rebiny 
+  :: (Ptr RawTH2C) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2C_Rebin2D" c_th2c_rebin2d 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2C_SetShowProjectionX" c_th2c_setshowprojectionx 
+  :: (Ptr RawTH2C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_SetShowProjectionY" c_th2c_setshowprojectiony 
+  :: (Ptr RawTH2C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_Add" c_th2c_add 
+  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_AddBinContent" c_th2c_addbincontent 
+  :: (Ptr RawTH2C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_Chi2Test" c_th2c_chi2test 
+  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_ComputeIntegral" c_th2c_computeintegral 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_DirectoryAutoAdd" c_th2c_directoryautoadd 
+  :: (Ptr RawTH2C) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2C_DistancetoPrimitive" c_th2c_distancetoprimitive 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2C_Divide" c_th2c_divide 
+  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_DrawCopy" c_th2c_drawcopy 
+  :: (Ptr RawTH2C) -> CString -> IO (Ptr RawTH2C)
+foreign import ccall "HROOT.h TH2C_DrawNormalized" c_th2c_drawnormalized 
+  :: (Ptr RawTH2C) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2C_DrawPanel" c_th2c_drawpanel 
+  :: (Ptr RawTH2C) -> IO ()
+foreign import ccall "HROOT.h TH2C_BufferEmpty" c_th2c_bufferempty 
+  :: (Ptr RawTH2C) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2C_Eval" c_th2c_eval 
+  :: (Ptr RawTH2C) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_ExecuteEvent" c_th2c_executeevent 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_FFT" c_th2c_fft 
+  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2C_fill1" c_th2c_fill1 
+  :: (Ptr RawTH2C) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2C_FillN" c_th2c_filln 
+  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_FillRandom" c_th2c_fillrandom 
+  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_FindBin" c_th2c_findbin 
+  :: (Ptr RawTH2C) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2C_FindFixBin" c_th2c_findfixbin 
+  :: (Ptr RawTH2C) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2C_FindFirstBinAbove" c_th2c_findfirstbinabove 
+  :: (Ptr RawTH2C) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2C_FindLastBinAbove" c_th2c_findlastbinabove 
+  :: (Ptr RawTH2C) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2C_FitPanel" c_th2c_fitpanel 
+  :: (Ptr RawTH2C) -> IO ()
+foreign import ccall "HROOT.h TH2C_getNdivisionA" c_th2c_getndivisiona 
+  :: (Ptr RawTH2C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2C_getAxisColorA" c_th2c_getaxiscolora 
+  :: (Ptr RawTH2C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2C_getLabelColorA" c_th2c_getlabelcolora 
+  :: (Ptr RawTH2C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2C_getLabelFontA" c_th2c_getlabelfonta 
+  :: (Ptr RawTH2C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2C_getLabelOffsetA" c_th2c_getlabeloffseta 
+  :: (Ptr RawTH2C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2C_getLabelSizeA" c_th2c_getlabelsizea 
+  :: (Ptr RawTH2C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2C_getTitleFontA" c_th2c_gettitlefonta 
+  :: (Ptr RawTH2C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2C_getTitleOffsetA" c_th2c_gettitleoffseta 
+  :: (Ptr RawTH2C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2C_getTitleSizeA" c_th2c_gettitlesizea 
+  :: (Ptr RawTH2C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2C_getTickLengthA" c_th2c_getticklengtha 
+  :: (Ptr RawTH2C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBarOffset" c_th2c_getbaroffset 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBarWidth" c_th2c_getbarwidth 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetContour" c_th2c_getcontour 
+  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2C_GetContourLevel" c_th2c_getcontourlevel 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetContourLevelPad" c_th2c_getcontourlevelpad 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBin" c_th2c_getbin 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2C_GetBinCenter" c_th2c_getbincenter 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBinContent1" c_th2c_getbincontent1 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBinContent2" c_th2c_getbincontent2 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBinContent3" c_th2c_getbincontent3 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBinError1" c_th2c_getbinerror1 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBinError2" c_th2c_getbinerror2 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBinError3" c_th2c_getbinerror3 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBinLowEdge" c_th2c_getbinlowedge 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetBinWidth" c_th2c_getbinwidth 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetCellContent" c_th2c_getcellcontent 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetCellError" c_th2c_getcellerror 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetEntries" c_th2c_getentries 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetEffectiveEntries" c_th2c_geteffectiveentries 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetFunction" c_th2c_getfunction 
+  :: (Ptr RawTH2C) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH2C_GetDimension" c_th2c_getdimension 
+  :: (Ptr RawTH2C) -> IO CInt
+foreign import ccall "HROOT.h TH2C_GetKurtosis" c_th2c_getkurtosis 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetLowEdge" c_th2c_getlowedge 
+  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_GetMaximum" c_th2c_getmaximum 
+  :: (Ptr RawTH2C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetMaximumBin" c_th2c_getmaximumbin 
+  :: (Ptr RawTH2C) -> IO CInt
+foreign import ccall "HROOT.h TH2C_GetMaximumStored" c_th2c_getmaximumstored 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetMinimum" c_th2c_getminimum 
+  :: (Ptr RawTH2C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetMinimumBin" c_th2c_getminimumbin 
+  :: (Ptr RawTH2C) -> IO CInt
+foreign import ccall "HROOT.h TH2C_GetMinimumStored" c_th2c_getminimumstored 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetMean" c_th2c_getmean 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetMeanError" c_th2c_getmeanerror 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetNbinsX" c_th2c_getnbinsx 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetNbinsY" c_th2c_getnbinsy 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetNbinsZ" c_th2c_getnbinsz 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetQuantiles" c_th2c_getquantiles 
+  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2C_GetRandom" c_th2c_getrandom 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetStats" c_th2c_getstats 
+  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_GetSumOfWeights" c_th2c_getsumofweights 
+  :: (Ptr RawTH2C) -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetSumw2" c_th2c_getsumw2 
+  :: (Ptr RawTH2C) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH2C_GetSumw2N" c_th2c_getsumw2n 
+  :: (Ptr RawTH2C) -> IO CInt
+foreign import ccall "HROOT.h TH2C_GetRMS" c_th2c_getrms 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetRMSError" c_th2c_getrmserror 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_GetSkewness" c_th2c_getskewness 
+  :: (Ptr RawTH2C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2C_integral1" c_th2c_integral1 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2C_interpolate1" c_th2c_interpolate1 
+  :: (Ptr RawTH2C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2C_interpolate2" c_th2c_interpolate2 
+  :: (Ptr RawTH2C) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2C_interpolate3" c_th2c_interpolate3 
+  :: (Ptr RawTH2C) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2C_KolmogorovTest" c_th2c_kolmogorovtest 
+  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2C_LabelsDeflate" c_th2c_labelsdeflate 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_LabelsInflate" c_th2c_labelsinflate 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_LabelsOption" c_th2c_labelsoption 
+  :: (Ptr RawTH2C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_multiflyF" c_th2c_multiflyf 
+  :: (Ptr RawTH2C) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_Multiply" c_th2c_multiply 
+  :: (Ptr RawTH2C) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_Paint" c_th2c_paint 
+  :: (Ptr RawTH2C) -> IO ()
+foreign import ccall "HROOT.h TH2C_PutStats" c_th2c_putstats 
+  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_Rebin" c_th2c_rebin 
+  :: (Ptr RawTH2C) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2C_RebinAxis" c_th2c_rebinaxis 
+  :: (Ptr RawTH2C) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH2C_Rebuild" c_th2c_rebuild 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_RecursiveRemove" c_th2c_recursiveremove 
+  :: (Ptr RawTH2C) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH2C_Reset" c_th2c_reset 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_ResetStats" c_th2c_resetstats 
+  :: (Ptr RawTH2C) -> IO ()
+foreign import ccall "HROOT.h TH2C_Scale" c_th2c_scale 
+  :: (Ptr RawTH2C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_setAxisColorA" c_th2c_setaxiscolora 
+  :: (Ptr RawTH2C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetAxisRange" c_th2c_setaxisrange 
+  :: (Ptr RawTH2C) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetBarOffset" c_th2c_setbaroffset 
+  :: (Ptr RawTH2C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_SetBarWidth" c_th2c_setbarwidth 
+  :: (Ptr RawTH2C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_setBinContent1" c_th2c_setbincontent1 
+  :: (Ptr RawTH2C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_setBinContent2" c_th2c_setbincontent2 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_setBinContent3" c_th2c_setbincontent3 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_setBinError1" c_th2c_setbinerror1 
+  :: (Ptr RawTH2C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_setBinError2" c_th2c_setbinerror2 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_setBinError3" c_th2c_setbinerror3 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_setBins1" c_th2c_setbins1 
+  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_setBins2" c_th2c_setbins2 
+  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_setBins3" c_th2c_setbins3 
+  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_SetBinsLength" c_th2c_setbinslength 
+  :: (Ptr RawTH2C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_SetBuffer" c_th2c_setbuffer 
+  :: (Ptr RawTH2C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetCellContent" c_th2c_setcellcontent 
+  :: (Ptr RawTH2C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_SetContent" c_th2c_setcontent 
+  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_SetContour" c_th2c_setcontour 
+  :: (Ptr RawTH2C) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_SetContourLevel" c_th2c_setcontourlevel 
+  :: (Ptr RawTH2C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_SetDirectory" c_th2c_setdirectory 
+  :: (Ptr RawTH2C) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2C_SetEntries" c_th2c_setentries 
+  :: (Ptr RawTH2C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_SetError" c_th2c_seterror 
+  :: (Ptr RawTH2C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2C_setLabelColorA" c_th2c_setlabelcolora 
+  :: (Ptr RawTH2C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_setLabelSizeA" c_th2c_setlabelsizea 
+  :: (Ptr RawTH2C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_setLabelFontA" c_th2c_setlabelfonta 
+  :: (Ptr RawTH2C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_setLabelOffsetA" c_th2c_setlabeloffseta 
+  :: (Ptr RawTH2C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetMaximum" c_th2c_setmaximum 
+  :: (Ptr RawTH2C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_SetMinimum" c_th2c_setminimum 
+  :: (Ptr RawTH2C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_SetNormFactor" c_th2c_setnormfactor 
+  :: (Ptr RawTH2C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2C_SetStats" c_th2c_setstats 
+  :: (Ptr RawTH2C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_SetOption" c_th2c_setoption 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetXTitle" c_th2c_setxtitle 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetYTitle" c_th2c_setytitle 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetZTitle" c_th2c_setztitle 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_ShowBackground" c_th2c_showbackground 
+  :: (Ptr RawTH2C) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2C_ShowPeaks" c_th2c_showpeaks 
+  :: (Ptr RawTH2C) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2C_Smooth" c_th2c_smooth 
+  :: (Ptr RawTH2C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_Sumw2" c_th2c_sumw2 
+  :: (Ptr RawTH2C) -> IO ()
+foreign import ccall "HROOT.h TH2C_SetName" c_th2c_setname 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetNameTitle" c_th2c_setnametitle 
+  :: (Ptr RawTH2C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetTitle" c_th2c_settitle 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_SetLineColor" c_th2c_setlinecolor 
+  :: (Ptr RawTH2C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_SetFillColor" c_th2c_setfillcolor 
+  :: (Ptr RawTH2C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_SetFillStyle" c_th2c_setfillstyle 
+  :: (Ptr RawTH2C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2C_GetName" c_th2c_getname 
+  :: (Ptr RawTH2C) -> IO CString
+foreign import ccall "HROOT.h TH2C_Draw" c_th2c_draw 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_FindObject" c_th2c_findobject 
+  :: (Ptr RawTH2C) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH2C_SaveAs" c_th2c_saveas 
+  :: (Ptr RawTH2C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_Write" c_th2c_write 
+  :: (Ptr RawTH2C) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2C_IsA" c_th2c_isa 
+  :: (Ptr RawTH2C) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH2C_printObj" c_th2c_printobj 
+  :: (Ptr RawTH2C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2C_delete" c_th2c_delete 
+  :: (Ptr RawTH2C) -> IO ()
+
+foreign import ccall "HROOT.h TH2D_fill2" c_th2d_fill2 
+  :: (Ptr RawTH2D) -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2D_fillRandom2" c_th2d_fillrandom2 
+  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_findFirstBinAbove2" c_th2d_findfirstbinabove2 
+  :: (Ptr RawTH2D) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2D_findLastBinAbove2" c_th2d_findlastbinabove2 
+  :: (Ptr RawTH2D) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2D_FitSlicesX" c_th2d_fitslicesx 
+  :: (Ptr RawTH2D) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2D_FitSlicesY" c_th2d_fitslicesy 
+  :: (Ptr RawTH2D) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2D_GetCorrelationFactor" c_th2d_getcorrelationfactor 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetCovariance" c_th2d_getcovariance 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_integral2" c_th2d_integral2 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2D_RebinX" c_th2d_rebinx 
+  :: (Ptr RawTH2D) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2D_RebinY" c_th2d_rebiny 
+  :: (Ptr RawTH2D) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2D_Rebin2D" c_th2d_rebin2d 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2D_SetShowProjectionX" c_th2d_setshowprojectionx 
+  :: (Ptr RawTH2D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_SetShowProjectionY" c_th2d_setshowprojectiony 
+  :: (Ptr RawTH2D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_Add" c_th2d_add 
+  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_AddBinContent" c_th2d_addbincontent 
+  :: (Ptr RawTH2D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_Chi2Test" c_th2d_chi2test 
+  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_ComputeIntegral" c_th2d_computeintegral 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_DirectoryAutoAdd" c_th2d_directoryautoadd 
+  :: (Ptr RawTH2D) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2D_DistancetoPrimitive" c_th2d_distancetoprimitive 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2D_Divide" c_th2d_divide 
+  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_DrawCopy" c_th2d_drawcopy 
+  :: (Ptr RawTH2D) -> CString -> IO (Ptr RawTH2D)
+foreign import ccall "HROOT.h TH2D_DrawNormalized" c_th2d_drawnormalized 
+  :: (Ptr RawTH2D) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2D_DrawPanel" c_th2d_drawpanel 
+  :: (Ptr RawTH2D) -> IO ()
+foreign import ccall "HROOT.h TH2D_BufferEmpty" c_th2d_bufferempty 
+  :: (Ptr RawTH2D) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2D_Eval" c_th2d_eval 
+  :: (Ptr RawTH2D) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_ExecuteEvent" c_th2d_executeevent 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_FFT" c_th2d_fft 
+  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2D_fill1" c_th2d_fill1 
+  :: (Ptr RawTH2D) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2D_FillN" c_th2d_filln 
+  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_FillRandom" c_th2d_fillrandom 
+  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_FindBin" c_th2d_findbin 
+  :: (Ptr RawTH2D) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2D_FindFixBin" c_th2d_findfixbin 
+  :: (Ptr RawTH2D) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2D_FindFirstBinAbove" c_th2d_findfirstbinabove 
+  :: (Ptr RawTH2D) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2D_FindLastBinAbove" c_th2d_findlastbinabove 
+  :: (Ptr RawTH2D) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2D_FitPanel" c_th2d_fitpanel 
+  :: (Ptr RawTH2D) -> IO ()
+foreign import ccall "HROOT.h TH2D_getNdivisionA" c_th2d_getndivisiona 
+  :: (Ptr RawTH2D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2D_getAxisColorA" c_th2d_getaxiscolora 
+  :: (Ptr RawTH2D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2D_getLabelColorA" c_th2d_getlabelcolora 
+  :: (Ptr RawTH2D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2D_getLabelFontA" c_th2d_getlabelfonta 
+  :: (Ptr RawTH2D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2D_getLabelOffsetA" c_th2d_getlabeloffseta 
+  :: (Ptr RawTH2D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2D_getLabelSizeA" c_th2d_getlabelsizea 
+  :: (Ptr RawTH2D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2D_getTitleFontA" c_th2d_gettitlefonta 
+  :: (Ptr RawTH2D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2D_getTitleOffsetA" c_th2d_gettitleoffseta 
+  :: (Ptr RawTH2D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2D_getTitleSizeA" c_th2d_gettitlesizea 
+  :: (Ptr RawTH2D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2D_getTickLengthA" c_th2d_getticklengtha 
+  :: (Ptr RawTH2D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBarOffset" c_th2d_getbaroffset 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBarWidth" c_th2d_getbarwidth 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetContour" c_th2d_getcontour 
+  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2D_GetContourLevel" c_th2d_getcontourlevel 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetContourLevelPad" c_th2d_getcontourlevelpad 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBin" c_th2d_getbin 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2D_GetBinCenter" c_th2d_getbincenter 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBinContent1" c_th2d_getbincontent1 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBinContent2" c_th2d_getbincontent2 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBinContent3" c_th2d_getbincontent3 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBinError1" c_th2d_getbinerror1 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBinError2" c_th2d_getbinerror2 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBinError3" c_th2d_getbinerror3 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBinLowEdge" c_th2d_getbinlowedge 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetBinWidth" c_th2d_getbinwidth 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetCellContent" c_th2d_getcellcontent 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetCellError" c_th2d_getcellerror 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetEntries" c_th2d_getentries 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetEffectiveEntries" c_th2d_geteffectiveentries 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetFunction" c_th2d_getfunction 
+  :: (Ptr RawTH2D) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH2D_GetDimension" c_th2d_getdimension 
+  :: (Ptr RawTH2D) -> IO CInt
+foreign import ccall "HROOT.h TH2D_GetKurtosis" c_th2d_getkurtosis 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetLowEdge" c_th2d_getlowedge 
+  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_GetMaximum" c_th2d_getmaximum 
+  :: (Ptr RawTH2D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetMaximumBin" c_th2d_getmaximumbin 
+  :: (Ptr RawTH2D) -> IO CInt
+foreign import ccall "HROOT.h TH2D_GetMaximumStored" c_th2d_getmaximumstored 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetMinimum" c_th2d_getminimum 
+  :: (Ptr RawTH2D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetMinimumBin" c_th2d_getminimumbin 
+  :: (Ptr RawTH2D) -> IO CInt
+foreign import ccall "HROOT.h TH2D_GetMinimumStored" c_th2d_getminimumstored 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetMean" c_th2d_getmean 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetMeanError" c_th2d_getmeanerror 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetNbinsX" c_th2d_getnbinsx 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetNbinsY" c_th2d_getnbinsy 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetNbinsZ" c_th2d_getnbinsz 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetQuantiles" c_th2d_getquantiles 
+  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2D_GetRandom" c_th2d_getrandom 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetStats" c_th2d_getstats 
+  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_GetSumOfWeights" c_th2d_getsumofweights 
+  :: (Ptr RawTH2D) -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetSumw2" c_th2d_getsumw2 
+  :: (Ptr RawTH2D) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH2D_GetSumw2N" c_th2d_getsumw2n 
+  :: (Ptr RawTH2D) -> IO CInt
+foreign import ccall "HROOT.h TH2D_GetRMS" c_th2d_getrms 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetRMSError" c_th2d_getrmserror 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_GetSkewness" c_th2d_getskewness 
+  :: (Ptr RawTH2D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2D_integral1" c_th2d_integral1 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2D_interpolate1" c_th2d_interpolate1 
+  :: (Ptr RawTH2D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2D_interpolate2" c_th2d_interpolate2 
+  :: (Ptr RawTH2D) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2D_interpolate3" c_th2d_interpolate3 
+  :: (Ptr RawTH2D) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2D_KolmogorovTest" c_th2d_kolmogorovtest 
+  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2D_LabelsDeflate" c_th2d_labelsdeflate 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_LabelsInflate" c_th2d_labelsinflate 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_LabelsOption" c_th2d_labelsoption 
+  :: (Ptr RawTH2D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_multiflyF" c_th2d_multiflyf 
+  :: (Ptr RawTH2D) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_Multiply" c_th2d_multiply 
+  :: (Ptr RawTH2D) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_Paint" c_th2d_paint 
+  :: (Ptr RawTH2D) -> IO ()
+foreign import ccall "HROOT.h TH2D_PutStats" c_th2d_putstats 
+  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_Rebin" c_th2d_rebin 
+  :: (Ptr RawTH2D) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2D_RebinAxis" c_th2d_rebinaxis 
+  :: (Ptr RawTH2D) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH2D_Rebuild" c_th2d_rebuild 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_RecursiveRemove" c_th2d_recursiveremove 
+  :: (Ptr RawTH2D) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH2D_Reset" c_th2d_reset 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_ResetStats" c_th2d_resetstats 
+  :: (Ptr RawTH2D) -> IO ()
+foreign import ccall "HROOT.h TH2D_Scale" c_th2d_scale 
+  :: (Ptr RawTH2D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_setAxisColorA" c_th2d_setaxiscolora 
+  :: (Ptr RawTH2D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetAxisRange" c_th2d_setaxisrange 
+  :: (Ptr RawTH2D) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetBarOffset" c_th2d_setbaroffset 
+  :: (Ptr RawTH2D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_SetBarWidth" c_th2d_setbarwidth 
+  :: (Ptr RawTH2D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_setBinContent1" c_th2d_setbincontent1 
+  :: (Ptr RawTH2D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_setBinContent2" c_th2d_setbincontent2 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_setBinContent3" c_th2d_setbincontent3 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_setBinError1" c_th2d_setbinerror1 
+  :: (Ptr RawTH2D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_setBinError2" c_th2d_setbinerror2 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_setBinError3" c_th2d_setbinerror3 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_setBins1" c_th2d_setbins1 
+  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_setBins2" c_th2d_setbins2 
+  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_setBins3" c_th2d_setbins3 
+  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_SetBinsLength" c_th2d_setbinslength 
+  :: (Ptr RawTH2D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_SetBuffer" c_th2d_setbuffer 
+  :: (Ptr RawTH2D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetCellContent" c_th2d_setcellcontent 
+  :: (Ptr RawTH2D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_SetContent" c_th2d_setcontent 
+  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_SetContour" c_th2d_setcontour 
+  :: (Ptr RawTH2D) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_SetContourLevel" c_th2d_setcontourlevel 
+  :: (Ptr RawTH2D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_SetDirectory" c_th2d_setdirectory 
+  :: (Ptr RawTH2D) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2D_SetEntries" c_th2d_setentries 
+  :: (Ptr RawTH2D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_SetError" c_th2d_seterror 
+  :: (Ptr RawTH2D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2D_setLabelColorA" c_th2d_setlabelcolora 
+  :: (Ptr RawTH2D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_setLabelSizeA" c_th2d_setlabelsizea 
+  :: (Ptr RawTH2D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_setLabelFontA" c_th2d_setlabelfonta 
+  :: (Ptr RawTH2D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_setLabelOffsetA" c_th2d_setlabeloffseta 
+  :: (Ptr RawTH2D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetMaximum" c_th2d_setmaximum 
+  :: (Ptr RawTH2D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_SetMinimum" c_th2d_setminimum 
+  :: (Ptr RawTH2D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_SetNormFactor" c_th2d_setnormfactor 
+  :: (Ptr RawTH2D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2D_SetStats" c_th2d_setstats 
+  :: (Ptr RawTH2D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_SetOption" c_th2d_setoption 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetXTitle" c_th2d_setxtitle 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetYTitle" c_th2d_setytitle 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetZTitle" c_th2d_setztitle 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_ShowBackground" c_th2d_showbackground 
+  :: (Ptr RawTH2D) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2D_ShowPeaks" c_th2d_showpeaks 
+  :: (Ptr RawTH2D) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2D_Smooth" c_th2d_smooth 
+  :: (Ptr RawTH2D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_Sumw2" c_th2d_sumw2 
+  :: (Ptr RawTH2D) -> IO ()
+foreign import ccall "HROOT.h TH2D_SetName" c_th2d_setname 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetNameTitle" c_th2d_setnametitle 
+  :: (Ptr RawTH2D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetTitle" c_th2d_settitle 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_SetLineColor" c_th2d_setlinecolor 
+  :: (Ptr RawTH2D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_SetFillColor" c_th2d_setfillcolor 
+  :: (Ptr RawTH2D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_SetFillStyle" c_th2d_setfillstyle 
+  :: (Ptr RawTH2D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2D_GetName" c_th2d_getname 
+  :: (Ptr RawTH2D) -> IO CString
+foreign import ccall "HROOT.h TH2D_Draw" c_th2d_draw 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_FindObject" c_th2d_findobject 
+  :: (Ptr RawTH2D) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH2D_SaveAs" c_th2d_saveas 
+  :: (Ptr RawTH2D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_Write" c_th2d_write 
+  :: (Ptr RawTH2D) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2D_IsA" c_th2d_isa 
+  :: (Ptr RawTH2D) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH2D_printObj" c_th2d_printobj 
+  :: (Ptr RawTH2D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2D_delete" c_th2d_delete 
+  :: (Ptr RawTH2D) -> IO ()
+foreign import ccall "HROOT.h TH2D_newTH2D" c_th2d_newth2d 
+  :: CString -> CString -> CInt -> CDouble -> CDouble -> CInt -> CDouble -> CDouble -> IO (Ptr RawTH2D)
+
+foreign import ccall "HROOT.h TH2F_fill2" c_th2f_fill2 
+  :: (Ptr RawTH2F) -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2F_fillRandom2" c_th2f_fillrandom2 
+  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_findFirstBinAbove2" c_th2f_findfirstbinabove2 
+  :: (Ptr RawTH2F) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2F_findLastBinAbove2" c_th2f_findlastbinabove2 
+  :: (Ptr RawTH2F) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2F_FitSlicesX" c_th2f_fitslicesx 
+  :: (Ptr RawTH2F) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2F_FitSlicesY" c_th2f_fitslicesy 
+  :: (Ptr RawTH2F) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2F_GetCorrelationFactor" c_th2f_getcorrelationfactor 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetCovariance" c_th2f_getcovariance 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_integral2" c_th2f_integral2 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2F_RebinX" c_th2f_rebinx 
+  :: (Ptr RawTH2F) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2F_RebinY" c_th2f_rebiny 
+  :: (Ptr RawTH2F) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2F_Rebin2D" c_th2f_rebin2d 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2F_SetShowProjectionX" c_th2f_setshowprojectionx 
+  :: (Ptr RawTH2F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_SetShowProjectionY" c_th2f_setshowprojectiony 
+  :: (Ptr RawTH2F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_Add" c_th2f_add 
+  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_AddBinContent" c_th2f_addbincontent 
+  :: (Ptr RawTH2F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_Chi2Test" c_th2f_chi2test 
+  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_ComputeIntegral" c_th2f_computeintegral 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_DirectoryAutoAdd" c_th2f_directoryautoadd 
+  :: (Ptr RawTH2F) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2F_DistancetoPrimitive" c_th2f_distancetoprimitive 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2F_Divide" c_th2f_divide 
+  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_DrawCopy" c_th2f_drawcopy 
+  :: (Ptr RawTH2F) -> CString -> IO (Ptr RawTH2F)
+foreign import ccall "HROOT.h TH2F_DrawNormalized" c_th2f_drawnormalized 
+  :: (Ptr RawTH2F) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2F_DrawPanel" c_th2f_drawpanel 
+  :: (Ptr RawTH2F) -> IO ()
+foreign import ccall "HROOT.h TH2F_BufferEmpty" c_th2f_bufferempty 
+  :: (Ptr RawTH2F) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2F_Eval" c_th2f_eval 
+  :: (Ptr RawTH2F) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_ExecuteEvent" c_th2f_executeevent 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_FFT" c_th2f_fft 
+  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2F_fill1" c_th2f_fill1 
+  :: (Ptr RawTH2F) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2F_FillN" c_th2f_filln 
+  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_FillRandom" c_th2f_fillrandom 
+  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_FindBin" c_th2f_findbin 
+  :: (Ptr RawTH2F) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2F_FindFixBin" c_th2f_findfixbin 
+  :: (Ptr RawTH2F) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2F_FindFirstBinAbove" c_th2f_findfirstbinabove 
+  :: (Ptr RawTH2F) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2F_FindLastBinAbove" c_th2f_findlastbinabove 
+  :: (Ptr RawTH2F) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2F_FitPanel" c_th2f_fitpanel 
+  :: (Ptr RawTH2F) -> IO ()
+foreign import ccall "HROOT.h TH2F_getNdivisionA" c_th2f_getndivisiona 
+  :: (Ptr RawTH2F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2F_getAxisColorA" c_th2f_getaxiscolora 
+  :: (Ptr RawTH2F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2F_getLabelColorA" c_th2f_getlabelcolora 
+  :: (Ptr RawTH2F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2F_getLabelFontA" c_th2f_getlabelfonta 
+  :: (Ptr RawTH2F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2F_getLabelOffsetA" c_th2f_getlabeloffseta 
+  :: (Ptr RawTH2F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2F_getLabelSizeA" c_th2f_getlabelsizea 
+  :: (Ptr RawTH2F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2F_getTitleFontA" c_th2f_gettitlefonta 
+  :: (Ptr RawTH2F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2F_getTitleOffsetA" c_th2f_gettitleoffseta 
+  :: (Ptr RawTH2F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2F_getTitleSizeA" c_th2f_gettitlesizea 
+  :: (Ptr RawTH2F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2F_getTickLengthA" c_th2f_getticklengtha 
+  :: (Ptr RawTH2F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBarOffset" c_th2f_getbaroffset 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBarWidth" c_th2f_getbarwidth 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetContour" c_th2f_getcontour 
+  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2F_GetContourLevel" c_th2f_getcontourlevel 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetContourLevelPad" c_th2f_getcontourlevelpad 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBin" c_th2f_getbin 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2F_GetBinCenter" c_th2f_getbincenter 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBinContent1" c_th2f_getbincontent1 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBinContent2" c_th2f_getbincontent2 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBinContent3" c_th2f_getbincontent3 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBinError1" c_th2f_getbinerror1 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBinError2" c_th2f_getbinerror2 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBinError3" c_th2f_getbinerror3 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBinLowEdge" c_th2f_getbinlowedge 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetBinWidth" c_th2f_getbinwidth 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetCellContent" c_th2f_getcellcontent 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetCellError" c_th2f_getcellerror 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetEntries" c_th2f_getentries 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetEffectiveEntries" c_th2f_geteffectiveentries 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetFunction" c_th2f_getfunction 
+  :: (Ptr RawTH2F) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH2F_GetDimension" c_th2f_getdimension 
+  :: (Ptr RawTH2F) -> IO CInt
+foreign import ccall "HROOT.h TH2F_GetKurtosis" c_th2f_getkurtosis 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetLowEdge" c_th2f_getlowedge 
+  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_GetMaximum" c_th2f_getmaximum 
+  :: (Ptr RawTH2F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetMaximumBin" c_th2f_getmaximumbin 
+  :: (Ptr RawTH2F) -> IO CInt
+foreign import ccall "HROOT.h TH2F_GetMaximumStored" c_th2f_getmaximumstored 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetMinimum" c_th2f_getminimum 
+  :: (Ptr RawTH2F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetMinimumBin" c_th2f_getminimumbin 
+  :: (Ptr RawTH2F) -> IO CInt
+foreign import ccall "HROOT.h TH2F_GetMinimumStored" c_th2f_getminimumstored 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetMean" c_th2f_getmean 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetMeanError" c_th2f_getmeanerror 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetNbinsX" c_th2f_getnbinsx 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetNbinsY" c_th2f_getnbinsy 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetNbinsZ" c_th2f_getnbinsz 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetQuantiles" c_th2f_getquantiles 
+  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2F_GetRandom" c_th2f_getrandom 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetStats" c_th2f_getstats 
+  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_GetSumOfWeights" c_th2f_getsumofweights 
+  :: (Ptr RawTH2F) -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetSumw2" c_th2f_getsumw2 
+  :: (Ptr RawTH2F) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH2F_GetSumw2N" c_th2f_getsumw2n 
+  :: (Ptr RawTH2F) -> IO CInt
+foreign import ccall "HROOT.h TH2F_GetRMS" c_th2f_getrms 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetRMSError" c_th2f_getrmserror 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_GetSkewness" c_th2f_getskewness 
+  :: (Ptr RawTH2F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2F_integral1" c_th2f_integral1 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2F_interpolate1" c_th2f_interpolate1 
+  :: (Ptr RawTH2F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2F_interpolate2" c_th2f_interpolate2 
+  :: (Ptr RawTH2F) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2F_interpolate3" c_th2f_interpolate3 
+  :: (Ptr RawTH2F) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2F_KolmogorovTest" c_th2f_kolmogorovtest 
+  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2F_LabelsDeflate" c_th2f_labelsdeflate 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_LabelsInflate" c_th2f_labelsinflate 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_LabelsOption" c_th2f_labelsoption 
+  :: (Ptr RawTH2F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_multiflyF" c_th2f_multiflyf 
+  :: (Ptr RawTH2F) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_Multiply" c_th2f_multiply 
+  :: (Ptr RawTH2F) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_Paint" c_th2f_paint 
+  :: (Ptr RawTH2F) -> IO ()
+foreign import ccall "HROOT.h TH2F_PutStats" c_th2f_putstats 
+  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_Rebin" c_th2f_rebin 
+  :: (Ptr RawTH2F) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2F_RebinAxis" c_th2f_rebinaxis 
+  :: (Ptr RawTH2F) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH2F_Rebuild" c_th2f_rebuild 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_RecursiveRemove" c_th2f_recursiveremove 
+  :: (Ptr RawTH2F) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH2F_Reset" c_th2f_reset 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_ResetStats" c_th2f_resetstats 
+  :: (Ptr RawTH2F) -> IO ()
+foreign import ccall "HROOT.h TH2F_Scale" c_th2f_scale 
+  :: (Ptr RawTH2F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_setAxisColorA" c_th2f_setaxiscolora 
+  :: (Ptr RawTH2F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetAxisRange" c_th2f_setaxisrange 
+  :: (Ptr RawTH2F) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetBarOffset" c_th2f_setbaroffset 
+  :: (Ptr RawTH2F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_SetBarWidth" c_th2f_setbarwidth 
+  :: (Ptr RawTH2F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_setBinContent1" c_th2f_setbincontent1 
+  :: (Ptr RawTH2F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_setBinContent2" c_th2f_setbincontent2 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_setBinContent3" c_th2f_setbincontent3 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_setBinError1" c_th2f_setbinerror1 
+  :: (Ptr RawTH2F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_setBinError2" c_th2f_setbinerror2 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_setBinError3" c_th2f_setbinerror3 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_setBins1" c_th2f_setbins1 
+  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_setBins2" c_th2f_setbins2 
+  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_setBins3" c_th2f_setbins3 
+  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_SetBinsLength" c_th2f_setbinslength 
+  :: (Ptr RawTH2F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_SetBuffer" c_th2f_setbuffer 
+  :: (Ptr RawTH2F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetCellContent" c_th2f_setcellcontent 
+  :: (Ptr RawTH2F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_SetContent" c_th2f_setcontent 
+  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_SetContour" c_th2f_setcontour 
+  :: (Ptr RawTH2F) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_SetContourLevel" c_th2f_setcontourlevel 
+  :: (Ptr RawTH2F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_SetDirectory" c_th2f_setdirectory 
+  :: (Ptr RawTH2F) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2F_SetEntries" c_th2f_setentries 
+  :: (Ptr RawTH2F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_SetError" c_th2f_seterror 
+  :: (Ptr RawTH2F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2F_setLabelColorA" c_th2f_setlabelcolora 
+  :: (Ptr RawTH2F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_setLabelSizeA" c_th2f_setlabelsizea 
+  :: (Ptr RawTH2F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_setLabelFontA" c_th2f_setlabelfonta 
+  :: (Ptr RawTH2F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_setLabelOffsetA" c_th2f_setlabeloffseta 
+  :: (Ptr RawTH2F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetMaximum" c_th2f_setmaximum 
+  :: (Ptr RawTH2F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_SetMinimum" c_th2f_setminimum 
+  :: (Ptr RawTH2F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_SetNormFactor" c_th2f_setnormfactor 
+  :: (Ptr RawTH2F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2F_SetStats" c_th2f_setstats 
+  :: (Ptr RawTH2F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_SetOption" c_th2f_setoption 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetXTitle" c_th2f_setxtitle 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetYTitle" c_th2f_setytitle 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetZTitle" c_th2f_setztitle 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_ShowBackground" c_th2f_showbackground 
+  :: (Ptr RawTH2F) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2F_ShowPeaks" c_th2f_showpeaks 
+  :: (Ptr RawTH2F) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2F_Smooth" c_th2f_smooth 
+  :: (Ptr RawTH2F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_Sumw2" c_th2f_sumw2 
+  :: (Ptr RawTH2F) -> IO ()
+foreign import ccall "HROOT.h TH2F_SetName" c_th2f_setname 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetNameTitle" c_th2f_setnametitle 
+  :: (Ptr RawTH2F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetTitle" c_th2f_settitle 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_SetLineColor" c_th2f_setlinecolor 
+  :: (Ptr RawTH2F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_SetFillColor" c_th2f_setfillcolor 
+  :: (Ptr RawTH2F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_SetFillStyle" c_th2f_setfillstyle 
+  :: (Ptr RawTH2F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2F_GetName" c_th2f_getname 
+  :: (Ptr RawTH2F) -> IO CString
+foreign import ccall "HROOT.h TH2F_Draw" c_th2f_draw 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_FindObject" c_th2f_findobject 
+  :: (Ptr RawTH2F) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH2F_SaveAs" c_th2f_saveas 
+  :: (Ptr RawTH2F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_Write" c_th2f_write 
+  :: (Ptr RawTH2F) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2F_IsA" c_th2f_isa 
+  :: (Ptr RawTH2F) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH2F_printObj" c_th2f_printobj 
+  :: (Ptr RawTH2F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2F_delete" c_th2f_delete 
+  :: (Ptr RawTH2F) -> IO ()
+foreign import ccall "HROOT.h TH2F_newTH2F" c_th2f_newth2f 
+  :: CString -> CString -> CInt -> CDouble -> CDouble -> CInt -> CDouble -> CDouble -> IO (Ptr RawTH2F)
+
+foreign import ccall "HROOT.h TH2I_fill2" c_th2i_fill2 
+  :: (Ptr RawTH2I) -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2I_fillRandom2" c_th2i_fillrandom2 
+  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_findFirstBinAbove2" c_th2i_findfirstbinabove2 
+  :: (Ptr RawTH2I) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2I_findLastBinAbove2" c_th2i_findlastbinabove2 
+  :: (Ptr RawTH2I) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2I_FitSlicesX" c_th2i_fitslicesx 
+  :: (Ptr RawTH2I) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2I_FitSlicesY" c_th2i_fitslicesy 
+  :: (Ptr RawTH2I) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2I_GetCorrelationFactor" c_th2i_getcorrelationfactor 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetCovariance" c_th2i_getcovariance 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_integral2" c_th2i_integral2 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2I_RebinX" c_th2i_rebinx 
+  :: (Ptr RawTH2I) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2I_RebinY" c_th2i_rebiny 
+  :: (Ptr RawTH2I) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2I_Rebin2D" c_th2i_rebin2d 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2I_SetShowProjectionX" c_th2i_setshowprojectionx 
+  :: (Ptr RawTH2I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_SetShowProjectionY" c_th2i_setshowprojectiony 
+  :: (Ptr RawTH2I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_Add" c_th2i_add 
+  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_AddBinContent" c_th2i_addbincontent 
+  :: (Ptr RawTH2I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_Chi2Test" c_th2i_chi2test 
+  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_ComputeIntegral" c_th2i_computeintegral 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_DirectoryAutoAdd" c_th2i_directoryautoadd 
+  :: (Ptr RawTH2I) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2I_DistancetoPrimitive" c_th2i_distancetoprimitive 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2I_Divide" c_th2i_divide 
+  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_DrawCopy" c_th2i_drawcopy 
+  :: (Ptr RawTH2I) -> CString -> IO (Ptr RawTH2I)
+foreign import ccall "HROOT.h TH2I_DrawNormalized" c_th2i_drawnormalized 
+  :: (Ptr RawTH2I) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2I_DrawPanel" c_th2i_drawpanel 
+  :: (Ptr RawTH2I) -> IO ()
+foreign import ccall "HROOT.h TH2I_BufferEmpty" c_th2i_bufferempty 
+  :: (Ptr RawTH2I) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2I_Eval" c_th2i_eval 
+  :: (Ptr RawTH2I) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_ExecuteEvent" c_th2i_executeevent 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_FFT" c_th2i_fft 
+  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2I_fill1" c_th2i_fill1 
+  :: (Ptr RawTH2I) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2I_FillN" c_th2i_filln 
+  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_FillRandom" c_th2i_fillrandom 
+  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_FindBin" c_th2i_findbin 
+  :: (Ptr RawTH2I) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2I_FindFixBin" c_th2i_findfixbin 
+  :: (Ptr RawTH2I) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2I_FindFirstBinAbove" c_th2i_findfirstbinabove 
+  :: (Ptr RawTH2I) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2I_FindLastBinAbove" c_th2i_findlastbinabove 
+  :: (Ptr RawTH2I) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2I_FitPanel" c_th2i_fitpanel 
+  :: (Ptr RawTH2I) -> IO ()
+foreign import ccall "HROOT.h TH2I_getNdivisionA" c_th2i_getndivisiona 
+  :: (Ptr RawTH2I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2I_getAxisColorA" c_th2i_getaxiscolora 
+  :: (Ptr RawTH2I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2I_getLabelColorA" c_th2i_getlabelcolora 
+  :: (Ptr RawTH2I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2I_getLabelFontA" c_th2i_getlabelfonta 
+  :: (Ptr RawTH2I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2I_getLabelOffsetA" c_th2i_getlabeloffseta 
+  :: (Ptr RawTH2I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2I_getLabelSizeA" c_th2i_getlabelsizea 
+  :: (Ptr RawTH2I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2I_getTitleFontA" c_th2i_gettitlefonta 
+  :: (Ptr RawTH2I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2I_getTitleOffsetA" c_th2i_gettitleoffseta 
+  :: (Ptr RawTH2I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2I_getTitleSizeA" c_th2i_gettitlesizea 
+  :: (Ptr RawTH2I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2I_getTickLengthA" c_th2i_getticklengtha 
+  :: (Ptr RawTH2I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBarOffset" c_th2i_getbaroffset 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBarWidth" c_th2i_getbarwidth 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetContour" c_th2i_getcontour 
+  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2I_GetContourLevel" c_th2i_getcontourlevel 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetContourLevelPad" c_th2i_getcontourlevelpad 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBin" c_th2i_getbin 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2I_GetBinCenter" c_th2i_getbincenter 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBinContent1" c_th2i_getbincontent1 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBinContent2" c_th2i_getbincontent2 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBinContent3" c_th2i_getbincontent3 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBinError1" c_th2i_getbinerror1 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBinError2" c_th2i_getbinerror2 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBinError3" c_th2i_getbinerror3 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBinLowEdge" c_th2i_getbinlowedge 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetBinWidth" c_th2i_getbinwidth 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetCellContent" c_th2i_getcellcontent 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetCellError" c_th2i_getcellerror 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetEntries" c_th2i_getentries 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetEffectiveEntries" c_th2i_geteffectiveentries 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetFunction" c_th2i_getfunction 
+  :: (Ptr RawTH2I) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH2I_GetDimension" c_th2i_getdimension 
+  :: (Ptr RawTH2I) -> IO CInt
+foreign import ccall "HROOT.h TH2I_GetKurtosis" c_th2i_getkurtosis 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetLowEdge" c_th2i_getlowedge 
+  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_GetMaximum" c_th2i_getmaximum 
+  :: (Ptr RawTH2I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetMaximumBin" c_th2i_getmaximumbin 
+  :: (Ptr RawTH2I) -> IO CInt
+foreign import ccall "HROOT.h TH2I_GetMaximumStored" c_th2i_getmaximumstored 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetMinimum" c_th2i_getminimum 
+  :: (Ptr RawTH2I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetMinimumBin" c_th2i_getminimumbin 
+  :: (Ptr RawTH2I) -> IO CInt
+foreign import ccall "HROOT.h TH2I_GetMinimumStored" c_th2i_getminimumstored 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetMean" c_th2i_getmean 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetMeanError" c_th2i_getmeanerror 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetNbinsX" c_th2i_getnbinsx 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetNbinsY" c_th2i_getnbinsy 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetNbinsZ" c_th2i_getnbinsz 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetQuantiles" c_th2i_getquantiles 
+  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2I_GetRandom" c_th2i_getrandom 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetStats" c_th2i_getstats 
+  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_GetSumOfWeights" c_th2i_getsumofweights 
+  :: (Ptr RawTH2I) -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetSumw2" c_th2i_getsumw2 
+  :: (Ptr RawTH2I) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH2I_GetSumw2N" c_th2i_getsumw2n 
+  :: (Ptr RawTH2I) -> IO CInt
+foreign import ccall "HROOT.h TH2I_GetRMS" c_th2i_getrms 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetRMSError" c_th2i_getrmserror 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_GetSkewness" c_th2i_getskewness 
+  :: (Ptr RawTH2I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2I_integral1" c_th2i_integral1 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2I_interpolate1" c_th2i_interpolate1 
+  :: (Ptr RawTH2I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2I_interpolate2" c_th2i_interpolate2 
+  :: (Ptr RawTH2I) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2I_interpolate3" c_th2i_interpolate3 
+  :: (Ptr RawTH2I) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2I_KolmogorovTest" c_th2i_kolmogorovtest 
+  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2I_LabelsDeflate" c_th2i_labelsdeflate 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_LabelsInflate" c_th2i_labelsinflate 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_LabelsOption" c_th2i_labelsoption 
+  :: (Ptr RawTH2I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_multiflyF" c_th2i_multiflyf 
+  :: (Ptr RawTH2I) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_Multiply" c_th2i_multiply 
+  :: (Ptr RawTH2I) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_Paint" c_th2i_paint 
+  :: (Ptr RawTH2I) -> IO ()
+foreign import ccall "HROOT.h TH2I_PutStats" c_th2i_putstats 
+  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_Rebin" c_th2i_rebin 
+  :: (Ptr RawTH2I) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2I_RebinAxis" c_th2i_rebinaxis 
+  :: (Ptr RawTH2I) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH2I_Rebuild" c_th2i_rebuild 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_RecursiveRemove" c_th2i_recursiveremove 
+  :: (Ptr RawTH2I) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH2I_Reset" c_th2i_reset 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_ResetStats" c_th2i_resetstats 
+  :: (Ptr RawTH2I) -> IO ()
+foreign import ccall "HROOT.h TH2I_Scale" c_th2i_scale 
+  :: (Ptr RawTH2I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_setAxisColorA" c_th2i_setaxiscolora 
+  :: (Ptr RawTH2I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetAxisRange" c_th2i_setaxisrange 
+  :: (Ptr RawTH2I) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetBarOffset" c_th2i_setbaroffset 
+  :: (Ptr RawTH2I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_SetBarWidth" c_th2i_setbarwidth 
+  :: (Ptr RawTH2I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_setBinContent1" c_th2i_setbincontent1 
+  :: (Ptr RawTH2I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_setBinContent2" c_th2i_setbincontent2 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_setBinContent3" c_th2i_setbincontent3 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_setBinError1" c_th2i_setbinerror1 
+  :: (Ptr RawTH2I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_setBinError2" c_th2i_setbinerror2 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_setBinError3" c_th2i_setbinerror3 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_setBins1" c_th2i_setbins1 
+  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_setBins2" c_th2i_setbins2 
+  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_setBins3" c_th2i_setbins3 
+  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_SetBinsLength" c_th2i_setbinslength 
+  :: (Ptr RawTH2I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_SetBuffer" c_th2i_setbuffer 
+  :: (Ptr RawTH2I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetCellContent" c_th2i_setcellcontent 
+  :: (Ptr RawTH2I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_SetContent" c_th2i_setcontent 
+  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_SetContour" c_th2i_setcontour 
+  :: (Ptr RawTH2I) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_SetContourLevel" c_th2i_setcontourlevel 
+  :: (Ptr RawTH2I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_SetDirectory" c_th2i_setdirectory 
+  :: (Ptr RawTH2I) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2I_SetEntries" c_th2i_setentries 
+  :: (Ptr RawTH2I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_SetError" c_th2i_seterror 
+  :: (Ptr RawTH2I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2I_setLabelColorA" c_th2i_setlabelcolora 
+  :: (Ptr RawTH2I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_setLabelSizeA" c_th2i_setlabelsizea 
+  :: (Ptr RawTH2I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_setLabelFontA" c_th2i_setlabelfonta 
+  :: (Ptr RawTH2I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_setLabelOffsetA" c_th2i_setlabeloffseta 
+  :: (Ptr RawTH2I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetMaximum" c_th2i_setmaximum 
+  :: (Ptr RawTH2I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_SetMinimum" c_th2i_setminimum 
+  :: (Ptr RawTH2I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_SetNormFactor" c_th2i_setnormfactor 
+  :: (Ptr RawTH2I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2I_SetStats" c_th2i_setstats 
+  :: (Ptr RawTH2I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_SetOption" c_th2i_setoption 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetXTitle" c_th2i_setxtitle 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetYTitle" c_th2i_setytitle 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetZTitle" c_th2i_setztitle 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_ShowBackground" c_th2i_showbackground 
+  :: (Ptr RawTH2I) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2I_ShowPeaks" c_th2i_showpeaks 
+  :: (Ptr RawTH2I) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2I_Smooth" c_th2i_smooth 
+  :: (Ptr RawTH2I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_Sumw2" c_th2i_sumw2 
+  :: (Ptr RawTH2I) -> IO ()
+foreign import ccall "HROOT.h TH2I_SetName" c_th2i_setname 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetNameTitle" c_th2i_setnametitle 
+  :: (Ptr RawTH2I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetTitle" c_th2i_settitle 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_SetLineColor" c_th2i_setlinecolor 
+  :: (Ptr RawTH2I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_SetFillColor" c_th2i_setfillcolor 
+  :: (Ptr RawTH2I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_SetFillStyle" c_th2i_setfillstyle 
+  :: (Ptr RawTH2I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2I_GetName" c_th2i_getname 
+  :: (Ptr RawTH2I) -> IO CString
+foreign import ccall "HROOT.h TH2I_Draw" c_th2i_draw 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_FindObject" c_th2i_findobject 
+  :: (Ptr RawTH2I) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH2I_SaveAs" c_th2i_saveas 
+  :: (Ptr RawTH2I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_Write" c_th2i_write 
+  :: (Ptr RawTH2I) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2I_IsA" c_th2i_isa 
+  :: (Ptr RawTH2I) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH2I_printObj" c_th2i_printobj 
+  :: (Ptr RawTH2I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2I_delete" c_th2i_delete 
+  :: (Ptr RawTH2I) -> IO ()
+
+foreign import ccall "HROOT.h TH2Poly_fill2" c_th2poly_fill2 
+  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_fillRandom2" c_th2poly_fillrandom2 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_findFirstBinAbove2" c_th2poly_findfirstbinabove2 
+  :: (Ptr RawTH2Poly) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_findLastBinAbove2" c_th2poly_findlastbinabove2 
+  :: (Ptr RawTH2Poly) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_FitSlicesX" c_th2poly_fitslicesx 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_FitSlicesY" c_th2poly_fitslicesy 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_GetCorrelationFactor" c_th2poly_getcorrelationfactor 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetCovariance" c_th2poly_getcovariance 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_integral2" c_th2poly_integral2 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_RebinX" c_th2poly_rebinx 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2Poly_RebinY" c_th2poly_rebiny 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2Poly_Rebin2D" c_th2poly_rebin2d 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2Poly_SetShowProjectionX" c_th2poly_setshowprojectionx 
+  :: (Ptr RawTH2Poly) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetShowProjectionY" c_th2poly_setshowprojectiony 
+  :: (Ptr RawTH2Poly) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Add" c_th2poly_add 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_AddBinContent" c_th2poly_addbincontent 
+  :: (Ptr RawTH2Poly) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Chi2Test" c_th2poly_chi2test 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_ComputeIntegral" c_th2poly_computeintegral 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_DirectoryAutoAdd" c_th2poly_directoryautoadd 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_DistancetoPrimitive" c_th2poly_distancetoprimitive 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_Divide" c_th2poly_divide 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_DrawCopy" c_th2poly_drawcopy 
+  :: (Ptr RawTH2Poly) -> CString -> IO (Ptr RawTH2Poly)
+foreign import ccall "HROOT.h TH2Poly_DrawNormalized" c_th2poly_drawnormalized 
+  :: (Ptr RawTH2Poly) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2Poly_DrawPanel" c_th2poly_drawpanel 
+  :: (Ptr RawTH2Poly) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_BufferEmpty" c_th2poly_bufferempty 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_Eval" c_th2poly_eval 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_ExecuteEvent" c_th2poly_executeevent 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_FFT" c_th2poly_fft 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2Poly_fill1" c_th2poly_fill1 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_FillN" c_th2poly_filln 
+  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_FillRandom" c_th2poly_fillrandom 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_FindBin" c_th2poly_findbin 
+  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_FindFixBin" c_th2poly_findfixbin 
+  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_FindFirstBinAbove" c_th2poly_findfirstbinabove 
+  :: (Ptr RawTH2Poly) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_FindLastBinAbove" c_th2poly_findlastbinabove 
+  :: (Ptr RawTH2Poly) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_FitPanel" c_th2poly_fitpanel 
+  :: (Ptr RawTH2Poly) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_getNdivisionA" c_th2poly_getndivisiona 
+  :: (Ptr RawTH2Poly) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_getAxisColorA" c_th2poly_getaxiscolora 
+  :: (Ptr RawTH2Poly) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_getLabelColorA" c_th2poly_getlabelcolora 
+  :: (Ptr RawTH2Poly) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_getLabelFontA" c_th2poly_getlabelfonta 
+  :: (Ptr RawTH2Poly) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_getLabelOffsetA" c_th2poly_getlabeloffseta 
+  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_getLabelSizeA" c_th2poly_getlabelsizea 
+  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_getTitleFontA" c_th2poly_gettitlefonta 
+  :: (Ptr RawTH2Poly) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_getTitleOffsetA" c_th2poly_gettitleoffseta 
+  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_getTitleSizeA" c_th2poly_gettitlesizea 
+  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_getTickLengthA" c_th2poly_getticklengtha 
+  :: (Ptr RawTH2Poly) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBarOffset" c_th2poly_getbaroffset 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBarWidth" c_th2poly_getbarwidth 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetContour" c_th2poly_getcontour 
+  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_GetContourLevel" c_th2poly_getcontourlevel 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetContourLevelPad" c_th2poly_getcontourlevelpad 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBin" c_th2poly_getbin 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_GetBinCenter" c_th2poly_getbincenter 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBinContent1" c_th2poly_getbincontent1 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBinContent2" c_th2poly_getbincontent2 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBinContent3" c_th2poly_getbincontent3 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBinError1" c_th2poly_getbinerror1 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBinError2" c_th2poly_getbinerror2 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBinError3" c_th2poly_getbinerror3 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBinLowEdge" c_th2poly_getbinlowedge 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetBinWidth" c_th2poly_getbinwidth 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetCellContent" c_th2poly_getcellcontent 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetCellError" c_th2poly_getcellerror 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetEntries" c_th2poly_getentries 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetEffectiveEntries" c_th2poly_geteffectiveentries 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetFunction" c_th2poly_getfunction 
+  :: (Ptr RawTH2Poly) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH2Poly_GetDimension" c_th2poly_getdimension 
+  :: (Ptr RawTH2Poly) -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_GetKurtosis" c_th2poly_getkurtosis 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetLowEdge" c_th2poly_getlowedge 
+  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_GetMaximum" c_th2poly_getmaximum 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetMaximumBin" c_th2poly_getmaximumbin 
+  :: (Ptr RawTH2Poly) -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_GetMaximumStored" c_th2poly_getmaximumstored 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetMinimum" c_th2poly_getminimum 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetMinimumBin" c_th2poly_getminimumbin 
+  :: (Ptr RawTH2Poly) -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_GetMinimumStored" c_th2poly_getminimumstored 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetMean" c_th2poly_getmean 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetMeanError" c_th2poly_getmeanerror 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetNbinsX" c_th2poly_getnbinsx 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetNbinsY" c_th2poly_getnbinsy 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetNbinsZ" c_th2poly_getnbinsz 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetQuantiles" c_th2poly_getquantiles 
+  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_GetRandom" c_th2poly_getrandom 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetStats" c_th2poly_getstats 
+  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_GetSumOfWeights" c_th2poly_getsumofweights 
+  :: (Ptr RawTH2Poly) -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetSumw2" c_th2poly_getsumw2 
+  :: (Ptr RawTH2Poly) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH2Poly_GetSumw2N" c_th2poly_getsumw2n 
+  :: (Ptr RawTH2Poly) -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_GetRMS" c_th2poly_getrms 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetRMSError" c_th2poly_getrmserror 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_GetSkewness" c_th2poly_getskewness 
+  :: (Ptr RawTH2Poly) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_integral1" c_th2poly_integral1 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_interpolate1" c_th2poly_interpolate1 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_interpolate2" c_th2poly_interpolate2 
+  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_interpolate3" c_th2poly_interpolate3 
+  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_KolmogorovTest" c_th2poly_kolmogorovtest 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2Poly_LabelsDeflate" c_th2poly_labelsdeflate 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_LabelsInflate" c_th2poly_labelsinflate 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_LabelsOption" c_th2poly_labelsoption 
+  :: (Ptr RawTH2Poly) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_multiflyF" c_th2poly_multiflyf 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Multiply" c_th2poly_multiply 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Paint" c_th2poly_paint 
+  :: (Ptr RawTH2Poly) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_PutStats" c_th2poly_putstats 
+  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Rebin" c_th2poly_rebin 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2Poly_RebinAxis" c_th2poly_rebinaxis 
+  :: (Ptr RawTH2Poly) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Rebuild" c_th2poly_rebuild 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_RecursiveRemove" c_th2poly_recursiveremove 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Reset" c_th2poly_reset 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_ResetStats" c_th2poly_resetstats 
+  :: (Ptr RawTH2Poly) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Scale" c_th2poly_scale 
+  :: (Ptr RawTH2Poly) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setAxisColorA" c_th2poly_setaxiscolora 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetAxisRange" c_th2poly_setaxisrange 
+  :: (Ptr RawTH2Poly) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetBarOffset" c_th2poly_setbaroffset 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetBarWidth" c_th2poly_setbarwidth 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBinContent1" c_th2poly_setbincontent1 
+  :: (Ptr RawTH2Poly) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBinContent2" c_th2poly_setbincontent2 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBinContent3" c_th2poly_setbincontent3 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBinError1" c_th2poly_setbinerror1 
+  :: (Ptr RawTH2Poly) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBinError2" c_th2poly_setbinerror2 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBinError3" c_th2poly_setbinerror3 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBins1" c_th2poly_setbins1 
+  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBins2" c_th2poly_setbins2 
+  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setBins3" c_th2poly_setbins3 
+  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetBinsLength" c_th2poly_setbinslength 
+  :: (Ptr RawTH2Poly) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetBuffer" c_th2poly_setbuffer 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetCellContent" c_th2poly_setcellcontent 
+  :: (Ptr RawTH2Poly) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetContent" c_th2poly_setcontent 
+  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetContour" c_th2poly_setcontour 
+  :: (Ptr RawTH2Poly) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetContourLevel" c_th2poly_setcontourlevel 
+  :: (Ptr RawTH2Poly) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetDirectory" c_th2poly_setdirectory 
+  :: (Ptr RawTH2Poly) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetEntries" c_th2poly_setentries 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetError" c_th2poly_seterror 
+  :: (Ptr RawTH2Poly) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setLabelColorA" c_th2poly_setlabelcolora 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setLabelSizeA" c_th2poly_setlabelsizea 
+  :: (Ptr RawTH2Poly) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setLabelFontA" c_th2poly_setlabelfonta 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_setLabelOffsetA" c_th2poly_setlabeloffseta 
+  :: (Ptr RawTH2Poly) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetMaximum" c_th2poly_setmaximum 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetMinimum" c_th2poly_setminimum 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetNormFactor" c_th2poly_setnormfactor 
+  :: (Ptr RawTH2Poly) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetStats" c_th2poly_setstats 
+  :: (Ptr RawTH2Poly) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetOption" c_th2poly_setoption 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetXTitle" c_th2poly_setxtitle 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetYTitle" c_th2poly_setytitle 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetZTitle" c_th2poly_setztitle 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_ShowBackground" c_th2poly_showbackground 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2Poly_ShowPeaks" c_th2poly_showpeaks 
+  :: (Ptr RawTH2Poly) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_Smooth" c_th2poly_smooth 
+  :: (Ptr RawTH2Poly) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Sumw2" c_th2poly_sumw2 
+  :: (Ptr RawTH2Poly) -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetName" c_th2poly_setname 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetNameTitle" c_th2poly_setnametitle 
+  :: (Ptr RawTH2Poly) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetTitle" c_th2poly_settitle 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetLineColor" c_th2poly_setlinecolor 
+  :: (Ptr RawTH2Poly) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetFillColor" c_th2poly_setfillcolor 
+  :: (Ptr RawTH2Poly) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_SetFillStyle" c_th2poly_setfillstyle 
+  :: (Ptr RawTH2Poly) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2Poly_GetName" c_th2poly_getname 
+  :: (Ptr RawTH2Poly) -> IO CString
+foreign import ccall "HROOT.h TH2Poly_Draw" c_th2poly_draw 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_FindObject" c_th2poly_findobject 
+  :: (Ptr RawTH2Poly) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH2Poly_SaveAs" c_th2poly_saveas 
+  :: (Ptr RawTH2Poly) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_Write" c_th2poly_write 
+  :: (Ptr RawTH2Poly) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2Poly_IsA" c_th2poly_isa 
+  :: (Ptr RawTH2Poly) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH2Poly_printObj" c_th2poly_printobj 
+  :: (Ptr RawTH2Poly) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2Poly_delete" c_th2poly_delete 
+  :: (Ptr RawTH2Poly) -> IO ()
+
+foreign import ccall "HROOT.h TH2S_fill2" c_th2s_fill2 
+  :: (Ptr RawTH2S) -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2S_fillRandom2" c_th2s_fillrandom2 
+  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_findFirstBinAbove2" c_th2s_findfirstbinabove2 
+  :: (Ptr RawTH2S) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2S_findLastBinAbove2" c_th2s_findlastbinabove2 
+  :: (Ptr RawTH2S) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2S_FitSlicesX" c_th2s_fitslicesx 
+  :: (Ptr RawTH2S) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2S_FitSlicesY" c_th2s_fitslicesy 
+  :: (Ptr RawTH2S) -> (Ptr RawTF1) -> CInt -> CInt -> CInt -> CString -> (Ptr RawTObjArray) -> IO ()
+foreign import ccall "HROOT.h TH2S_GetCorrelationFactor" c_th2s_getcorrelationfactor 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetCovariance" c_th2s_getcovariance 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_integral2" c_th2s_integral2 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2S_RebinX" c_th2s_rebinx 
+  :: (Ptr RawTH2S) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2S_RebinY" c_th2s_rebiny 
+  :: (Ptr RawTH2S) -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2S_Rebin2D" c_th2s_rebin2d 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CString -> IO (Ptr RawTH2)
+foreign import ccall "HROOT.h TH2S_SetShowProjectionX" c_th2s_setshowprojectionx 
+  :: (Ptr RawTH2S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_SetShowProjectionY" c_th2s_setshowprojectiony 
+  :: (Ptr RawTH2S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_Add" c_th2s_add 
+  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_AddBinContent" c_th2s_addbincontent 
+  :: (Ptr RawTH2S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_Chi2Test" c_th2s_chi2test 
+  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_ComputeIntegral" c_th2s_computeintegral 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_DirectoryAutoAdd" c_th2s_directoryautoadd 
+  :: (Ptr RawTH2S) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2S_DistancetoPrimitive" c_th2s_distancetoprimitive 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2S_Divide" c_th2s_divide 
+  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_DrawCopy" c_th2s_drawcopy 
+  :: (Ptr RawTH2S) -> CString -> IO (Ptr RawTH2S)
+foreign import ccall "HROOT.h TH2S_DrawNormalized" c_th2s_drawnormalized 
+  :: (Ptr RawTH2S) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2S_DrawPanel" c_th2s_drawpanel 
+  :: (Ptr RawTH2S) -> IO ()
+foreign import ccall "HROOT.h TH2S_BufferEmpty" c_th2s_bufferempty 
+  :: (Ptr RawTH2S) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2S_Eval" c_th2s_eval 
+  :: (Ptr RawTH2S) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_ExecuteEvent" c_th2s_executeevent 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_FFT" c_th2s_fft 
+  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2S_fill1" c_th2s_fill1 
+  :: (Ptr RawTH2S) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2S_FillN" c_th2s_filln 
+  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_FillRandom" c_th2s_fillrandom 
+  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_FindBin" c_th2s_findbin 
+  :: (Ptr RawTH2S) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2S_FindFixBin" c_th2s_findfixbin 
+  :: (Ptr RawTH2S) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2S_FindFirstBinAbove" c_th2s_findfirstbinabove 
+  :: (Ptr RawTH2S) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2S_FindLastBinAbove" c_th2s_findlastbinabove 
+  :: (Ptr RawTH2S) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2S_FitPanel" c_th2s_fitpanel 
+  :: (Ptr RawTH2S) -> IO ()
+foreign import ccall "HROOT.h TH2S_getNdivisionA" c_th2s_getndivisiona 
+  :: (Ptr RawTH2S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2S_getAxisColorA" c_th2s_getaxiscolora 
+  :: (Ptr RawTH2S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2S_getLabelColorA" c_th2s_getlabelcolora 
+  :: (Ptr RawTH2S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2S_getLabelFontA" c_th2s_getlabelfonta 
+  :: (Ptr RawTH2S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2S_getLabelOffsetA" c_th2s_getlabeloffseta 
+  :: (Ptr RawTH2S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2S_getLabelSizeA" c_th2s_getlabelsizea 
+  :: (Ptr RawTH2S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2S_getTitleFontA" c_th2s_gettitlefonta 
+  :: (Ptr RawTH2S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH2S_getTitleOffsetA" c_th2s_gettitleoffseta 
+  :: (Ptr RawTH2S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2S_getTitleSizeA" c_th2s_gettitlesizea 
+  :: (Ptr RawTH2S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2S_getTickLengthA" c_th2s_getticklengtha 
+  :: (Ptr RawTH2S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBarOffset" c_th2s_getbaroffset 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBarWidth" c_th2s_getbarwidth 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetContour" c_th2s_getcontour 
+  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2S_GetContourLevel" c_th2s_getcontourlevel 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetContourLevelPad" c_th2s_getcontourlevelpad 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBin" c_th2s_getbin 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2S_GetBinCenter" c_th2s_getbincenter 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBinContent1" c_th2s_getbincontent1 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBinContent2" c_th2s_getbincontent2 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBinContent3" c_th2s_getbincontent3 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBinError1" c_th2s_getbinerror1 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBinError2" c_th2s_getbinerror2 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBinError3" c_th2s_getbinerror3 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBinLowEdge" c_th2s_getbinlowedge 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetBinWidth" c_th2s_getbinwidth 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetCellContent" c_th2s_getcellcontent 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetCellError" c_th2s_getcellerror 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetEntries" c_th2s_getentries 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetEffectiveEntries" c_th2s_geteffectiveentries 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetFunction" c_th2s_getfunction 
+  :: (Ptr RawTH2S) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH2S_GetDimension" c_th2s_getdimension 
+  :: (Ptr RawTH2S) -> IO CInt
+foreign import ccall "HROOT.h TH2S_GetKurtosis" c_th2s_getkurtosis 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetLowEdge" c_th2s_getlowedge 
+  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_GetMaximum" c_th2s_getmaximum 
+  :: (Ptr RawTH2S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetMaximumBin" c_th2s_getmaximumbin 
+  :: (Ptr RawTH2S) -> IO CInt
+foreign import ccall "HROOT.h TH2S_GetMaximumStored" c_th2s_getmaximumstored 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetMinimum" c_th2s_getminimum 
+  :: (Ptr RawTH2S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetMinimumBin" c_th2s_getminimumbin 
+  :: (Ptr RawTH2S) -> IO CInt
+foreign import ccall "HROOT.h TH2S_GetMinimumStored" c_th2s_getminimumstored 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetMean" c_th2s_getmean 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetMeanError" c_th2s_getmeanerror 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetNbinsX" c_th2s_getnbinsx 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetNbinsY" c_th2s_getnbinsy 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetNbinsZ" c_th2s_getnbinsz 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetQuantiles" c_th2s_getquantiles 
+  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH2S_GetRandom" c_th2s_getrandom 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetStats" c_th2s_getstats 
+  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_GetSumOfWeights" c_th2s_getsumofweights 
+  :: (Ptr RawTH2S) -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetSumw2" c_th2s_getsumw2 
+  :: (Ptr RawTH2S) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH2S_GetSumw2N" c_th2s_getsumw2n 
+  :: (Ptr RawTH2S) -> IO CInt
+foreign import ccall "HROOT.h TH2S_GetRMS" c_th2s_getrms 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetRMSError" c_th2s_getrmserror 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_GetSkewness" c_th2s_getskewness 
+  :: (Ptr RawTH2S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH2S_integral1" c_th2s_integral1 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2S_interpolate1" c_th2s_interpolate1 
+  :: (Ptr RawTH2S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2S_interpolate2" c_th2s_interpolate2 
+  :: (Ptr RawTH2S) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2S_interpolate3" c_th2s_interpolate3 
+  :: (Ptr RawTH2S) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH2S_KolmogorovTest" c_th2s_kolmogorovtest 
+  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH2S_LabelsDeflate" c_th2s_labelsdeflate 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_LabelsInflate" c_th2s_labelsinflate 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_LabelsOption" c_th2s_labelsoption 
+  :: (Ptr RawTH2S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_multiflyF" c_th2s_multiflyf 
+  :: (Ptr RawTH2S) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_Multiply" c_th2s_multiply 
+  :: (Ptr RawTH2S) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_Paint" c_th2s_paint 
+  :: (Ptr RawTH2S) -> IO ()
+foreign import ccall "HROOT.h TH2S_PutStats" c_th2s_putstats 
+  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_Rebin" c_th2s_rebin 
+  :: (Ptr RawTH2S) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2S_RebinAxis" c_th2s_rebinaxis 
+  :: (Ptr RawTH2S) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH2S_Rebuild" c_th2s_rebuild 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_RecursiveRemove" c_th2s_recursiveremove 
+  :: (Ptr RawTH2S) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH2S_Reset" c_th2s_reset 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_ResetStats" c_th2s_resetstats 
+  :: (Ptr RawTH2S) -> IO ()
+foreign import ccall "HROOT.h TH2S_Scale" c_th2s_scale 
+  :: (Ptr RawTH2S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_setAxisColorA" c_th2s_setaxiscolora 
+  :: (Ptr RawTH2S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetAxisRange" c_th2s_setaxisrange 
+  :: (Ptr RawTH2S) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetBarOffset" c_th2s_setbaroffset 
+  :: (Ptr RawTH2S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_SetBarWidth" c_th2s_setbarwidth 
+  :: (Ptr RawTH2S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_setBinContent1" c_th2s_setbincontent1 
+  :: (Ptr RawTH2S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_setBinContent2" c_th2s_setbincontent2 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_setBinContent3" c_th2s_setbincontent3 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_setBinError1" c_th2s_setbinerror1 
+  :: (Ptr RawTH2S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_setBinError2" c_th2s_setbinerror2 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_setBinError3" c_th2s_setbinerror3 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_setBins1" c_th2s_setbins1 
+  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_setBins2" c_th2s_setbins2 
+  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_setBins3" c_th2s_setbins3 
+  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_SetBinsLength" c_th2s_setbinslength 
+  :: (Ptr RawTH2S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_SetBuffer" c_th2s_setbuffer 
+  :: (Ptr RawTH2S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetCellContent" c_th2s_setcellcontent 
+  :: (Ptr RawTH2S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_SetContent" c_th2s_setcontent 
+  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_SetContour" c_th2s_setcontour 
+  :: (Ptr RawTH2S) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_SetContourLevel" c_th2s_setcontourlevel 
+  :: (Ptr RawTH2S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_SetDirectory" c_th2s_setdirectory 
+  :: (Ptr RawTH2S) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH2S_SetEntries" c_th2s_setentries 
+  :: (Ptr RawTH2S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_SetError" c_th2s_seterror 
+  :: (Ptr RawTH2S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH2S_setLabelColorA" c_th2s_setlabelcolora 
+  :: (Ptr RawTH2S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_setLabelSizeA" c_th2s_setlabelsizea 
+  :: (Ptr RawTH2S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_setLabelFontA" c_th2s_setlabelfonta 
+  :: (Ptr RawTH2S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_setLabelOffsetA" c_th2s_setlabeloffseta 
+  :: (Ptr RawTH2S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetMaximum" c_th2s_setmaximum 
+  :: (Ptr RawTH2S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_SetMinimum" c_th2s_setminimum 
+  :: (Ptr RawTH2S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_SetNormFactor" c_th2s_setnormfactor 
+  :: (Ptr RawTH2S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH2S_SetStats" c_th2s_setstats 
+  :: (Ptr RawTH2S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_SetOption" c_th2s_setoption 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetXTitle" c_th2s_setxtitle 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetYTitle" c_th2s_setytitle 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetZTitle" c_th2s_setztitle 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_ShowBackground" c_th2s_showbackground 
+  :: (Ptr RawTH2S) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH2S_ShowPeaks" c_th2s_showpeaks 
+  :: (Ptr RawTH2S) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH2S_Smooth" c_th2s_smooth 
+  :: (Ptr RawTH2S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_Sumw2" c_th2s_sumw2 
+  :: (Ptr RawTH2S) -> IO ()
+foreign import ccall "HROOT.h TH2S_SetName" c_th2s_setname 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetNameTitle" c_th2s_setnametitle 
+  :: (Ptr RawTH2S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetTitle" c_th2s_settitle 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_SetLineColor" c_th2s_setlinecolor 
+  :: (Ptr RawTH2S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_SetFillColor" c_th2s_setfillcolor 
+  :: (Ptr RawTH2S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_SetFillStyle" c_th2s_setfillstyle 
+  :: (Ptr RawTH2S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH2S_GetName" c_th2s_getname 
+  :: (Ptr RawTH2S) -> IO CString
+foreign import ccall "HROOT.h TH2S_Draw" c_th2s_draw 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_FindObject" c_th2s_findobject 
+  :: (Ptr RawTH2S) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH2S_SaveAs" c_th2s_saveas 
+  :: (Ptr RawTH2S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_Write" c_th2s_write 
+  :: (Ptr RawTH2S) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH2S_IsA" c_th2s_isa 
+  :: (Ptr RawTH2S) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH2S_printObj" c_th2s_printobj 
+  :: (Ptr RawTH2S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH2S_delete" c_th2s_delete 
+  :: (Ptr RawTH2S) -> IO ()
+
+foreign import ccall "HROOT.h TH3C_Add" c_th3c_add 
+  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_AddBinContent" c_th3c_addbincontent 
+  :: (Ptr RawTH3C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_Chi2Test" c_th3c_chi2test 
+  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_ComputeIntegral" c_th3c_computeintegral 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_DirectoryAutoAdd" c_th3c_directoryautoadd 
+  :: (Ptr RawTH3C) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3C_DistancetoPrimitive" c_th3c_distancetoprimitive 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3C_Divide" c_th3c_divide 
+  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_DrawCopy" c_th3c_drawcopy 
+  :: (Ptr RawTH3C) -> CString -> IO (Ptr RawTH3C)
+foreign import ccall "HROOT.h TH3C_DrawNormalized" c_th3c_drawnormalized 
+  :: (Ptr RawTH3C) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3C_DrawPanel" c_th3c_drawpanel 
+  :: (Ptr RawTH3C) -> IO ()
+foreign import ccall "HROOT.h TH3C_BufferEmpty" c_th3c_bufferempty 
+  :: (Ptr RawTH3C) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3C_Eval" c_th3c_eval 
+  :: (Ptr RawTH3C) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_ExecuteEvent" c_th3c_executeevent 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3C_FFT" c_th3c_fft 
+  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3C_fill1" c_th3c_fill1 
+  :: (Ptr RawTH3C) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3C_FillN" c_th3c_filln 
+  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3C_FillRandom" c_th3c_fillrandom 
+  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3C_FindBin" c_th3c_findbin 
+  :: (Ptr RawTH3C) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3C_FindFixBin" c_th3c_findfixbin 
+  :: (Ptr RawTH3C) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3C_FindFirstBinAbove" c_th3c_findfirstbinabove 
+  :: (Ptr RawTH3C) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3C_FindLastBinAbove" c_th3c_findlastbinabove 
+  :: (Ptr RawTH3C) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3C_FitPanel" c_th3c_fitpanel 
+  :: (Ptr RawTH3C) -> IO ()
+foreign import ccall "HROOT.h TH3C_getNdivisionA" c_th3c_getndivisiona 
+  :: (Ptr RawTH3C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3C_getAxisColorA" c_th3c_getaxiscolora 
+  :: (Ptr RawTH3C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3C_getLabelColorA" c_th3c_getlabelcolora 
+  :: (Ptr RawTH3C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3C_getLabelFontA" c_th3c_getlabelfonta 
+  :: (Ptr RawTH3C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3C_getLabelOffsetA" c_th3c_getlabeloffseta 
+  :: (Ptr RawTH3C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3C_getLabelSizeA" c_th3c_getlabelsizea 
+  :: (Ptr RawTH3C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3C_getTitleFontA" c_th3c_gettitlefonta 
+  :: (Ptr RawTH3C) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3C_getTitleOffsetA" c_th3c_gettitleoffseta 
+  :: (Ptr RawTH3C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3C_getTitleSizeA" c_th3c_gettitlesizea 
+  :: (Ptr RawTH3C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3C_getTickLengthA" c_th3c_getticklengtha 
+  :: (Ptr RawTH3C) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBarOffset" c_th3c_getbaroffset 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBarWidth" c_th3c_getbarwidth 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetContour" c_th3c_getcontour 
+  :: (Ptr RawTH3C) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3C_GetContourLevel" c_th3c_getcontourlevel 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetContourLevelPad" c_th3c_getcontourlevelpad 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBin" c_th3c_getbin 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3C_GetBinCenter" c_th3c_getbincenter 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBinContent1" c_th3c_getbincontent1 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBinContent2" c_th3c_getbincontent2 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBinContent3" c_th3c_getbincontent3 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBinError1" c_th3c_getbinerror1 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBinError2" c_th3c_getbinerror2 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBinError3" c_th3c_getbinerror3 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBinLowEdge" c_th3c_getbinlowedge 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetBinWidth" c_th3c_getbinwidth 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetCellContent" c_th3c_getcellcontent 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetCellError" c_th3c_getcellerror 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetEntries" c_th3c_getentries 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetEffectiveEntries" c_th3c_geteffectiveentries 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetFunction" c_th3c_getfunction 
+  :: (Ptr RawTH3C) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH3C_GetDimension" c_th3c_getdimension 
+  :: (Ptr RawTH3C) -> IO CInt
+foreign import ccall "HROOT.h TH3C_GetKurtosis" c_th3c_getkurtosis 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetLowEdge" c_th3c_getlowedge 
+  :: (Ptr RawTH3C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_GetMaximum" c_th3c_getmaximum 
+  :: (Ptr RawTH3C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetMaximumBin" c_th3c_getmaximumbin 
+  :: (Ptr RawTH3C) -> IO CInt
+foreign import ccall "HROOT.h TH3C_GetMaximumStored" c_th3c_getmaximumstored 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetMinimum" c_th3c_getminimum 
+  :: (Ptr RawTH3C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetMinimumBin" c_th3c_getminimumbin 
+  :: (Ptr RawTH3C) -> IO CInt
+foreign import ccall "HROOT.h TH3C_GetMinimumStored" c_th3c_getminimumstored 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetMean" c_th3c_getmean 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetMeanError" c_th3c_getmeanerror 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetNbinsX" c_th3c_getnbinsx 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetNbinsY" c_th3c_getnbinsy 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetNbinsZ" c_th3c_getnbinsz 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetQuantiles" c_th3c_getquantiles 
+  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3C_GetRandom" c_th3c_getrandom 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetStats" c_th3c_getstats 
+  :: (Ptr RawTH3C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_GetSumOfWeights" c_th3c_getsumofweights 
+  :: (Ptr RawTH3C) -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetSumw2" c_th3c_getsumw2 
+  :: (Ptr RawTH3C) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH3C_GetSumw2N" c_th3c_getsumw2n 
+  :: (Ptr RawTH3C) -> IO CInt
+foreign import ccall "HROOT.h TH3C_GetRMS" c_th3c_getrms 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetRMSError" c_th3c_getrmserror 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_GetSkewness" c_th3c_getskewness 
+  :: (Ptr RawTH3C) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3C_integral1" c_th3c_integral1 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3C_interpolate1" c_th3c_interpolate1 
+  :: (Ptr RawTH3C) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3C_interpolate2" c_th3c_interpolate2 
+  :: (Ptr RawTH3C) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3C_interpolate3" c_th3c_interpolate3 
+  :: (Ptr RawTH3C) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3C_KolmogorovTest" c_th3c_kolmogorovtest 
+  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3C_LabelsDeflate" c_th3c_labelsdeflate 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_LabelsInflate" c_th3c_labelsinflate 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_LabelsOption" c_th3c_labelsoption 
+  :: (Ptr RawTH3C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_multiflyF" c_th3c_multiflyf 
+  :: (Ptr RawTH3C) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_Multiply" c_th3c_multiply 
+  :: (Ptr RawTH3C) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_Paint" c_th3c_paint 
+  :: (Ptr RawTH3C) -> IO ()
+foreign import ccall "HROOT.h TH3C_PutStats" c_th3c_putstats 
+  :: (Ptr RawTH3C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_Rebin" c_th3c_rebin 
+  :: (Ptr RawTH3C) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3C_RebinAxis" c_th3c_rebinaxis 
+  :: (Ptr RawTH3C) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH3C_Rebuild" c_th3c_rebuild 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_RecursiveRemove" c_th3c_recursiveremove 
+  :: (Ptr RawTH3C) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH3C_Reset" c_th3c_reset 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_ResetStats" c_th3c_resetstats 
+  :: (Ptr RawTH3C) -> IO ()
+foreign import ccall "HROOT.h TH3C_Scale" c_th3c_scale 
+  :: (Ptr RawTH3C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_setAxisColorA" c_th3c_setaxiscolora 
+  :: (Ptr RawTH3C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetAxisRange" c_th3c_setaxisrange 
+  :: (Ptr RawTH3C) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetBarOffset" c_th3c_setbaroffset 
+  :: (Ptr RawTH3C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_SetBarWidth" c_th3c_setbarwidth 
+  :: (Ptr RawTH3C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_setBinContent1" c_th3c_setbincontent1 
+  :: (Ptr RawTH3C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_setBinContent2" c_th3c_setbincontent2 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_setBinContent3" c_th3c_setbincontent3 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_setBinError1" c_th3c_setbinerror1 
+  :: (Ptr RawTH3C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_setBinError2" c_th3c_setbinerror2 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_setBinError3" c_th3c_setbinerror3 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_setBins1" c_th3c_setbins1 
+  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_setBins2" c_th3c_setbins2 
+  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_setBins3" c_th3c_setbins3 
+  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_SetBinsLength" c_th3c_setbinslength 
+  :: (Ptr RawTH3C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3C_SetBuffer" c_th3c_setbuffer 
+  :: (Ptr RawTH3C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetCellContent" c_th3c_setcellcontent 
+  :: (Ptr RawTH3C) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_SetContent" c_th3c_setcontent 
+  :: (Ptr RawTH3C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_SetContour" c_th3c_setcontour 
+  :: (Ptr RawTH3C) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_SetContourLevel" c_th3c_setcontourlevel 
+  :: (Ptr RawTH3C) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_SetDirectory" c_th3c_setdirectory 
+  :: (Ptr RawTH3C) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3C_SetEntries" c_th3c_setentries 
+  :: (Ptr RawTH3C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_SetError" c_th3c_seterror 
+  :: (Ptr RawTH3C) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3C_setLabelColorA" c_th3c_setlabelcolora 
+  :: (Ptr RawTH3C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_setLabelSizeA" c_th3c_setlabelsizea 
+  :: (Ptr RawTH3C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_setLabelFontA" c_th3c_setlabelfonta 
+  :: (Ptr RawTH3C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_setLabelOffsetA" c_th3c_setlabeloffseta 
+  :: (Ptr RawTH3C) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetMaximum" c_th3c_setmaximum 
+  :: (Ptr RawTH3C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_SetMinimum" c_th3c_setminimum 
+  :: (Ptr RawTH3C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_SetNormFactor" c_th3c_setnormfactor 
+  :: (Ptr RawTH3C) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3C_SetStats" c_th3c_setstats 
+  :: (Ptr RawTH3C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3C_SetOption" c_th3c_setoption 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetXTitle" c_th3c_setxtitle 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetYTitle" c_th3c_setytitle 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetZTitle" c_th3c_setztitle 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_ShowBackground" c_th3c_showbackground 
+  :: (Ptr RawTH3C) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3C_ShowPeaks" c_th3c_showpeaks 
+  :: (Ptr RawTH3C) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3C_Smooth" c_th3c_smooth 
+  :: (Ptr RawTH3C) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_Sumw2" c_th3c_sumw2 
+  :: (Ptr RawTH3C) -> IO ()
+foreign import ccall "HROOT.h TH3C_SetName" c_th3c_setname 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetNameTitle" c_th3c_setnametitle 
+  :: (Ptr RawTH3C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetTitle" c_th3c_settitle 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_SetLineColor" c_th3c_setlinecolor 
+  :: (Ptr RawTH3C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3C_SetFillColor" c_th3c_setfillcolor 
+  :: (Ptr RawTH3C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3C_SetFillStyle" c_th3c_setfillstyle 
+  :: (Ptr RawTH3C) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3C_GetName" c_th3c_getname 
+  :: (Ptr RawTH3C) -> IO CString
+foreign import ccall "HROOT.h TH3C_Draw" c_th3c_draw 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_FindObject" c_th3c_findobject 
+  :: (Ptr RawTH3C) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH3C_SaveAs" c_th3c_saveas 
+  :: (Ptr RawTH3C) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_Write" c_th3c_write 
+  :: (Ptr RawTH3C) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3C_IsA" c_th3c_isa 
+  :: (Ptr RawTH3C) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH3C_printObj" c_th3c_printobj 
+  :: (Ptr RawTH3C) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3C_delete" c_th3c_delete 
+  :: (Ptr RawTH3C) -> IO ()
+
+foreign import ccall "HROOT.h TH3D_Add" c_th3d_add 
+  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_AddBinContent" c_th3d_addbincontent 
+  :: (Ptr RawTH3D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_Chi2Test" c_th3d_chi2test 
+  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_ComputeIntegral" c_th3d_computeintegral 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_DirectoryAutoAdd" c_th3d_directoryautoadd 
+  :: (Ptr RawTH3D) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3D_DistancetoPrimitive" c_th3d_distancetoprimitive 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3D_Divide" c_th3d_divide 
+  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_DrawCopy" c_th3d_drawcopy 
+  :: (Ptr RawTH3D) -> CString -> IO (Ptr RawTH3D)
+foreign import ccall "HROOT.h TH3D_DrawNormalized" c_th3d_drawnormalized 
+  :: (Ptr RawTH3D) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3D_DrawPanel" c_th3d_drawpanel 
+  :: (Ptr RawTH3D) -> IO ()
+foreign import ccall "HROOT.h TH3D_BufferEmpty" c_th3d_bufferempty 
+  :: (Ptr RawTH3D) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3D_Eval" c_th3d_eval 
+  :: (Ptr RawTH3D) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_ExecuteEvent" c_th3d_executeevent 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3D_FFT" c_th3d_fft 
+  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3D_fill1" c_th3d_fill1 
+  :: (Ptr RawTH3D) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3D_FillN" c_th3d_filln 
+  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3D_FillRandom" c_th3d_fillrandom 
+  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3D_FindBin" c_th3d_findbin 
+  :: (Ptr RawTH3D) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3D_FindFixBin" c_th3d_findfixbin 
+  :: (Ptr RawTH3D) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3D_FindFirstBinAbove" c_th3d_findfirstbinabove 
+  :: (Ptr RawTH3D) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3D_FindLastBinAbove" c_th3d_findlastbinabove 
+  :: (Ptr RawTH3D) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3D_FitPanel" c_th3d_fitpanel 
+  :: (Ptr RawTH3D) -> IO ()
+foreign import ccall "HROOT.h TH3D_getNdivisionA" c_th3d_getndivisiona 
+  :: (Ptr RawTH3D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3D_getAxisColorA" c_th3d_getaxiscolora 
+  :: (Ptr RawTH3D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3D_getLabelColorA" c_th3d_getlabelcolora 
+  :: (Ptr RawTH3D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3D_getLabelFontA" c_th3d_getlabelfonta 
+  :: (Ptr RawTH3D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3D_getLabelOffsetA" c_th3d_getlabeloffseta 
+  :: (Ptr RawTH3D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3D_getLabelSizeA" c_th3d_getlabelsizea 
+  :: (Ptr RawTH3D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3D_getTitleFontA" c_th3d_gettitlefonta 
+  :: (Ptr RawTH3D) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3D_getTitleOffsetA" c_th3d_gettitleoffseta 
+  :: (Ptr RawTH3D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3D_getTitleSizeA" c_th3d_gettitlesizea 
+  :: (Ptr RawTH3D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3D_getTickLengthA" c_th3d_getticklengtha 
+  :: (Ptr RawTH3D) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBarOffset" c_th3d_getbaroffset 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBarWidth" c_th3d_getbarwidth 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetContour" c_th3d_getcontour 
+  :: (Ptr RawTH3D) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3D_GetContourLevel" c_th3d_getcontourlevel 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetContourLevelPad" c_th3d_getcontourlevelpad 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBin" c_th3d_getbin 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3D_GetBinCenter" c_th3d_getbincenter 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBinContent1" c_th3d_getbincontent1 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBinContent2" c_th3d_getbincontent2 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBinContent3" c_th3d_getbincontent3 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBinError1" c_th3d_getbinerror1 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBinError2" c_th3d_getbinerror2 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBinError3" c_th3d_getbinerror3 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBinLowEdge" c_th3d_getbinlowedge 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetBinWidth" c_th3d_getbinwidth 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetCellContent" c_th3d_getcellcontent 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetCellError" c_th3d_getcellerror 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetEntries" c_th3d_getentries 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetEffectiveEntries" c_th3d_geteffectiveentries 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetFunction" c_th3d_getfunction 
+  :: (Ptr RawTH3D) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH3D_GetDimension" c_th3d_getdimension 
+  :: (Ptr RawTH3D) -> IO CInt
+foreign import ccall "HROOT.h TH3D_GetKurtosis" c_th3d_getkurtosis 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetLowEdge" c_th3d_getlowedge 
+  :: (Ptr RawTH3D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_GetMaximum" c_th3d_getmaximum 
+  :: (Ptr RawTH3D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetMaximumBin" c_th3d_getmaximumbin 
+  :: (Ptr RawTH3D) -> IO CInt
+foreign import ccall "HROOT.h TH3D_GetMaximumStored" c_th3d_getmaximumstored 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetMinimum" c_th3d_getminimum 
+  :: (Ptr RawTH3D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetMinimumBin" c_th3d_getminimumbin 
+  :: (Ptr RawTH3D) -> IO CInt
+foreign import ccall "HROOT.h TH3D_GetMinimumStored" c_th3d_getminimumstored 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetMean" c_th3d_getmean 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetMeanError" c_th3d_getmeanerror 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetNbinsX" c_th3d_getnbinsx 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetNbinsY" c_th3d_getnbinsy 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetNbinsZ" c_th3d_getnbinsz 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetQuantiles" c_th3d_getquantiles 
+  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3D_GetRandom" c_th3d_getrandom 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetStats" c_th3d_getstats 
+  :: (Ptr RawTH3D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_GetSumOfWeights" c_th3d_getsumofweights 
+  :: (Ptr RawTH3D) -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetSumw2" c_th3d_getsumw2 
+  :: (Ptr RawTH3D) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH3D_GetSumw2N" c_th3d_getsumw2n 
+  :: (Ptr RawTH3D) -> IO CInt
+foreign import ccall "HROOT.h TH3D_GetRMS" c_th3d_getrms 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetRMSError" c_th3d_getrmserror 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_GetSkewness" c_th3d_getskewness 
+  :: (Ptr RawTH3D) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3D_integral1" c_th3d_integral1 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3D_interpolate1" c_th3d_interpolate1 
+  :: (Ptr RawTH3D) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3D_interpolate2" c_th3d_interpolate2 
+  :: (Ptr RawTH3D) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3D_interpolate3" c_th3d_interpolate3 
+  :: (Ptr RawTH3D) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3D_KolmogorovTest" c_th3d_kolmogorovtest 
+  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3D_LabelsDeflate" c_th3d_labelsdeflate 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_LabelsInflate" c_th3d_labelsinflate 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_LabelsOption" c_th3d_labelsoption 
+  :: (Ptr RawTH3D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_multiflyF" c_th3d_multiflyf 
+  :: (Ptr RawTH3D) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_Multiply" c_th3d_multiply 
+  :: (Ptr RawTH3D) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_Paint" c_th3d_paint 
+  :: (Ptr RawTH3D) -> IO ()
+foreign import ccall "HROOT.h TH3D_PutStats" c_th3d_putstats 
+  :: (Ptr RawTH3D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_Rebin" c_th3d_rebin 
+  :: (Ptr RawTH3D) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3D_RebinAxis" c_th3d_rebinaxis 
+  :: (Ptr RawTH3D) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH3D_Rebuild" c_th3d_rebuild 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_RecursiveRemove" c_th3d_recursiveremove 
+  :: (Ptr RawTH3D) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH3D_Reset" c_th3d_reset 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_ResetStats" c_th3d_resetstats 
+  :: (Ptr RawTH3D) -> IO ()
+foreign import ccall "HROOT.h TH3D_Scale" c_th3d_scale 
+  :: (Ptr RawTH3D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_setAxisColorA" c_th3d_setaxiscolora 
+  :: (Ptr RawTH3D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetAxisRange" c_th3d_setaxisrange 
+  :: (Ptr RawTH3D) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetBarOffset" c_th3d_setbaroffset 
+  :: (Ptr RawTH3D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_SetBarWidth" c_th3d_setbarwidth 
+  :: (Ptr RawTH3D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_setBinContent1" c_th3d_setbincontent1 
+  :: (Ptr RawTH3D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_setBinContent2" c_th3d_setbincontent2 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_setBinContent3" c_th3d_setbincontent3 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_setBinError1" c_th3d_setbinerror1 
+  :: (Ptr RawTH3D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_setBinError2" c_th3d_setbinerror2 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_setBinError3" c_th3d_setbinerror3 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_setBins1" c_th3d_setbins1 
+  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_setBins2" c_th3d_setbins2 
+  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_setBins3" c_th3d_setbins3 
+  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_SetBinsLength" c_th3d_setbinslength 
+  :: (Ptr RawTH3D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3D_SetBuffer" c_th3d_setbuffer 
+  :: (Ptr RawTH3D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetCellContent" c_th3d_setcellcontent 
+  :: (Ptr RawTH3D) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_SetContent" c_th3d_setcontent 
+  :: (Ptr RawTH3D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_SetContour" c_th3d_setcontour 
+  :: (Ptr RawTH3D) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_SetContourLevel" c_th3d_setcontourlevel 
+  :: (Ptr RawTH3D) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_SetDirectory" c_th3d_setdirectory 
+  :: (Ptr RawTH3D) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3D_SetEntries" c_th3d_setentries 
+  :: (Ptr RawTH3D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_SetError" c_th3d_seterror 
+  :: (Ptr RawTH3D) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3D_setLabelColorA" c_th3d_setlabelcolora 
+  :: (Ptr RawTH3D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_setLabelSizeA" c_th3d_setlabelsizea 
+  :: (Ptr RawTH3D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_setLabelFontA" c_th3d_setlabelfonta 
+  :: (Ptr RawTH3D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_setLabelOffsetA" c_th3d_setlabeloffseta 
+  :: (Ptr RawTH3D) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetMaximum" c_th3d_setmaximum 
+  :: (Ptr RawTH3D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_SetMinimum" c_th3d_setminimum 
+  :: (Ptr RawTH3D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_SetNormFactor" c_th3d_setnormfactor 
+  :: (Ptr RawTH3D) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3D_SetStats" c_th3d_setstats 
+  :: (Ptr RawTH3D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3D_SetOption" c_th3d_setoption 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetXTitle" c_th3d_setxtitle 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetYTitle" c_th3d_setytitle 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetZTitle" c_th3d_setztitle 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_ShowBackground" c_th3d_showbackground 
+  :: (Ptr RawTH3D) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3D_ShowPeaks" c_th3d_showpeaks 
+  :: (Ptr RawTH3D) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3D_Smooth" c_th3d_smooth 
+  :: (Ptr RawTH3D) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_Sumw2" c_th3d_sumw2 
+  :: (Ptr RawTH3D) -> IO ()
+foreign import ccall "HROOT.h TH3D_SetName" c_th3d_setname 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetNameTitle" c_th3d_setnametitle 
+  :: (Ptr RawTH3D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetTitle" c_th3d_settitle 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_SetLineColor" c_th3d_setlinecolor 
+  :: (Ptr RawTH3D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3D_SetFillColor" c_th3d_setfillcolor 
+  :: (Ptr RawTH3D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3D_SetFillStyle" c_th3d_setfillstyle 
+  :: (Ptr RawTH3D) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3D_GetName" c_th3d_getname 
+  :: (Ptr RawTH3D) -> IO CString
+foreign import ccall "HROOT.h TH3D_Draw" c_th3d_draw 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_FindObject" c_th3d_findobject 
+  :: (Ptr RawTH3D) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH3D_SaveAs" c_th3d_saveas 
+  :: (Ptr RawTH3D) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_Write" c_th3d_write 
+  :: (Ptr RawTH3D) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3D_IsA" c_th3d_isa 
+  :: (Ptr RawTH3D) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH3D_printObj" c_th3d_printobj 
+  :: (Ptr RawTH3D) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3D_delete" c_th3d_delete 
+  :: (Ptr RawTH3D) -> IO ()
+
+foreign import ccall "HROOT.h TH3F_Add" c_th3f_add 
+  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_AddBinContent" c_th3f_addbincontent 
+  :: (Ptr RawTH3F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_Chi2Test" c_th3f_chi2test 
+  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_ComputeIntegral" c_th3f_computeintegral 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_DirectoryAutoAdd" c_th3f_directoryautoadd 
+  :: (Ptr RawTH3F) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3F_DistancetoPrimitive" c_th3f_distancetoprimitive 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3F_Divide" c_th3f_divide 
+  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_DrawCopy" c_th3f_drawcopy 
+  :: (Ptr RawTH3F) -> CString -> IO (Ptr RawTH3F)
+foreign import ccall "HROOT.h TH3F_DrawNormalized" c_th3f_drawnormalized 
+  :: (Ptr RawTH3F) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3F_DrawPanel" c_th3f_drawpanel 
+  :: (Ptr RawTH3F) -> IO ()
+foreign import ccall "HROOT.h TH3F_BufferEmpty" c_th3f_bufferempty 
+  :: (Ptr RawTH3F) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3F_Eval" c_th3f_eval 
+  :: (Ptr RawTH3F) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_ExecuteEvent" c_th3f_executeevent 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3F_FFT" c_th3f_fft 
+  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3F_fill1" c_th3f_fill1 
+  :: (Ptr RawTH3F) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3F_FillN" c_th3f_filln 
+  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3F_FillRandom" c_th3f_fillrandom 
+  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3F_FindBin" c_th3f_findbin 
+  :: (Ptr RawTH3F) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3F_FindFixBin" c_th3f_findfixbin 
+  :: (Ptr RawTH3F) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3F_FindFirstBinAbove" c_th3f_findfirstbinabove 
+  :: (Ptr RawTH3F) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3F_FindLastBinAbove" c_th3f_findlastbinabove 
+  :: (Ptr RawTH3F) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3F_FitPanel" c_th3f_fitpanel 
+  :: (Ptr RawTH3F) -> IO ()
+foreign import ccall "HROOT.h TH3F_getNdivisionA" c_th3f_getndivisiona 
+  :: (Ptr RawTH3F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3F_getAxisColorA" c_th3f_getaxiscolora 
+  :: (Ptr RawTH3F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3F_getLabelColorA" c_th3f_getlabelcolora 
+  :: (Ptr RawTH3F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3F_getLabelFontA" c_th3f_getlabelfonta 
+  :: (Ptr RawTH3F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3F_getLabelOffsetA" c_th3f_getlabeloffseta 
+  :: (Ptr RawTH3F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3F_getLabelSizeA" c_th3f_getlabelsizea 
+  :: (Ptr RawTH3F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3F_getTitleFontA" c_th3f_gettitlefonta 
+  :: (Ptr RawTH3F) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3F_getTitleOffsetA" c_th3f_gettitleoffseta 
+  :: (Ptr RawTH3F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3F_getTitleSizeA" c_th3f_gettitlesizea 
+  :: (Ptr RawTH3F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3F_getTickLengthA" c_th3f_getticklengtha 
+  :: (Ptr RawTH3F) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBarOffset" c_th3f_getbaroffset 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBarWidth" c_th3f_getbarwidth 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetContour" c_th3f_getcontour 
+  :: (Ptr RawTH3F) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3F_GetContourLevel" c_th3f_getcontourlevel 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetContourLevelPad" c_th3f_getcontourlevelpad 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBin" c_th3f_getbin 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3F_GetBinCenter" c_th3f_getbincenter 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBinContent1" c_th3f_getbincontent1 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBinContent2" c_th3f_getbincontent2 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBinContent3" c_th3f_getbincontent3 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBinError1" c_th3f_getbinerror1 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBinError2" c_th3f_getbinerror2 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBinError3" c_th3f_getbinerror3 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBinLowEdge" c_th3f_getbinlowedge 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetBinWidth" c_th3f_getbinwidth 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetCellContent" c_th3f_getcellcontent 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetCellError" c_th3f_getcellerror 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetEntries" c_th3f_getentries 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetEffectiveEntries" c_th3f_geteffectiveentries 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetFunction" c_th3f_getfunction 
+  :: (Ptr RawTH3F) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH3F_GetDimension" c_th3f_getdimension 
+  :: (Ptr RawTH3F) -> IO CInt
+foreign import ccall "HROOT.h TH3F_GetKurtosis" c_th3f_getkurtosis 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetLowEdge" c_th3f_getlowedge 
+  :: (Ptr RawTH3F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_GetMaximum" c_th3f_getmaximum 
+  :: (Ptr RawTH3F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetMaximumBin" c_th3f_getmaximumbin 
+  :: (Ptr RawTH3F) -> IO CInt
+foreign import ccall "HROOT.h TH3F_GetMaximumStored" c_th3f_getmaximumstored 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetMinimum" c_th3f_getminimum 
+  :: (Ptr RawTH3F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetMinimumBin" c_th3f_getminimumbin 
+  :: (Ptr RawTH3F) -> IO CInt
+foreign import ccall "HROOT.h TH3F_GetMinimumStored" c_th3f_getminimumstored 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetMean" c_th3f_getmean 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetMeanError" c_th3f_getmeanerror 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetNbinsX" c_th3f_getnbinsx 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetNbinsY" c_th3f_getnbinsy 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetNbinsZ" c_th3f_getnbinsz 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetQuantiles" c_th3f_getquantiles 
+  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3F_GetRandom" c_th3f_getrandom 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetStats" c_th3f_getstats 
+  :: (Ptr RawTH3F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_GetSumOfWeights" c_th3f_getsumofweights 
+  :: (Ptr RawTH3F) -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetSumw2" c_th3f_getsumw2 
+  :: (Ptr RawTH3F) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH3F_GetSumw2N" c_th3f_getsumw2n 
+  :: (Ptr RawTH3F) -> IO CInt
+foreign import ccall "HROOT.h TH3F_GetRMS" c_th3f_getrms 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetRMSError" c_th3f_getrmserror 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_GetSkewness" c_th3f_getskewness 
+  :: (Ptr RawTH3F) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3F_integral1" c_th3f_integral1 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3F_interpolate1" c_th3f_interpolate1 
+  :: (Ptr RawTH3F) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3F_interpolate2" c_th3f_interpolate2 
+  :: (Ptr RawTH3F) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3F_interpolate3" c_th3f_interpolate3 
+  :: (Ptr RawTH3F) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3F_KolmogorovTest" c_th3f_kolmogorovtest 
+  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3F_LabelsDeflate" c_th3f_labelsdeflate 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_LabelsInflate" c_th3f_labelsinflate 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_LabelsOption" c_th3f_labelsoption 
+  :: (Ptr RawTH3F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_multiflyF" c_th3f_multiflyf 
+  :: (Ptr RawTH3F) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_Multiply" c_th3f_multiply 
+  :: (Ptr RawTH3F) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_Paint" c_th3f_paint 
+  :: (Ptr RawTH3F) -> IO ()
+foreign import ccall "HROOT.h TH3F_PutStats" c_th3f_putstats 
+  :: (Ptr RawTH3F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_Rebin" c_th3f_rebin 
+  :: (Ptr RawTH3F) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3F_RebinAxis" c_th3f_rebinaxis 
+  :: (Ptr RawTH3F) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH3F_Rebuild" c_th3f_rebuild 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_RecursiveRemove" c_th3f_recursiveremove 
+  :: (Ptr RawTH3F) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH3F_Reset" c_th3f_reset 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_ResetStats" c_th3f_resetstats 
+  :: (Ptr RawTH3F) -> IO ()
+foreign import ccall "HROOT.h TH3F_Scale" c_th3f_scale 
+  :: (Ptr RawTH3F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_setAxisColorA" c_th3f_setaxiscolora 
+  :: (Ptr RawTH3F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetAxisRange" c_th3f_setaxisrange 
+  :: (Ptr RawTH3F) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetBarOffset" c_th3f_setbaroffset 
+  :: (Ptr RawTH3F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_SetBarWidth" c_th3f_setbarwidth 
+  :: (Ptr RawTH3F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_setBinContent1" c_th3f_setbincontent1 
+  :: (Ptr RawTH3F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_setBinContent2" c_th3f_setbincontent2 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_setBinContent3" c_th3f_setbincontent3 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_setBinError1" c_th3f_setbinerror1 
+  :: (Ptr RawTH3F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_setBinError2" c_th3f_setbinerror2 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_setBinError3" c_th3f_setbinerror3 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_setBins1" c_th3f_setbins1 
+  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_setBins2" c_th3f_setbins2 
+  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_setBins3" c_th3f_setbins3 
+  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_SetBinsLength" c_th3f_setbinslength 
+  :: (Ptr RawTH3F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3F_SetBuffer" c_th3f_setbuffer 
+  :: (Ptr RawTH3F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetCellContent" c_th3f_setcellcontent 
+  :: (Ptr RawTH3F) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_SetContent" c_th3f_setcontent 
+  :: (Ptr RawTH3F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_SetContour" c_th3f_setcontour 
+  :: (Ptr RawTH3F) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_SetContourLevel" c_th3f_setcontourlevel 
+  :: (Ptr RawTH3F) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_SetDirectory" c_th3f_setdirectory 
+  :: (Ptr RawTH3F) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3F_SetEntries" c_th3f_setentries 
+  :: (Ptr RawTH3F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_SetError" c_th3f_seterror 
+  :: (Ptr RawTH3F) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3F_setLabelColorA" c_th3f_setlabelcolora 
+  :: (Ptr RawTH3F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_setLabelSizeA" c_th3f_setlabelsizea 
+  :: (Ptr RawTH3F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_setLabelFontA" c_th3f_setlabelfonta 
+  :: (Ptr RawTH3F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_setLabelOffsetA" c_th3f_setlabeloffseta 
+  :: (Ptr RawTH3F) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetMaximum" c_th3f_setmaximum 
+  :: (Ptr RawTH3F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_SetMinimum" c_th3f_setminimum 
+  :: (Ptr RawTH3F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_SetNormFactor" c_th3f_setnormfactor 
+  :: (Ptr RawTH3F) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3F_SetStats" c_th3f_setstats 
+  :: (Ptr RawTH3F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3F_SetOption" c_th3f_setoption 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetXTitle" c_th3f_setxtitle 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetYTitle" c_th3f_setytitle 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetZTitle" c_th3f_setztitle 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_ShowBackground" c_th3f_showbackground 
+  :: (Ptr RawTH3F) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3F_ShowPeaks" c_th3f_showpeaks 
+  :: (Ptr RawTH3F) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3F_Smooth" c_th3f_smooth 
+  :: (Ptr RawTH3F) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_Sumw2" c_th3f_sumw2 
+  :: (Ptr RawTH3F) -> IO ()
+foreign import ccall "HROOT.h TH3F_SetName" c_th3f_setname 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetNameTitle" c_th3f_setnametitle 
+  :: (Ptr RawTH3F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetTitle" c_th3f_settitle 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_SetLineColor" c_th3f_setlinecolor 
+  :: (Ptr RawTH3F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3F_SetFillColor" c_th3f_setfillcolor 
+  :: (Ptr RawTH3F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3F_SetFillStyle" c_th3f_setfillstyle 
+  :: (Ptr RawTH3F) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3F_GetName" c_th3f_getname 
+  :: (Ptr RawTH3F) -> IO CString
+foreign import ccall "HROOT.h TH3F_Draw" c_th3f_draw 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_FindObject" c_th3f_findobject 
+  :: (Ptr RawTH3F) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH3F_SaveAs" c_th3f_saveas 
+  :: (Ptr RawTH3F) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_Write" c_th3f_write 
+  :: (Ptr RawTH3F) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3F_IsA" c_th3f_isa 
+  :: (Ptr RawTH3F) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH3F_printObj" c_th3f_printobj 
+  :: (Ptr RawTH3F) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3F_delete" c_th3f_delete 
+  :: (Ptr RawTH3F) -> IO ()
+
+foreign import ccall "HROOT.h TH3I_Add" c_th3i_add 
+  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_AddBinContent" c_th3i_addbincontent 
+  :: (Ptr RawTH3I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_Chi2Test" c_th3i_chi2test 
+  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_ComputeIntegral" c_th3i_computeintegral 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_DirectoryAutoAdd" c_th3i_directoryautoadd 
+  :: (Ptr RawTH3I) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3I_DistancetoPrimitive" c_th3i_distancetoprimitive 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3I_Divide" c_th3i_divide 
+  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_DrawCopy" c_th3i_drawcopy 
+  :: (Ptr RawTH3I) -> CString -> IO (Ptr RawTH3I)
+foreign import ccall "HROOT.h TH3I_DrawNormalized" c_th3i_drawnormalized 
+  :: (Ptr RawTH3I) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3I_DrawPanel" c_th3i_drawpanel 
+  :: (Ptr RawTH3I) -> IO ()
+foreign import ccall "HROOT.h TH3I_BufferEmpty" c_th3i_bufferempty 
+  :: (Ptr RawTH3I) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3I_Eval" c_th3i_eval 
+  :: (Ptr RawTH3I) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_ExecuteEvent" c_th3i_executeevent 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3I_FFT" c_th3i_fft 
+  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3I_fill1" c_th3i_fill1 
+  :: (Ptr RawTH3I) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3I_FillN" c_th3i_filln 
+  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3I_FillRandom" c_th3i_fillrandom 
+  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3I_FindBin" c_th3i_findbin 
+  :: (Ptr RawTH3I) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3I_FindFixBin" c_th3i_findfixbin 
+  :: (Ptr RawTH3I) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3I_FindFirstBinAbove" c_th3i_findfirstbinabove 
+  :: (Ptr RawTH3I) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3I_FindLastBinAbove" c_th3i_findlastbinabove 
+  :: (Ptr RawTH3I) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3I_FitPanel" c_th3i_fitpanel 
+  :: (Ptr RawTH3I) -> IO ()
+foreign import ccall "HROOT.h TH3I_getNdivisionA" c_th3i_getndivisiona 
+  :: (Ptr RawTH3I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3I_getAxisColorA" c_th3i_getaxiscolora 
+  :: (Ptr RawTH3I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3I_getLabelColorA" c_th3i_getlabelcolora 
+  :: (Ptr RawTH3I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3I_getLabelFontA" c_th3i_getlabelfonta 
+  :: (Ptr RawTH3I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3I_getLabelOffsetA" c_th3i_getlabeloffseta 
+  :: (Ptr RawTH3I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3I_getLabelSizeA" c_th3i_getlabelsizea 
+  :: (Ptr RawTH3I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3I_getTitleFontA" c_th3i_gettitlefonta 
+  :: (Ptr RawTH3I) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3I_getTitleOffsetA" c_th3i_gettitleoffseta 
+  :: (Ptr RawTH3I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3I_getTitleSizeA" c_th3i_gettitlesizea 
+  :: (Ptr RawTH3I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3I_getTickLengthA" c_th3i_getticklengtha 
+  :: (Ptr RawTH3I) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBarOffset" c_th3i_getbaroffset 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBarWidth" c_th3i_getbarwidth 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetContour" c_th3i_getcontour 
+  :: (Ptr RawTH3I) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3I_GetContourLevel" c_th3i_getcontourlevel 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetContourLevelPad" c_th3i_getcontourlevelpad 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBin" c_th3i_getbin 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3I_GetBinCenter" c_th3i_getbincenter 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBinContent1" c_th3i_getbincontent1 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBinContent2" c_th3i_getbincontent2 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBinContent3" c_th3i_getbincontent3 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBinError1" c_th3i_getbinerror1 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBinError2" c_th3i_getbinerror2 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBinError3" c_th3i_getbinerror3 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBinLowEdge" c_th3i_getbinlowedge 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetBinWidth" c_th3i_getbinwidth 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetCellContent" c_th3i_getcellcontent 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetCellError" c_th3i_getcellerror 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetEntries" c_th3i_getentries 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetEffectiveEntries" c_th3i_geteffectiveentries 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetFunction" c_th3i_getfunction 
+  :: (Ptr RawTH3I) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH3I_GetDimension" c_th3i_getdimension 
+  :: (Ptr RawTH3I) -> IO CInt
+foreign import ccall "HROOT.h TH3I_GetKurtosis" c_th3i_getkurtosis 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetLowEdge" c_th3i_getlowedge 
+  :: (Ptr RawTH3I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_GetMaximum" c_th3i_getmaximum 
+  :: (Ptr RawTH3I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetMaximumBin" c_th3i_getmaximumbin 
+  :: (Ptr RawTH3I) -> IO CInt
+foreign import ccall "HROOT.h TH3I_GetMaximumStored" c_th3i_getmaximumstored 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetMinimum" c_th3i_getminimum 
+  :: (Ptr RawTH3I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetMinimumBin" c_th3i_getminimumbin 
+  :: (Ptr RawTH3I) -> IO CInt
+foreign import ccall "HROOT.h TH3I_GetMinimumStored" c_th3i_getminimumstored 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetMean" c_th3i_getmean 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetMeanError" c_th3i_getmeanerror 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetNbinsX" c_th3i_getnbinsx 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetNbinsY" c_th3i_getnbinsy 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetNbinsZ" c_th3i_getnbinsz 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetQuantiles" c_th3i_getquantiles 
+  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3I_GetRandom" c_th3i_getrandom 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetStats" c_th3i_getstats 
+  :: (Ptr RawTH3I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_GetSumOfWeights" c_th3i_getsumofweights 
+  :: (Ptr RawTH3I) -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetSumw2" c_th3i_getsumw2 
+  :: (Ptr RawTH3I) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH3I_GetSumw2N" c_th3i_getsumw2n 
+  :: (Ptr RawTH3I) -> IO CInt
+foreign import ccall "HROOT.h TH3I_GetRMS" c_th3i_getrms 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetRMSError" c_th3i_getrmserror 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_GetSkewness" c_th3i_getskewness 
+  :: (Ptr RawTH3I) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3I_integral1" c_th3i_integral1 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3I_interpolate1" c_th3i_interpolate1 
+  :: (Ptr RawTH3I) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3I_interpolate2" c_th3i_interpolate2 
+  :: (Ptr RawTH3I) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3I_interpolate3" c_th3i_interpolate3 
+  :: (Ptr RawTH3I) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3I_KolmogorovTest" c_th3i_kolmogorovtest 
+  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3I_LabelsDeflate" c_th3i_labelsdeflate 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_LabelsInflate" c_th3i_labelsinflate 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_LabelsOption" c_th3i_labelsoption 
+  :: (Ptr RawTH3I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_multiflyF" c_th3i_multiflyf 
+  :: (Ptr RawTH3I) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_Multiply" c_th3i_multiply 
+  :: (Ptr RawTH3I) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_Paint" c_th3i_paint 
+  :: (Ptr RawTH3I) -> IO ()
+foreign import ccall "HROOT.h TH3I_PutStats" c_th3i_putstats 
+  :: (Ptr RawTH3I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_Rebin" c_th3i_rebin 
+  :: (Ptr RawTH3I) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3I_RebinAxis" c_th3i_rebinaxis 
+  :: (Ptr RawTH3I) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH3I_Rebuild" c_th3i_rebuild 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_RecursiveRemove" c_th3i_recursiveremove 
+  :: (Ptr RawTH3I) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH3I_Reset" c_th3i_reset 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_ResetStats" c_th3i_resetstats 
+  :: (Ptr RawTH3I) -> IO ()
+foreign import ccall "HROOT.h TH3I_Scale" c_th3i_scale 
+  :: (Ptr RawTH3I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_setAxisColorA" c_th3i_setaxiscolora 
+  :: (Ptr RawTH3I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetAxisRange" c_th3i_setaxisrange 
+  :: (Ptr RawTH3I) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetBarOffset" c_th3i_setbaroffset 
+  :: (Ptr RawTH3I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_SetBarWidth" c_th3i_setbarwidth 
+  :: (Ptr RawTH3I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_setBinContent1" c_th3i_setbincontent1 
+  :: (Ptr RawTH3I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_setBinContent2" c_th3i_setbincontent2 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_setBinContent3" c_th3i_setbincontent3 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_setBinError1" c_th3i_setbinerror1 
+  :: (Ptr RawTH3I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_setBinError2" c_th3i_setbinerror2 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_setBinError3" c_th3i_setbinerror3 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_setBins1" c_th3i_setbins1 
+  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_setBins2" c_th3i_setbins2 
+  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_setBins3" c_th3i_setbins3 
+  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_SetBinsLength" c_th3i_setbinslength 
+  :: (Ptr RawTH3I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3I_SetBuffer" c_th3i_setbuffer 
+  :: (Ptr RawTH3I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetCellContent" c_th3i_setcellcontent 
+  :: (Ptr RawTH3I) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_SetContent" c_th3i_setcontent 
+  :: (Ptr RawTH3I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_SetContour" c_th3i_setcontour 
+  :: (Ptr RawTH3I) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_SetContourLevel" c_th3i_setcontourlevel 
+  :: (Ptr RawTH3I) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_SetDirectory" c_th3i_setdirectory 
+  :: (Ptr RawTH3I) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3I_SetEntries" c_th3i_setentries 
+  :: (Ptr RawTH3I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_SetError" c_th3i_seterror 
+  :: (Ptr RawTH3I) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3I_setLabelColorA" c_th3i_setlabelcolora 
+  :: (Ptr RawTH3I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_setLabelSizeA" c_th3i_setlabelsizea 
+  :: (Ptr RawTH3I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_setLabelFontA" c_th3i_setlabelfonta 
+  :: (Ptr RawTH3I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_setLabelOffsetA" c_th3i_setlabeloffseta 
+  :: (Ptr RawTH3I) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetMaximum" c_th3i_setmaximum 
+  :: (Ptr RawTH3I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_SetMinimum" c_th3i_setminimum 
+  :: (Ptr RawTH3I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_SetNormFactor" c_th3i_setnormfactor 
+  :: (Ptr RawTH3I) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3I_SetStats" c_th3i_setstats 
+  :: (Ptr RawTH3I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3I_SetOption" c_th3i_setoption 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetXTitle" c_th3i_setxtitle 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetYTitle" c_th3i_setytitle 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetZTitle" c_th3i_setztitle 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_ShowBackground" c_th3i_showbackground 
+  :: (Ptr RawTH3I) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3I_ShowPeaks" c_th3i_showpeaks 
+  :: (Ptr RawTH3I) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3I_Smooth" c_th3i_smooth 
+  :: (Ptr RawTH3I) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_Sumw2" c_th3i_sumw2 
+  :: (Ptr RawTH3I) -> IO ()
+foreign import ccall "HROOT.h TH3I_SetName" c_th3i_setname 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetNameTitle" c_th3i_setnametitle 
+  :: (Ptr RawTH3I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetTitle" c_th3i_settitle 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_SetLineColor" c_th3i_setlinecolor 
+  :: (Ptr RawTH3I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3I_SetFillColor" c_th3i_setfillcolor 
+  :: (Ptr RawTH3I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3I_SetFillStyle" c_th3i_setfillstyle 
+  :: (Ptr RawTH3I) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3I_GetName" c_th3i_getname 
+  :: (Ptr RawTH3I) -> IO CString
+foreign import ccall "HROOT.h TH3I_Draw" c_th3i_draw 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_FindObject" c_th3i_findobject 
+  :: (Ptr RawTH3I) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH3I_SaveAs" c_th3i_saveas 
+  :: (Ptr RawTH3I) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_Write" c_th3i_write 
+  :: (Ptr RawTH3I) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3I_IsA" c_th3i_isa 
+  :: (Ptr RawTH3I) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH3I_printObj" c_th3i_printobj 
+  :: (Ptr RawTH3I) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3I_delete" c_th3i_delete 
+  :: (Ptr RawTH3I) -> IO ()
+
+foreign import ccall "HROOT.h TH3S_Add" c_th3s_add 
+  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_AddBinContent" c_th3s_addbincontent 
+  :: (Ptr RawTH3S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_Chi2Test" c_th3s_chi2test 
+  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CString -> (Ptr CDouble) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_ComputeIntegral" c_th3s_computeintegral 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_DirectoryAutoAdd" c_th3s_directoryautoadd 
+  :: (Ptr RawTH3S) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3S_DistancetoPrimitive" c_th3s_distancetoprimitive 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3S_Divide" c_th3s_divide 
+  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> (Ptr RawTH2) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_DrawCopy" c_th3s_drawcopy 
+  :: (Ptr RawTH3S) -> CString -> IO (Ptr RawTH3S)
+foreign import ccall "HROOT.h TH3S_DrawNormalized" c_th3s_drawnormalized 
+  :: (Ptr RawTH3S) -> CString -> CDouble -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3S_DrawPanel" c_th3s_drawpanel 
+  :: (Ptr RawTH3S) -> IO ()
+foreign import ccall "HROOT.h TH3S_BufferEmpty" c_th3s_bufferempty 
+  :: (Ptr RawTH3S) -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3S_Eval" c_th3s_eval 
+  :: (Ptr RawTH3S) -> (Ptr RawTF1) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_ExecuteEvent" c_th3s_executeevent 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3S_FFT" c_th3s_fft 
+  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3S_fill1" c_th3s_fill1 
+  :: (Ptr RawTH3S) -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3S_FillN" c_th3s_filln 
+  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3S_FillRandom" c_th3s_fillrandom 
+  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3S_FindBin" c_th3s_findbin 
+  :: (Ptr RawTH3S) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3S_FindFixBin" c_th3s_findfixbin 
+  :: (Ptr RawTH3S) -> CDouble -> CDouble -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3S_FindFirstBinAbove" c_th3s_findfirstbinabove 
+  :: (Ptr RawTH3S) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3S_FindLastBinAbove" c_th3s_findlastbinabove 
+  :: (Ptr RawTH3S) -> CDouble -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3S_FitPanel" c_th3s_fitpanel 
+  :: (Ptr RawTH3S) -> IO ()
+foreign import ccall "HROOT.h TH3S_getNdivisionA" c_th3s_getndivisiona 
+  :: (Ptr RawTH3S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3S_getAxisColorA" c_th3s_getaxiscolora 
+  :: (Ptr RawTH3S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3S_getLabelColorA" c_th3s_getlabelcolora 
+  :: (Ptr RawTH3S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3S_getLabelFontA" c_th3s_getlabelfonta 
+  :: (Ptr RawTH3S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3S_getLabelOffsetA" c_th3s_getlabeloffseta 
+  :: (Ptr RawTH3S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3S_getLabelSizeA" c_th3s_getlabelsizea 
+  :: (Ptr RawTH3S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3S_getTitleFontA" c_th3s_gettitlefonta 
+  :: (Ptr RawTH3S) -> CString -> IO CInt
+foreign import ccall "HROOT.h TH3S_getTitleOffsetA" c_th3s_gettitleoffseta 
+  :: (Ptr RawTH3S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3S_getTitleSizeA" c_th3s_gettitlesizea 
+  :: (Ptr RawTH3S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3S_getTickLengthA" c_th3s_getticklengtha 
+  :: (Ptr RawTH3S) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBarOffset" c_th3s_getbaroffset 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBarWidth" c_th3s_getbarwidth 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetContour" c_th3s_getcontour 
+  :: (Ptr RawTH3S) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3S_GetContourLevel" c_th3s_getcontourlevel 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetContourLevelPad" c_th3s_getcontourlevelpad 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBin" c_th3s_getbin 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3S_GetBinCenter" c_th3s_getbincenter 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBinContent1" c_th3s_getbincontent1 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBinContent2" c_th3s_getbincontent2 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBinContent3" c_th3s_getbincontent3 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBinError1" c_th3s_getbinerror1 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBinError2" c_th3s_getbinerror2 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBinError3" c_th3s_getbinerror3 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBinLowEdge" c_th3s_getbinlowedge 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetBinWidth" c_th3s_getbinwidth 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetCellContent" c_th3s_getcellcontent 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetCellError" c_th3s_getcellerror 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetEntries" c_th3s_getentries 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetEffectiveEntries" c_th3s_geteffectiveentries 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetFunction" c_th3s_getfunction 
+  :: (Ptr RawTH3S) -> CString -> IO (Ptr RawTF1)
+foreign import ccall "HROOT.h TH3S_GetDimension" c_th3s_getdimension 
+  :: (Ptr RawTH3S) -> IO CInt
+foreign import ccall "HROOT.h TH3S_GetKurtosis" c_th3s_getkurtosis 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetLowEdge" c_th3s_getlowedge 
+  :: (Ptr RawTH3S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_GetMaximum" c_th3s_getmaximum 
+  :: (Ptr RawTH3S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetMaximumBin" c_th3s_getmaximumbin 
+  :: (Ptr RawTH3S) -> IO CInt
+foreign import ccall "HROOT.h TH3S_GetMaximumStored" c_th3s_getmaximumstored 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetMinimum" c_th3s_getminimum 
+  :: (Ptr RawTH3S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetMinimumBin" c_th3s_getminimumbin 
+  :: (Ptr RawTH3S) -> IO CInt
+foreign import ccall "HROOT.h TH3S_GetMinimumStored" c_th3s_getminimumstored 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetMean" c_th3s_getmean 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetMeanError" c_th3s_getmeanerror 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetNbinsX" c_th3s_getnbinsx 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetNbinsY" c_th3s_getnbinsy 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetNbinsZ" c_th3s_getnbinsz 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetQuantiles" c_th3s_getquantiles 
+  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> (Ptr CDouble) -> IO CInt
+foreign import ccall "HROOT.h TH3S_GetRandom" c_th3s_getrandom 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetStats" c_th3s_getstats 
+  :: (Ptr RawTH3S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_GetSumOfWeights" c_th3s_getsumofweights 
+  :: (Ptr RawTH3S) -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetSumw2" c_th3s_getsumw2 
+  :: (Ptr RawTH3S) -> IO (Ptr RawTArrayD)
+foreign import ccall "HROOT.h TH3S_GetSumw2N" c_th3s_getsumw2n 
+  :: (Ptr RawTH3S) -> IO CInt
+foreign import ccall "HROOT.h TH3S_GetRMS" c_th3s_getrms 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetRMSError" c_th3s_getrmserror 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_GetSkewness" c_th3s_getskewness 
+  :: (Ptr RawTH3S) -> CInt -> IO CDouble
+foreign import ccall "HROOT.h TH3S_integral1" c_th3s_integral1 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3S_interpolate1" c_th3s_interpolate1 
+  :: (Ptr RawTH3S) -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3S_interpolate2" c_th3s_interpolate2 
+  :: (Ptr RawTH3S) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3S_interpolate3" c_th3s_interpolate3 
+  :: (Ptr RawTH3S) -> CDouble -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TH3S_KolmogorovTest" c_th3s_kolmogorovtest 
+  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> CString -> IO CDouble
+foreign import ccall "HROOT.h TH3S_LabelsDeflate" c_th3s_labelsdeflate 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_LabelsInflate" c_th3s_labelsinflate 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_LabelsOption" c_th3s_labelsoption 
+  :: (Ptr RawTH3S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_multiflyF" c_th3s_multiflyf 
+  :: (Ptr RawTH3S) -> (Ptr RawTF1) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_Multiply" c_th3s_multiply 
+  :: (Ptr RawTH3S) -> (Ptr RawTH1) -> (Ptr RawTH1) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_Paint" c_th3s_paint 
+  :: (Ptr RawTH3S) -> IO ()
+foreign import ccall "HROOT.h TH3S_PutStats" c_th3s_putstats 
+  :: (Ptr RawTH3S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_Rebin" c_th3s_rebin 
+  :: (Ptr RawTH3S) -> CInt -> CString -> (Ptr CDouble) -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3S_RebinAxis" c_th3s_rebinaxis 
+  :: (Ptr RawTH3S) -> CDouble -> (Ptr RawTAxis) -> IO ()
+foreign import ccall "HROOT.h TH3S_Rebuild" c_th3s_rebuild 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_RecursiveRemove" c_th3s_recursiveremove 
+  :: (Ptr RawTH3S) -> (Ptr RawTObject) -> IO ()
+foreign import ccall "HROOT.h TH3S_Reset" c_th3s_reset 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_ResetStats" c_th3s_resetstats 
+  :: (Ptr RawTH3S) -> IO ()
+foreign import ccall "HROOT.h TH3S_Scale" c_th3s_scale 
+  :: (Ptr RawTH3S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_setAxisColorA" c_th3s_setaxiscolora 
+  :: (Ptr RawTH3S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetAxisRange" c_th3s_setaxisrange 
+  :: (Ptr RawTH3S) -> CDouble -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetBarOffset" c_th3s_setbaroffset 
+  :: (Ptr RawTH3S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_SetBarWidth" c_th3s_setbarwidth 
+  :: (Ptr RawTH3S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_setBinContent1" c_th3s_setbincontent1 
+  :: (Ptr RawTH3S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_setBinContent2" c_th3s_setbincontent2 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_setBinContent3" c_th3s_setbincontent3 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_setBinError1" c_th3s_setbinerror1 
+  :: (Ptr RawTH3S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_setBinError2" c_th3s_setbinerror2 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_setBinError3" c_th3s_setbinerror3 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_setBins1" c_th3s_setbins1 
+  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_setBins2" c_th3s_setbins2 
+  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_setBins3" c_th3s_setbins3 
+  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_SetBinsLength" c_th3s_setbinslength 
+  :: (Ptr RawTH3S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3S_SetBuffer" c_th3s_setbuffer 
+  :: (Ptr RawTH3S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetCellContent" c_th3s_setcellcontent 
+  :: (Ptr RawTH3S) -> CInt -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_SetContent" c_th3s_setcontent 
+  :: (Ptr RawTH3S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_SetContour" c_th3s_setcontour 
+  :: (Ptr RawTH3S) -> CInt -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_SetContourLevel" c_th3s_setcontourlevel 
+  :: (Ptr RawTH3S) -> CInt -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_SetDirectory" c_th3s_setdirectory 
+  :: (Ptr RawTH3S) -> (Ptr RawTDirectory) -> IO ()
+foreign import ccall "HROOT.h TH3S_SetEntries" c_th3s_setentries 
+  :: (Ptr RawTH3S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_SetError" c_th3s_seterror 
+  :: (Ptr RawTH3S) -> (Ptr CDouble) -> IO ()
+foreign import ccall "HROOT.h TH3S_setLabelColorA" c_th3s_setlabelcolora 
+  :: (Ptr RawTH3S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_setLabelSizeA" c_th3s_setlabelsizea 
+  :: (Ptr RawTH3S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_setLabelFontA" c_th3s_setlabelfonta 
+  :: (Ptr RawTH3S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_setLabelOffsetA" c_th3s_setlabeloffseta 
+  :: (Ptr RawTH3S) -> CDouble -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetMaximum" c_th3s_setmaximum 
+  :: (Ptr RawTH3S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_SetMinimum" c_th3s_setminimum 
+  :: (Ptr RawTH3S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_SetNormFactor" c_th3s_setnormfactor 
+  :: (Ptr RawTH3S) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TH3S_SetStats" c_th3s_setstats 
+  :: (Ptr RawTH3S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3S_SetOption" c_th3s_setoption 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetXTitle" c_th3s_setxtitle 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetYTitle" c_th3s_setytitle 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetZTitle" c_th3s_setztitle 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_ShowBackground" c_th3s_showbackground 
+  :: (Ptr RawTH3S) -> CInt -> CString -> IO (Ptr RawTH1)
+foreign import ccall "HROOT.h TH3S_ShowPeaks" c_th3s_showpeaks 
+  :: (Ptr RawTH3S) -> CDouble -> CString -> CDouble -> IO CInt
+foreign import ccall "HROOT.h TH3S_Smooth" c_th3s_smooth 
+  :: (Ptr RawTH3S) -> CInt -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_Sumw2" c_th3s_sumw2 
+  :: (Ptr RawTH3S) -> IO ()
+foreign import ccall "HROOT.h TH3S_SetName" c_th3s_setname 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetNameTitle" c_th3s_setnametitle 
+  :: (Ptr RawTH3S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetTitle" c_th3s_settitle 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_SetLineColor" c_th3s_setlinecolor 
+  :: (Ptr RawTH3S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3S_SetFillColor" c_th3s_setfillcolor 
+  :: (Ptr RawTH3S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3S_SetFillStyle" c_th3s_setfillstyle 
+  :: (Ptr RawTH3S) -> CInt -> IO ()
+foreign import ccall "HROOT.h TH3S_GetName" c_th3s_getname 
+  :: (Ptr RawTH3S) -> IO CString
+foreign import ccall "HROOT.h TH3S_Draw" c_th3s_draw 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_FindObject" c_th3s_findobject 
+  :: (Ptr RawTH3S) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TH3S_SaveAs" c_th3s_saveas 
+  :: (Ptr RawTH3S) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_Write" c_th3s_write 
+  :: (Ptr RawTH3S) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TH3S_IsA" c_th3s_isa 
+  :: (Ptr RawTH3S) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TH3S_printObj" c_th3s_printobj 
+  :: (Ptr RawTH3S) -> CString -> IO ()
+foreign import ccall "HROOT.h TH3S_delete" c_th3s_delete 
+  :: (Ptr RawTH3S) -> IO ()
+
+foreign import ccall "HROOT.h TQObject_delete" c_tqobject_delete 
+  :: (Ptr RawTQObject) -> IO ()
+
+foreign import ccall "HROOT.h TVirtualPad_GetName" c_tvirtualpad_getname 
+  :: (Ptr RawTVirtualPad) -> IO CString
+foreign import ccall "HROOT.h TVirtualPad_Draw" c_tvirtualpad_draw 
+  :: (Ptr RawTVirtualPad) -> CString -> IO ()
+foreign import ccall "HROOT.h TVirtualPad_FindObject" c_tvirtualpad_findobject 
+  :: (Ptr RawTVirtualPad) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TVirtualPad_SaveAs" c_tvirtualpad_saveas 
+  :: (Ptr RawTVirtualPad) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TVirtualPad_Write" c_tvirtualpad_write 
+  :: (Ptr RawTVirtualPad) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TVirtualPad_IsA" c_tvirtualpad_isa 
+  :: (Ptr RawTVirtualPad) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TVirtualPad_printObj" c_tvirtualpad_printobj 
+  :: (Ptr RawTVirtualPad) -> CString -> IO ()
+foreign import ccall "HROOT.h TVirtualPad_SetLineColor" c_tvirtualpad_setlinecolor 
+  :: (Ptr RawTVirtualPad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TVirtualPad_SetFillColor" c_tvirtualpad_setfillcolor 
+  :: (Ptr RawTVirtualPad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TVirtualPad_SetFillStyle" c_tvirtualpad_setfillstyle 
+  :: (Ptr RawTVirtualPad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TVirtualPad_delete" c_tvirtualpad_delete 
+  :: (Ptr RawTVirtualPad) -> IO ()
+foreign import ccall "HROOT.h TVirtualPad_GetFrame" c_tvirtualpad_getframe 
+  :: (Ptr RawTVirtualPad) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TVirtualPad_Range" c_tvirtualpad_range 
+  :: (Ptr RawTVirtualPad) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+
+foreign import ccall "HROOT.h TPad_GetFrame" c_tpad_getframe 
+  :: (Ptr RawTPad) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TPad_Range" c_tpad_range 
+  :: (Ptr RawTPad) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+foreign import ccall "HROOT.h TPad_GetName" c_tpad_getname 
+  :: (Ptr RawTPad) -> IO CString
+foreign import ccall "HROOT.h TPad_Draw" c_tpad_draw 
+  :: (Ptr RawTPad) -> CString -> IO ()
+foreign import ccall "HROOT.h TPad_FindObject" c_tpad_findobject 
+  :: (Ptr RawTPad) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TPad_SaveAs" c_tpad_saveas 
+  :: (Ptr RawTPad) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TPad_Write" c_tpad_write 
+  :: (Ptr RawTPad) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TPad_IsA" c_tpad_isa 
+  :: (Ptr RawTPad) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TPad_printObj" c_tpad_printobj 
+  :: (Ptr RawTPad) -> CString -> IO ()
+foreign import ccall "HROOT.h TPad_SetLineColor" c_tpad_setlinecolor 
+  :: (Ptr RawTPad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPad_SetFillColor" c_tpad_setfillcolor 
+  :: (Ptr RawTPad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPad_SetFillStyle" c_tpad_setfillstyle 
+  :: (Ptr RawTPad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TPad_delete" c_tpad_delete 
+  :: (Ptr RawTPad) -> IO ()
+
+foreign import ccall "HROOT.h TButton_SetTextColor" c_tbutton_settextcolor 
+  :: (Ptr RawTButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TButton_SetTextAlign" c_tbutton_settextalign 
+  :: (Ptr RawTButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TButton_SetTextSize" c_tbutton_settextsize 
+  :: (Ptr RawTButton) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TButton_GetFrame" c_tbutton_getframe 
+  :: (Ptr RawTButton) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TButton_Range" c_tbutton_range 
+  :: (Ptr RawTButton) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+foreign import ccall "HROOT.h TButton_GetName" c_tbutton_getname 
+  :: (Ptr RawTButton) -> IO CString
+foreign import ccall "HROOT.h TButton_Draw" c_tbutton_draw 
+  :: (Ptr RawTButton) -> CString -> IO ()
+foreign import ccall "HROOT.h TButton_FindObject" c_tbutton_findobject 
+  :: (Ptr RawTButton) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TButton_SaveAs" c_tbutton_saveas 
+  :: (Ptr RawTButton) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TButton_Write" c_tbutton_write 
+  :: (Ptr RawTButton) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TButton_IsA" c_tbutton_isa 
+  :: (Ptr RawTButton) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TButton_printObj" c_tbutton_printobj 
+  :: (Ptr RawTButton) -> CString -> IO ()
+foreign import ccall "HROOT.h TButton_SetLineColor" c_tbutton_setlinecolor 
+  :: (Ptr RawTButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TButton_SetFillColor" c_tbutton_setfillcolor 
+  :: (Ptr RawTButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TButton_SetFillStyle" c_tbutton_setfillstyle 
+  :: (Ptr RawTButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TButton_delete" c_tbutton_delete 
+  :: (Ptr RawTButton) -> IO ()
+
+foreign import ccall "HROOT.h TGroupButton_SetTextColor" c_tgroupbutton_settextcolor 
+  :: (Ptr RawTGroupButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGroupButton_SetTextAlign" c_tgroupbutton_settextalign 
+  :: (Ptr RawTGroupButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGroupButton_SetTextSize" c_tgroupbutton_settextsize 
+  :: (Ptr RawTGroupButton) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TGroupButton_GetFrame" c_tgroupbutton_getframe 
+  :: (Ptr RawTGroupButton) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TGroupButton_Range" c_tgroupbutton_range 
+  :: (Ptr RawTGroupButton) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+foreign import ccall "HROOT.h TGroupButton_GetName" c_tgroupbutton_getname 
+  :: (Ptr RawTGroupButton) -> IO CString
+foreign import ccall "HROOT.h TGroupButton_Draw" c_tgroupbutton_draw 
+  :: (Ptr RawTGroupButton) -> CString -> IO ()
+foreign import ccall "HROOT.h TGroupButton_FindObject" c_tgroupbutton_findobject 
+  :: (Ptr RawTGroupButton) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TGroupButton_SaveAs" c_tgroupbutton_saveas 
+  :: (Ptr RawTGroupButton) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TGroupButton_Write" c_tgroupbutton_write 
+  :: (Ptr RawTGroupButton) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TGroupButton_IsA" c_tgroupbutton_isa 
+  :: (Ptr RawTGroupButton) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TGroupButton_printObj" c_tgroupbutton_printobj 
+  :: (Ptr RawTGroupButton) -> CString -> IO ()
+foreign import ccall "HROOT.h TGroupButton_SetLineColor" c_tgroupbutton_setlinecolor 
+  :: (Ptr RawTGroupButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGroupButton_SetFillColor" c_tgroupbutton_setfillcolor 
+  :: (Ptr RawTGroupButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGroupButton_SetFillStyle" c_tgroupbutton_setfillstyle 
+  :: (Ptr RawTGroupButton) -> CInt -> IO ()
+foreign import ccall "HROOT.h TGroupButton_delete" c_tgroupbutton_delete 
+  :: (Ptr RawTGroupButton) -> IO ()
+
+foreign import ccall "HROOT.h TCanvas_GetFrame" c_tcanvas_getframe 
+  :: (Ptr RawTCanvas) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TCanvas_Range" c_tcanvas_range 
+  :: (Ptr RawTCanvas) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+foreign import ccall "HROOT.h TCanvas_GetName" c_tcanvas_getname 
+  :: (Ptr RawTCanvas) -> IO CString
+foreign import ccall "HROOT.h TCanvas_Draw" c_tcanvas_draw 
+  :: (Ptr RawTCanvas) -> CString -> IO ()
+foreign import ccall "HROOT.h TCanvas_FindObject" c_tcanvas_findobject 
+  :: (Ptr RawTCanvas) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TCanvas_SaveAs" c_tcanvas_saveas 
+  :: (Ptr RawTCanvas) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TCanvas_Write" c_tcanvas_write 
+  :: (Ptr RawTCanvas) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TCanvas_IsA" c_tcanvas_isa 
+  :: (Ptr RawTCanvas) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TCanvas_printObj" c_tcanvas_printobj 
+  :: (Ptr RawTCanvas) -> CString -> IO ()
+foreign import ccall "HROOT.h TCanvas_SetLineColor" c_tcanvas_setlinecolor 
+  :: (Ptr RawTCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCanvas_SetFillColor" c_tcanvas_setfillcolor 
+  :: (Ptr RawTCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCanvas_SetFillStyle" c_tcanvas_setfillstyle 
+  :: (Ptr RawTCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TCanvas_delete" c_tcanvas_delete 
+  :: (Ptr RawTCanvas) -> IO ()
+foreign import ccall "HROOT.h TCanvas_newTCanvas" c_tcanvas_newtcanvas 
+  :: CString -> CString -> CInt -> CInt -> IO (Ptr RawTCanvas)
+
+foreign import ccall "HROOT.h TDialogCanvas_SetTextColor" c_tdialogcanvas_settextcolor 
+  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_SetTextAlign" c_tdialogcanvas_settextalign 
+  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_SetTextSize" c_tdialogcanvas_settextsize 
+  :: (Ptr RawTDialogCanvas) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_GetFrame" c_tdialogcanvas_getframe 
+  :: (Ptr RawTDialogCanvas) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TDialogCanvas_Range" c_tdialogcanvas_range 
+  :: (Ptr RawTDialogCanvas) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_GetName" c_tdialogcanvas_getname 
+  :: (Ptr RawTDialogCanvas) -> IO CString
+foreign import ccall "HROOT.h TDialogCanvas_Draw" c_tdialogcanvas_draw 
+  :: (Ptr RawTDialogCanvas) -> CString -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_FindObject" c_tdialogcanvas_findobject 
+  :: (Ptr RawTDialogCanvas) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TDialogCanvas_SaveAs" c_tdialogcanvas_saveas 
+  :: (Ptr RawTDialogCanvas) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_Write" c_tdialogcanvas_write 
+  :: (Ptr RawTDialogCanvas) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TDialogCanvas_IsA" c_tdialogcanvas_isa 
+  :: (Ptr RawTDialogCanvas) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TDialogCanvas_printObj" c_tdialogcanvas_printobj 
+  :: (Ptr RawTDialogCanvas) -> CString -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_SetLineColor" c_tdialogcanvas_setlinecolor 
+  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_SetFillColor" c_tdialogcanvas_setfillcolor 
+  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_SetFillStyle" c_tdialogcanvas_setfillstyle 
+  :: (Ptr RawTDialogCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TDialogCanvas_delete" c_tdialogcanvas_delete 
+  :: (Ptr RawTDialogCanvas) -> IO ()
+
+foreign import ccall "HROOT.h TInspectCanvas_SetTextColor" c_tinspectcanvas_settextcolor 
+  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_SetTextAlign" c_tinspectcanvas_settextalign 
+  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_SetTextSize" c_tinspectcanvas_settextsize 
+  :: (Ptr RawTInspectCanvas) -> CDouble -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_GetFrame" c_tinspectcanvas_getframe 
+  :: (Ptr RawTInspectCanvas) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TInspectCanvas_Range" c_tinspectcanvas_range 
+  :: (Ptr RawTInspectCanvas) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_GetName" c_tinspectcanvas_getname 
+  :: (Ptr RawTInspectCanvas) -> IO CString
+foreign import ccall "HROOT.h TInspectCanvas_Draw" c_tinspectcanvas_draw 
+  :: (Ptr RawTInspectCanvas) -> CString -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_FindObject" c_tinspectcanvas_findobject 
+  :: (Ptr RawTInspectCanvas) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TInspectCanvas_SaveAs" c_tinspectcanvas_saveas 
+  :: (Ptr RawTInspectCanvas) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_Write" c_tinspectcanvas_write 
+  :: (Ptr RawTInspectCanvas) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TInspectCanvas_IsA" c_tinspectcanvas_isa 
+  :: (Ptr RawTInspectCanvas) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TInspectCanvas_printObj" c_tinspectcanvas_printobj 
+  :: (Ptr RawTInspectCanvas) -> CString -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_SetLineColor" c_tinspectcanvas_setlinecolor 
+  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_SetFillColor" c_tinspectcanvas_setfillcolor 
+  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_SetFillStyle" c_tinspectcanvas_setfillstyle 
+  :: (Ptr RawTInspectCanvas) -> CInt -> IO ()
+foreign import ccall "HROOT.h TInspectCanvas_delete" c_tinspectcanvas_delete 
+  :: (Ptr RawTInspectCanvas) -> IO ()
+
+foreign import ccall "HROOT.h TEvePad_GetFrame" c_tevepad_getframe 
+  :: (Ptr RawTEvePad) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TEvePad_Range" c_tevepad_range 
+  :: (Ptr RawTEvePad) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+foreign import ccall "HROOT.h TEvePad_GetName" c_tevepad_getname 
+  :: (Ptr RawTEvePad) -> IO CString
+foreign import ccall "HROOT.h TEvePad_Draw" c_tevepad_draw 
+  :: (Ptr RawTEvePad) -> CString -> IO ()
+foreign import ccall "HROOT.h TEvePad_FindObject" c_tevepad_findobject 
+  :: (Ptr RawTEvePad) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TEvePad_SaveAs" c_tevepad_saveas 
+  :: (Ptr RawTEvePad) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TEvePad_Write" c_tevepad_write 
+  :: (Ptr RawTEvePad) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TEvePad_IsA" c_tevepad_isa 
+  :: (Ptr RawTEvePad) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TEvePad_printObj" c_tevepad_printobj 
+  :: (Ptr RawTEvePad) -> CString -> IO ()
+foreign import ccall "HROOT.h TEvePad_SetLineColor" c_tevepad_setlinecolor 
+  :: (Ptr RawTEvePad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEvePad_SetFillColor" c_tevepad_setfillcolor 
+  :: (Ptr RawTEvePad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEvePad_SetFillStyle" c_tevepad_setfillstyle 
+  :: (Ptr RawTEvePad) -> CInt -> IO ()
+foreign import ccall "HROOT.h TEvePad_delete" c_tevepad_delete 
+  :: (Ptr RawTEvePad) -> IO ()
+
+foreign import ccall "HROOT.h TSlider_GetFrame" c_tslider_getframe 
+  :: (Ptr RawTSlider) -> IO (Ptr RawTFrame)
+foreign import ccall "HROOT.h TSlider_Range" c_tslider_range 
+  :: (Ptr RawTSlider) -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
+foreign import ccall "HROOT.h TSlider_GetName" c_tslider_getname 
+  :: (Ptr RawTSlider) -> IO CString
+foreign import ccall "HROOT.h TSlider_Draw" c_tslider_draw 
+  :: (Ptr RawTSlider) -> CString -> IO ()
+foreign import ccall "HROOT.h TSlider_FindObject" c_tslider_findobject 
+  :: (Ptr RawTSlider) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TSlider_SaveAs" c_tslider_saveas 
+  :: (Ptr RawTSlider) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TSlider_Write" c_tslider_write 
+  :: (Ptr RawTSlider) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TSlider_IsA" c_tslider_isa 
+  :: (Ptr RawTSlider) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TSlider_printObj" c_tslider_printobj 
+  :: (Ptr RawTSlider) -> CString -> IO ()
+foreign import ccall "HROOT.h TSlider_SetLineColor" c_tslider_setlinecolor 
+  :: (Ptr RawTSlider) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSlider_SetFillColor" c_tslider_setfillcolor 
+  :: (Ptr RawTSlider) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSlider_SetFillStyle" c_tslider_setfillstyle 
+  :: (Ptr RawTSlider) -> CInt -> IO ()
+foreign import ccall "HROOT.h TSlider_delete" c_tslider_delete 
+  :: (Ptr RawTSlider) -> IO ()
+
+foreign import ccall "HROOT.h TApplication_GetName" c_tapplication_getname 
+  :: (Ptr RawTApplication) -> IO CString
+foreign import ccall "HROOT.h TApplication_Draw" c_tapplication_draw 
+  :: (Ptr RawTApplication) -> CString -> IO ()
+foreign import ccall "HROOT.h TApplication_FindObject" c_tapplication_findobject 
+  :: (Ptr RawTApplication) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TApplication_SaveAs" c_tapplication_saveas 
+  :: (Ptr RawTApplication) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TApplication_Write" c_tapplication_write 
+  :: (Ptr RawTApplication) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TApplication_IsA" c_tapplication_isa 
+  :: (Ptr RawTApplication) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TApplication_printObj" c_tapplication_printobj 
+  :: (Ptr RawTApplication) -> CString -> IO ()
+foreign import ccall "HROOT.h TApplication_delete" c_tapplication_delete 
+  :: (Ptr RawTApplication) -> IO ()
+foreign import ccall "HROOT.h TApplication_newTApplication" c_tapplication_newtapplication 
+  :: CString -> (Ptr CInt) -> (Ptr (CString)) -> IO (Ptr RawTApplication)
+foreign import ccall "HROOT.h TApplication_Run" c_tapplication_run 
+  :: (Ptr RawTApplication) -> CInt -> IO ()
+
+foreign import ccall "HROOT.h TRint_Run" c_trint_run 
+  :: (Ptr RawTRint) -> CInt -> IO ()
+foreign import ccall "HROOT.h TRint_GetName" c_trint_getname 
+  :: (Ptr RawTRint) -> IO CString
+foreign import ccall "HROOT.h TRint_Draw" c_trint_draw 
+  :: (Ptr RawTRint) -> CString -> IO ()
+foreign import ccall "HROOT.h TRint_FindObject" c_trint_findobject 
+  :: (Ptr RawTRint) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TRint_SaveAs" c_trint_saveas 
+  :: (Ptr RawTRint) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TRint_Write" c_trint_write 
+  :: (Ptr RawTRint) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TRint_IsA" c_trint_isa 
+  :: (Ptr RawTRint) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TRint_printObj" c_trint_printobj 
+  :: (Ptr RawTRint) -> CString -> IO ()
+foreign import ccall "HROOT.h TRint_delete" c_trint_delete 
+  :: (Ptr RawTRint) -> IO ()
+foreign import ccall "HROOT.h TRint_newTRint" c_trint_newtrint 
+  :: CString -> (Ptr CInt) -> (Ptr (CString)) -> IO (Ptr RawTRint)
+
+foreign import ccall "HROOT.h TRandom_SetName" c_trandom_setname 
+  :: (Ptr RawTRandom) -> CString -> IO ()
+foreign import ccall "HROOT.h TRandom_SetNameTitle" c_trandom_setnametitle 
+  :: (Ptr RawTRandom) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TRandom_SetTitle" c_trandom_settitle 
+  :: (Ptr RawTRandom) -> CString -> IO ()
+foreign import ccall "HROOT.h TRandom_GetName" c_trandom_getname 
+  :: (Ptr RawTRandom) -> IO CString
+foreign import ccall "HROOT.h TRandom_Draw" c_trandom_draw 
+  :: (Ptr RawTRandom) -> CString -> IO ()
+foreign import ccall "HROOT.h TRandom_FindObject" c_trandom_findobject 
+  :: (Ptr RawTRandom) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TRandom_SaveAs" c_trandom_saveas 
+  :: (Ptr RawTRandom) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TRandom_Write" c_trandom_write 
+  :: (Ptr RawTRandom) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TRandom_IsA" c_trandom_isa 
+  :: (Ptr RawTRandom) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TRandom_printObj" c_trandom_printobj 
+  :: (Ptr RawTRandom) -> CString -> IO ()
+foreign import ccall "HROOT.h TRandom_delete" c_trandom_delete 
+  :: (Ptr RawTRandom) -> IO ()
+foreign import ccall "HROOT.h TRandom_newTRandom" c_trandom_newtrandom 
+  :: CInt -> IO (Ptr RawTRandom)
+foreign import ccall "HROOT.h TRandom_Gaus" c_trandom_gaus 
+  :: (Ptr RawTRandom) -> CDouble -> CDouble -> IO CDouble
+foreign import ccall "HROOT.h TRandom_Uniform" c_trandom_uniform 
+  :: (Ptr RawTRandom) -> CDouble -> CDouble -> IO CDouble
+
+foreign import ccall "HROOT.h TCollection_GetName" c_tcollection_getname 
+  :: (Ptr RawTCollection) -> IO CString
+foreign import ccall "HROOT.h TCollection_Draw" c_tcollection_draw 
+  :: (Ptr RawTCollection) -> CString -> IO ()
+foreign import ccall "HROOT.h TCollection_FindObject" c_tcollection_findobject 
+  :: (Ptr RawTCollection) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TCollection_SaveAs" c_tcollection_saveas 
+  :: (Ptr RawTCollection) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TCollection_Write" c_tcollection_write 
+  :: (Ptr RawTCollection) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TCollection_IsA" c_tcollection_isa 
+  :: (Ptr RawTCollection) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TCollection_printObj" c_tcollection_printobj 
+  :: (Ptr RawTCollection) -> CString -> IO ()
+foreign import ccall "HROOT.h TCollection_delete" c_tcollection_delete 
+  :: (Ptr RawTCollection) -> IO ()
+
+foreign import ccall "HROOT.h TSeqCollection_GetName" c_tseqcollection_getname 
+  :: (Ptr RawTSeqCollection) -> IO CString
+foreign import ccall "HROOT.h TSeqCollection_Draw" c_tseqcollection_draw 
+  :: (Ptr RawTSeqCollection) -> CString -> IO ()
+foreign import ccall "HROOT.h TSeqCollection_FindObject" c_tseqcollection_findobject 
+  :: (Ptr RawTSeqCollection) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TSeqCollection_SaveAs" c_tseqcollection_saveas 
+  :: (Ptr RawTSeqCollection) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TSeqCollection_Write" c_tseqcollection_write 
+  :: (Ptr RawTSeqCollection) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TSeqCollection_IsA" c_tseqcollection_isa 
+  :: (Ptr RawTSeqCollection) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TSeqCollection_printObj" c_tseqcollection_printobj 
+  :: (Ptr RawTSeqCollection) -> CString -> IO ()
+foreign import ccall "HROOT.h TSeqCollection_delete" c_tseqcollection_delete 
+  :: (Ptr RawTSeqCollection) -> IO ()
+
+foreign import ccall "HROOT.h TObjArray_GetName" c_tobjarray_getname 
+  :: (Ptr RawTObjArray) -> IO CString
+foreign import ccall "HROOT.h TObjArray_Draw" c_tobjarray_draw 
+  :: (Ptr RawTObjArray) -> CString -> IO ()
+foreign import ccall "HROOT.h TObjArray_FindObject" c_tobjarray_findobject 
+  :: (Ptr RawTObjArray) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TObjArray_SaveAs" c_tobjarray_saveas 
+  :: (Ptr RawTObjArray) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TObjArray_Write" c_tobjarray_write 
+  :: (Ptr RawTObjArray) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TObjArray_IsA" c_tobjarray_isa 
+  :: (Ptr RawTObjArray) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TObjArray_printObj" c_tobjarray_printobj 
+  :: (Ptr RawTObjArray) -> CString -> IO ()
+foreign import ccall "HROOT.h TObjArray_delete" c_tobjarray_delete 
+  :: (Ptr RawTObjArray) -> IO ()
+
+foreign import ccall "HROOT.h TList_GetName" c_tlist_getname 
+  :: (Ptr RawTList) -> IO CString
+foreign import ccall "HROOT.h TList_Draw" c_tlist_draw 
+  :: (Ptr RawTList) -> CString -> IO ()
+foreign import ccall "HROOT.h TList_FindObject" c_tlist_findobject 
+  :: (Ptr RawTList) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TList_SaveAs" c_tlist_saveas 
+  :: (Ptr RawTList) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TList_Write" c_tlist_write 
+  :: (Ptr RawTList) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TList_IsA" c_tlist_isa 
+  :: (Ptr RawTList) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TList_printObj" c_tlist_printobj 
+  :: (Ptr RawTList) -> CString -> IO ()
+foreign import ccall "HROOT.h TList_delete" c_tlist_delete 
+  :: (Ptr RawTList) -> IO ()
+
+foreign import ccall "HROOT.h TKey_SetName" c_tkey_setname 
+  :: (Ptr RawTKey) -> CString -> IO ()
+foreign import ccall "HROOT.h TKey_SetNameTitle" c_tkey_setnametitle 
+  :: (Ptr RawTKey) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TKey_SetTitle" c_tkey_settitle 
+  :: (Ptr RawTKey) -> CString -> IO ()
+foreign import ccall "HROOT.h TKey_GetName" c_tkey_getname 
+  :: (Ptr RawTKey) -> IO CString
+foreign import ccall "HROOT.h TKey_Draw" c_tkey_draw 
+  :: (Ptr RawTKey) -> CString -> IO ()
+foreign import ccall "HROOT.h TKey_FindObject" c_tkey_findobject 
+  :: (Ptr RawTKey) -> CString -> IO (Ptr RawTObject)
+foreign import ccall "HROOT.h TKey_SaveAs" c_tkey_saveas 
+  :: (Ptr RawTKey) -> CString -> CString -> IO ()
+foreign import ccall "HROOT.h TKey_Write" c_tkey_write 
+  :: (Ptr RawTKey) -> CString -> CInt -> CInt -> IO CInt
+foreign import ccall "HROOT.h TKey_IsA" c_tkey_isa 
+  :: (Ptr RawTKey) -> IO (Ptr RawTClass)
+foreign import ccall "HROOT.h TKey_printObj" c_tkey_printobj 
+  :: (Ptr RawTKey) -> CString -> IO ()
+foreign import ccall "HROOT.h TKey_delete" c_tkey_delete 
+  :: (Ptr RawTKey) -> IO ()
+foreign import ccall "HROOT.h TKey_newTKey" c_tkey_newtkey 
+  :: CString -> CString -> (Ptr RawTClass) -> CInt -> (Ptr RawTDirectory) -> IO (Ptr RawTKey)
+
+foreign import ccall "HROOT.h TDatime_delete" c_tdatime_delete 
+  :: (Ptr RawTDatime) -> IO ()
+foreign import ccall "HROOT.h TDatime_newTDatime" c_tdatime_newtdatime 
+  :: CInt -> CInt -> CInt -> CInt -> CInt -> CInt -> IO (Ptr RawTDatime)
+foreign import ccall "HROOT.h TDatime_Convert" c_tdatime_convert 
+  :: (Ptr RawTDatime) -> CInt -> IO CUInt
+
+
+
+
+
+
+
+
+
+
 
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
@@ -470,9229 +470,11842 @@
   cast = unsafeForeignPtrToPtr . castForeignPtr . get_fptr
   uncast = cast_fptr_to_obj . castForeignPtr . unsafePerformIO . newForeignPtr_ 
 
-instance FPtr (Exist TObject) where
-  type Raw (Exist TObject) = RawTObject
-  get_fptr (ETObject obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETObject (cast_fptr_to_obj (fptr :: ForeignPtr RawTObject) :: TObject)
-
-instance FPtr (Exist TNamed) where
-  type Raw (Exist TNamed) = RawTNamed
-  get_fptr (ETNamed obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETNamed (cast_fptr_to_obj (fptr :: ForeignPtr RawTNamed) :: TNamed)
-
-instance FPtr (Exist TClass) where
-  type Raw (Exist TClass) = RawTClass
-  get_fptr (ETClass obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETClass (cast_fptr_to_obj (fptr :: ForeignPtr RawTClass) :: TClass)
-
-instance FPtr (Exist TFormula) where
-  type Raw (Exist TFormula) = RawTFormula
-  get_fptr (ETFormula obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETFormula (cast_fptr_to_obj (fptr :: ForeignPtr RawTFormula) :: TFormula)
-
-instance FPtr (Exist TAtt3D) where
-  type Raw (Exist TAtt3D) = RawTAtt3D
-  get_fptr (ETAtt3D obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAtt3D (cast_fptr_to_obj (fptr :: ForeignPtr RawTAtt3D) :: TAtt3D)
-
-instance FPtr (Exist TAttAxis) where
-  type Raw (Exist TAttAxis) = RawTAttAxis
-  get_fptr (ETAttAxis obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttAxis (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttAxis) :: TAttAxis)
-
-instance FPtr (Exist TAttBBox) where
-  type Raw (Exist TAttBBox) = RawTAttBBox
-  get_fptr (ETAttBBox obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttBBox (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttBBox) :: TAttBBox)
-
-instance FPtr (Exist TAttCanvas) where
-  type Raw (Exist TAttCanvas) = RawTAttCanvas
-  get_fptr (ETAttCanvas obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttCanvas (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttCanvas) :: TAttCanvas)
-
-instance FPtr (Exist TAttFill) where
-  type Raw (Exist TAttFill) = RawTAttFill
-  get_fptr (ETAttFill obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttFill (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttFill) :: TAttFill)
-
-instance FPtr (Exist TAttImage) where
-  type Raw (Exist TAttImage) = RawTAttImage
-  get_fptr (ETAttImage obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttImage (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttImage) :: TAttImage)
-
-instance FPtr (Exist TAttLine) where
-  type Raw (Exist TAttLine) = RawTAttLine
-  get_fptr (ETAttLine obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttLine (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttLine) :: TAttLine)
-
-instance FPtr (Exist TAttMarker) where
-  type Raw (Exist TAttMarker) = RawTAttMarker
-  get_fptr (ETAttMarker obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttMarker (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttMarker) :: TAttMarker)
-
-instance FPtr (Exist TAttPad) where
-  type Raw (Exist TAttPad) = RawTAttPad
-  get_fptr (ETAttPad obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttPad (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttPad) :: TAttPad)
-
-instance FPtr (Exist TAttParticle) where
-  type Raw (Exist TAttParticle) = RawTAttParticle
-  get_fptr (ETAttParticle obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttParticle (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttParticle) :: TAttParticle)
-
-instance FPtr (Exist TAttText) where
-  type Raw (Exist TAttText) = RawTAttText
-  get_fptr (ETAttText obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAttText (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttText) :: TAttText)
-
-instance FPtr (Exist THStack) where
-  type Raw (Exist THStack) = RawTHStack
-  get_fptr (ETHStack obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETHStack (cast_fptr_to_obj (fptr :: ForeignPtr RawTHStack) :: THStack)
-
-instance FPtr (Exist TF1) where
-  type Raw (Exist TF1) = RawTF1
-  get_fptr (ETF1 obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETF1 (cast_fptr_to_obj (fptr :: ForeignPtr RawTF1) :: TF1)
-
-instance FPtr (Exist TGraph) where
-  type Raw (Exist TGraph) = RawTGraph
-  get_fptr (ETGraph obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETGraph (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraph) :: TGraph)
-
-instance FPtr (Exist TGraphAsymmErrors) where
-  type Raw (Exist TGraphAsymmErrors) = RawTGraphAsymmErrors
-  get_fptr (ETGraphAsymmErrors obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETGraphAsymmErrors (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphAsymmErrors) :: TGraphAsymmErrors)
-
-instance FPtr (Exist TCutG) where
-  type Raw (Exist TCutG) = RawTCutG
-  get_fptr (ETCutG obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETCutG (cast_fptr_to_obj (fptr :: ForeignPtr RawTCutG) :: TCutG)
-
-instance FPtr (Exist TGraphBentErrors) where
-  type Raw (Exist TGraphBentErrors) = RawTGraphBentErrors
-  get_fptr (ETGraphBentErrors obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETGraphBentErrors (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphBentErrors) :: TGraphBentErrors)
-
-instance FPtr (Exist TGraphErrors) where
-  type Raw (Exist TGraphErrors) = RawTGraphErrors
-  get_fptr (ETGraphErrors obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETGraphErrors (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphErrors) :: TGraphErrors)
-
-instance FPtr (Exist TGraphPolar) where
-  type Raw (Exist TGraphPolar) = RawTGraphPolar
-  get_fptr (ETGraphPolar obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETGraphPolar (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphPolar) :: TGraphPolar)
-
-instance FPtr (Exist TGraphQQ) where
-  type Raw (Exist TGraphQQ) = RawTGraphQQ
-  get_fptr (ETGraphQQ obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETGraphQQ (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphQQ) :: TGraphQQ)
-
-instance FPtr (Exist TEllipse) where
-  type Raw (Exist TEllipse) = RawTEllipse
-  get_fptr (ETEllipse obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETEllipse (cast_fptr_to_obj (fptr :: ForeignPtr RawTEllipse) :: TEllipse)
-
-instance FPtr (Exist TArc) where
-  type Raw (Exist TArc) = RawTArc
-  get_fptr (ETArc obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArc (cast_fptr_to_obj (fptr :: ForeignPtr RawTArc) :: TArc)
-
-instance FPtr (Exist TCrown) where
-  type Raw (Exist TCrown) = RawTCrown
-  get_fptr (ETCrown obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETCrown (cast_fptr_to_obj (fptr :: ForeignPtr RawTCrown) :: TCrown)
-
-instance FPtr (Exist TLine) where
-  type Raw (Exist TLine) = RawTLine
-  get_fptr (ETLine obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETLine (cast_fptr_to_obj (fptr :: ForeignPtr RawTLine) :: TLine)
-
-instance FPtr (Exist TArrow) where
-  type Raw (Exist TArrow) = RawTArrow
-  get_fptr (ETArrow obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArrow (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrow) :: TArrow)
-
-instance FPtr (Exist TGaxis) where
-  type Raw (Exist TGaxis) = RawTGaxis
-  get_fptr (ETGaxis obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETGaxis (cast_fptr_to_obj (fptr :: ForeignPtr RawTGaxis) :: TGaxis)
-
-instance FPtr (Exist TShape) where
-  type Raw (Exist TShape) = RawTShape
-  get_fptr (ETShape obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETShape (cast_fptr_to_obj (fptr :: ForeignPtr RawTShape) :: TShape)
-
-instance FPtr (Exist TBRIK) where
-  type Raw (Exist TBRIK) = RawTBRIK
-  get_fptr (ETBRIK obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETBRIK (cast_fptr_to_obj (fptr :: ForeignPtr RawTBRIK) :: TBRIK)
-
-instance FPtr (Exist TTUBE) where
-  type Raw (Exist TTUBE) = RawTTUBE
-  get_fptr (ETTUBE obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETTUBE (cast_fptr_to_obj (fptr :: ForeignPtr RawTTUBE) :: TTUBE)
-
-instance FPtr (Exist TPCON) where
-  type Raw (Exist TPCON) = RawTPCON
-  get_fptr (ETPCON obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPCON (cast_fptr_to_obj (fptr :: ForeignPtr RawTPCON) :: TPCON)
-
-instance FPtr (Exist TSPHE) where
-  type Raw (Exist TSPHE) = RawTSPHE
-  get_fptr (ETSPHE obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETSPHE (cast_fptr_to_obj (fptr :: ForeignPtr RawTSPHE) :: TSPHE)
-
-instance FPtr (Exist TXTRU) where
-  type Raw (Exist TXTRU) = RawTXTRU
-  get_fptr (ETXTRU obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETXTRU (cast_fptr_to_obj (fptr :: ForeignPtr RawTXTRU) :: TXTRU)
-
-instance FPtr (Exist TBox) where
-  type Raw (Exist TBox) = RawTBox
-  get_fptr (ETBox obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETBox (cast_fptr_to_obj (fptr :: ForeignPtr RawTBox) :: TBox)
-
-instance FPtr (Exist TPave) where
-  type Raw (Exist TPave) = RawTPave
-  get_fptr (ETPave obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPave (cast_fptr_to_obj (fptr :: ForeignPtr RawTPave) :: TPave)
-
-instance FPtr (Exist TPaveText) where
-  type Raw (Exist TPaveText) = RawTPaveText
-  get_fptr (ETPaveText obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPaveText (cast_fptr_to_obj (fptr :: ForeignPtr RawTPaveText) :: TPaveText)
-
-instance FPtr (Exist TDiamond) where
-  type Raw (Exist TDiamond) = RawTDiamond
-  get_fptr (ETDiamond obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETDiamond (cast_fptr_to_obj (fptr :: ForeignPtr RawTDiamond) :: TDiamond)
-
-instance FPtr (Exist TPaveStats) where
-  type Raw (Exist TPaveStats) = RawTPaveStats
-  get_fptr (ETPaveStats obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPaveStats (cast_fptr_to_obj (fptr :: ForeignPtr RawTPaveStats) :: TPaveStats)
-
-instance FPtr (Exist TPavesText) where
-  type Raw (Exist TPavesText) = RawTPavesText
-  get_fptr (ETPavesText obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPavesText (cast_fptr_to_obj (fptr :: ForeignPtr RawTPavesText) :: TPavesText)
-
-instance FPtr (Exist TLegend) where
-  type Raw (Exist TLegend) = RawTLegend
-  get_fptr (ETLegend obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETLegend (cast_fptr_to_obj (fptr :: ForeignPtr RawTLegend) :: TLegend)
-
-instance FPtr (Exist TLegendEntry) where
-  type Raw (Exist TLegendEntry) = RawTLegendEntry
-  get_fptr (ETLegendEntry obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETLegendEntry (cast_fptr_to_obj (fptr :: ForeignPtr RawTLegendEntry) :: TLegendEntry)
-
-instance FPtr (Exist TPaveLabel) where
-  type Raw (Exist TPaveLabel) = RawTPaveLabel
-  get_fptr (ETPaveLabel obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPaveLabel (cast_fptr_to_obj (fptr :: ForeignPtr RawTPaveLabel) :: TPaveLabel)
-
-instance FPtr (Exist TPaveClass) where
-  type Raw (Exist TPaveClass) = RawTPaveClass
-  get_fptr (ETPaveClass obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPaveClass (cast_fptr_to_obj (fptr :: ForeignPtr RawTPaveClass) :: TPaveClass)
-
-instance FPtr (Exist TWbox) where
-  type Raw (Exist TWbox) = RawTWbox
-  get_fptr (ETWbox obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETWbox (cast_fptr_to_obj (fptr :: ForeignPtr RawTWbox) :: TWbox)
-
-instance FPtr (Exist TFrame) where
-  type Raw (Exist TFrame) = RawTFrame
-  get_fptr (ETFrame obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETFrame (cast_fptr_to_obj (fptr :: ForeignPtr RawTFrame) :: TFrame)
-
-instance FPtr (Exist TSliderBox) where
-  type Raw (Exist TSliderBox) = RawTSliderBox
-  get_fptr (ETSliderBox obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETSliderBox (cast_fptr_to_obj (fptr :: ForeignPtr RawTSliderBox) :: TSliderBox)
-
-instance FPtr (Exist TTree) where
-  type Raw (Exist TTree) = RawTTree
-  get_fptr (ETTree obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETTree (cast_fptr_to_obj (fptr :: ForeignPtr RawTTree) :: TTree)
-
-instance FPtr (Exist TChain) where
-  type Raw (Exist TChain) = RawTChain
-  get_fptr (ETChain obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETChain (cast_fptr_to_obj (fptr :: ForeignPtr RawTChain) :: TChain)
-
-instance FPtr (Exist TNtuple) where
-  type Raw (Exist TNtuple) = RawTNtuple
-  get_fptr (ETNtuple obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETNtuple (cast_fptr_to_obj (fptr :: ForeignPtr RawTNtuple) :: TNtuple)
-
-instance FPtr (Exist TNtupleD) where
-  type Raw (Exist TNtupleD) = RawTNtupleD
-  get_fptr (ETNtupleD obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETNtupleD (cast_fptr_to_obj (fptr :: ForeignPtr RawTNtupleD) :: TNtupleD)
-
-instance FPtr (Exist TTreeSQL) where
-  type Raw (Exist TTreeSQL) = RawTTreeSQL
-  get_fptr (ETTreeSQL obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETTreeSQL (cast_fptr_to_obj (fptr :: ForeignPtr RawTTreeSQL) :: TTreeSQL)
-
-instance FPtr (Exist TPolyLine) where
-  type Raw (Exist TPolyLine) = RawTPolyLine
-  get_fptr (ETPolyLine obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPolyLine (cast_fptr_to_obj (fptr :: ForeignPtr RawTPolyLine) :: TPolyLine)
-
-instance FPtr (Exist TCurlyLine) where
-  type Raw (Exist TCurlyLine) = RawTCurlyLine
-  get_fptr (ETCurlyLine obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETCurlyLine (cast_fptr_to_obj (fptr :: ForeignPtr RawTCurlyLine) :: TCurlyLine)
-
-instance FPtr (Exist TCurlyArc) where
-  type Raw (Exist TCurlyArc) = RawTCurlyArc
-  get_fptr (ETCurlyArc obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETCurlyArc (cast_fptr_to_obj (fptr :: ForeignPtr RawTCurlyArc) :: TCurlyArc)
-
-instance FPtr (Exist TEfficiency) where
-  type Raw (Exist TEfficiency) = RawTEfficiency
-  get_fptr (ETEfficiency obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETEfficiency (cast_fptr_to_obj (fptr :: ForeignPtr RawTEfficiency) :: TEfficiency)
-
-instance FPtr (Exist TAxis) where
-  type Raw (Exist TAxis) = RawTAxis
-  get_fptr (ETAxis obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETAxis (cast_fptr_to_obj (fptr :: ForeignPtr RawTAxis) :: TAxis)
-
-instance FPtr (Exist TLatex) where
-  type Raw (Exist TLatex) = RawTLatex
-  get_fptr (ETLatex obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETLatex (cast_fptr_to_obj (fptr :: ForeignPtr RawTLatex) :: TLatex)
-
-instance FPtr (Exist TText) where
-  type Raw (Exist TText) = RawTText
-  get_fptr (ETText obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETText (cast_fptr_to_obj (fptr :: ForeignPtr RawTText) :: TText)
-
-instance FPtr (Exist TDirectory) where
-  type Raw (Exist TDirectory) = RawTDirectory
-  get_fptr (ETDirectory obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETDirectory (cast_fptr_to_obj (fptr :: ForeignPtr RawTDirectory) :: TDirectory)
-
-instance FPtr (Exist TDirectoryFile) where
-  type Raw (Exist TDirectoryFile) = RawTDirectoryFile
-  get_fptr (ETDirectoryFile obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETDirectoryFile (cast_fptr_to_obj (fptr :: ForeignPtr RawTDirectoryFile) :: TDirectoryFile)
-
-instance FPtr (Exist TFile) where
-  type Raw (Exist TFile) = RawTFile
-  get_fptr (ETFile obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETFile (cast_fptr_to_obj (fptr :: ForeignPtr RawTFile) :: TFile)
-
-instance FPtr (Exist TBranch) where
-  type Raw (Exist TBranch) = RawTBranch
-  get_fptr (ETBranch obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETBranch (cast_fptr_to_obj (fptr :: ForeignPtr RawTBranch) :: TBranch)
-
-instance FPtr (Exist TVirtualTreePlayer) where
-  type Raw (Exist TVirtualTreePlayer) = RawTVirtualTreePlayer
-  get_fptr (ETVirtualTreePlayer obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETVirtualTreePlayer (cast_fptr_to_obj (fptr :: ForeignPtr RawTVirtualTreePlayer) :: TVirtualTreePlayer)
-
-instance FPtr (Exist TTreePlayer) where
-  type Raw (Exist TTreePlayer) = RawTTreePlayer
-  get_fptr (ETTreePlayer obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETTreePlayer (cast_fptr_to_obj (fptr :: ForeignPtr RawTTreePlayer) :: TTreePlayer)
-
-instance FPtr (Exist TArray) where
-  type Raw (Exist TArray) = RawTArray
-  get_fptr (ETArray obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArray (cast_fptr_to_obj (fptr :: ForeignPtr RawTArray) :: TArray)
-
-instance FPtr (Exist TArrayC) where
-  type Raw (Exist TArrayC) = RawTArrayC
-  get_fptr (ETArrayC obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArrayC (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayC) :: TArrayC)
-
-instance FPtr (Exist TArrayD) where
-  type Raw (Exist TArrayD) = RawTArrayD
-  get_fptr (ETArrayD obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArrayD (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayD) :: TArrayD)
-
-instance FPtr (Exist TArrayF) where
-  type Raw (Exist TArrayF) = RawTArrayF
-  get_fptr (ETArrayF obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArrayF (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayF) :: TArrayF)
-
-instance FPtr (Exist TArrayI) where
-  type Raw (Exist TArrayI) = RawTArrayI
-  get_fptr (ETArrayI obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArrayI (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayI) :: TArrayI)
-
-instance FPtr (Exist TArrayL) where
-  type Raw (Exist TArrayL) = RawTArrayL
-  get_fptr (ETArrayL obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArrayL (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayL) :: TArrayL)
-
-instance FPtr (Exist TArrayL64) where
-  type Raw (Exist TArrayL64) = RawTArrayL64
-  get_fptr (ETArrayL64 obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArrayL64 (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayL64) :: TArrayL64)
-
-instance FPtr (Exist TArrayS) where
-  type Raw (Exist TArrayS) = RawTArrayS
-  get_fptr (ETArrayS obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETArrayS (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayS) :: TArrayS)
-
-instance FPtr (Exist TH1) where
-  type Raw (Exist TH1) = RawTH1
-  get_fptr (ETH1 obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH1 (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1) :: TH1)
-
-instance FPtr (Exist TH2) where
-  type Raw (Exist TH2) = RawTH2
-  get_fptr (ETH2 obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH2 (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2) :: TH2)
-
-instance FPtr (Exist TH3) where
-  type Raw (Exist TH3) = RawTH3
-  get_fptr (ETH3 obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH3 (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3) :: TH3)
-
-instance FPtr (Exist TH1C) where
-  type Raw (Exist TH1C) = RawTH1C
-  get_fptr (ETH1C obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH1C (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1C) :: TH1C)
-
-instance FPtr (Exist TH1D) where
-  type Raw (Exist TH1D) = RawTH1D
-  get_fptr (ETH1D obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH1D (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1D) :: TH1D)
-
-instance FPtr (Exist TH1F) where
-  type Raw (Exist TH1F) = RawTH1F
-  get_fptr (ETH1F obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH1F (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1F) :: TH1F)
-
-instance FPtr (Exist TH1I) where
-  type Raw (Exist TH1I) = RawTH1I
-  get_fptr (ETH1I obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH1I (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1I) :: TH1I)
-
-instance FPtr (Exist TH1S) where
-  type Raw (Exist TH1S) = RawTH1S
-  get_fptr (ETH1S obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH1S (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1S) :: TH1S)
-
-instance FPtr (Exist TH2C) where
-  type Raw (Exist TH2C) = RawTH2C
-  get_fptr (ETH2C obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH2C (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2C) :: TH2C)
-
-instance FPtr (Exist TH2D) where
-  type Raw (Exist TH2D) = RawTH2D
-  get_fptr (ETH2D obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH2D (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2D) :: TH2D)
-
-instance FPtr (Exist TH2F) where
-  type Raw (Exist TH2F) = RawTH2F
-  get_fptr (ETH2F obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH2F (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2F) :: TH2F)
-
-instance FPtr (Exist TH2I) where
-  type Raw (Exist TH2I) = RawTH2I
-  get_fptr (ETH2I obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH2I (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2I) :: TH2I)
-
-instance FPtr (Exist TH2Poly) where
-  type Raw (Exist TH2Poly) = RawTH2Poly
-  get_fptr (ETH2Poly obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH2Poly (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2Poly) :: TH2Poly)
-
-instance FPtr (Exist TH2S) where
-  type Raw (Exist TH2S) = RawTH2S
-  get_fptr (ETH2S obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH2S (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2S) :: TH2S)
-
-instance FPtr (Exist TH3C) where
-  type Raw (Exist TH3C) = RawTH3C
-  get_fptr (ETH3C obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH3C (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3C) :: TH3C)
-
-instance FPtr (Exist TH3D) where
-  type Raw (Exist TH3D) = RawTH3D
-  get_fptr (ETH3D obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH3D (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3D) :: TH3D)
-
-instance FPtr (Exist TH3F) where
-  type Raw (Exist TH3F) = RawTH3F
-  get_fptr (ETH3F obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH3F (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3F) :: TH3F)
-
-instance FPtr (Exist TH3I) where
-  type Raw (Exist TH3I) = RawTH3I
-  get_fptr (ETH3I obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH3I (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3I) :: TH3I)
-
-instance FPtr (Exist TH3S) where
-  type Raw (Exist TH3S) = RawTH3S
-  get_fptr (ETH3S obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETH3S (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3S) :: TH3S)
-
-instance FPtr (Exist TQObject) where
-  type Raw (Exist TQObject) = RawTQObject
-  get_fptr (ETQObject obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETQObject (cast_fptr_to_obj (fptr :: ForeignPtr RawTQObject) :: TQObject)
-
-instance FPtr (Exist TVirtualPad) where
-  type Raw (Exist TVirtualPad) = RawTVirtualPad
-  get_fptr (ETVirtualPad obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETVirtualPad (cast_fptr_to_obj (fptr :: ForeignPtr RawTVirtualPad) :: TVirtualPad)
-
-instance FPtr (Exist TPad) where
-  type Raw (Exist TPad) = RawTPad
-  get_fptr (ETPad obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETPad (cast_fptr_to_obj (fptr :: ForeignPtr RawTPad) :: TPad)
-
-instance FPtr (Exist TButton) where
-  type Raw (Exist TButton) = RawTButton
-  get_fptr (ETButton obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETButton (cast_fptr_to_obj (fptr :: ForeignPtr RawTButton) :: TButton)
-
-instance FPtr (Exist TGroupButton) where
-  type Raw (Exist TGroupButton) = RawTGroupButton
-  get_fptr (ETGroupButton obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETGroupButton (cast_fptr_to_obj (fptr :: ForeignPtr RawTGroupButton) :: TGroupButton)
-
-instance FPtr (Exist TCanvas) where
-  type Raw (Exist TCanvas) = RawTCanvas
-  get_fptr (ETCanvas obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETCanvas (cast_fptr_to_obj (fptr :: ForeignPtr RawTCanvas) :: TCanvas)
-
-instance FPtr (Exist TDialogCanvas) where
-  type Raw (Exist TDialogCanvas) = RawTDialogCanvas
-  get_fptr (ETDialogCanvas obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETDialogCanvas (cast_fptr_to_obj (fptr :: ForeignPtr RawTDialogCanvas) :: TDialogCanvas)
-
-instance FPtr (Exist TInspectCanvas) where
-  type Raw (Exist TInspectCanvas) = RawTInspectCanvas
-  get_fptr (ETInspectCanvas obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETInspectCanvas (cast_fptr_to_obj (fptr :: ForeignPtr RawTInspectCanvas) :: TInspectCanvas)
-
-instance FPtr (Exist TEvePad) where
-  type Raw (Exist TEvePad) = RawTEvePad
-  get_fptr (ETEvePad obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETEvePad (cast_fptr_to_obj (fptr :: ForeignPtr RawTEvePad) :: TEvePad)
-
-instance FPtr (Exist TSlider) where
-  type Raw (Exist TSlider) = RawTSlider
-  get_fptr (ETSlider obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETSlider (cast_fptr_to_obj (fptr :: ForeignPtr RawTSlider) :: TSlider)
-
-instance FPtr (Exist TApplication) where
-  type Raw (Exist TApplication) = RawTApplication
-  get_fptr (ETApplication obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETApplication (cast_fptr_to_obj (fptr :: ForeignPtr RawTApplication) :: TApplication)
-
-instance FPtr (Exist TRint) where
-  type Raw (Exist TRint) = RawTRint
-  get_fptr (ETRint obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETRint (cast_fptr_to_obj (fptr :: ForeignPtr RawTRint) :: TRint)
-
-instance FPtr (Exist TRandom) where
-  type Raw (Exist TRandom) = RawTRandom
-  get_fptr (ETRandom obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETRandom (cast_fptr_to_obj (fptr :: ForeignPtr RawTRandom) :: TRandom)
-
-instance FPtr (Exist TCollection) where
-  type Raw (Exist TCollection) = RawTCollection
-  get_fptr (ETCollection obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETCollection (cast_fptr_to_obj (fptr :: ForeignPtr RawTCollection) :: TCollection)
-
-instance FPtr (Exist TSeqCollection) where
-  type Raw (Exist TSeqCollection) = RawTSeqCollection
-  get_fptr (ETSeqCollection obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETSeqCollection (cast_fptr_to_obj (fptr :: ForeignPtr RawTSeqCollection) :: TSeqCollection)
-
-instance FPtr (Exist TObjArray) where
-  type Raw (Exist TObjArray) = RawTObjArray
-  get_fptr (ETObjArray obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETObjArray (cast_fptr_to_obj (fptr :: ForeignPtr RawTObjArray) :: TObjArray)
-
-instance FPtr (Exist TList) where
-  type Raw (Exist TList) = RawTList
-  get_fptr (ETList obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETList (cast_fptr_to_obj (fptr :: ForeignPtr RawTList) :: TList)
-
-instance FPtr (Exist TKey) where
-  type Raw (Exist TKey) = RawTKey
-  get_fptr (ETKey obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETKey (cast_fptr_to_obj (fptr :: ForeignPtr RawTKey) :: TKey)
-
-instance FPtr (Exist TDatime) where
-  type Raw (Exist TDatime) = RawTDatime
-  get_fptr (ETDatime obj) = castForeignPtr (get_fptr obj)
-  cast_fptr_to_obj fptr = ETDatime (cast_fptr_to_obj (fptr :: ForeignPtr RawTDatime) :: TDatime)
-
-instance ITObject (Exist TObject) where
-  getName (ETObject x) = getName x
-  draw (ETObject x) = draw x
-  findObject (ETObject x) = findObject x
-  saveAs (ETObject x) = saveAs x
-  write (ETObject x) = write x
-  isA (ETObject x) = isA x
-  printObj (ETObject x) = printObj x
-
-instance IDeletable (Exist TObject) where
-  delete (ETObject x) = delete x
-
-instance ITNamed (Exist TNamed) where
-  setTitle (ETNamed x) = setTitle x
-
-instance ITObject (Exist TNamed) where
-  getName (ETNamed x) = getName x
-  draw (ETNamed x) = draw x
-  findObject (ETNamed x) = findObject x
-  saveAs (ETNamed x) = saveAs x
-  write (ETNamed x) = write x
-  isA (ETNamed x) = isA x
-  printObj (ETNamed x) = printObj x
-
-instance IDeletable (Exist TNamed) where
-  delete (ETNamed x) = delete x
-
-instance ITClass (Exist TClass) where
-
-
-instance ITDictionary (Exist TClass) where
-
-
-instance ITNamed (Exist TClass) where
-  setTitle (ETClass x) = setTitle x
-
-instance ITObject (Exist TClass) where
-  getName (ETClass x) = getName x
-  draw (ETClass x) = draw x
-  findObject (ETClass x) = findObject x
-  saveAs (ETClass x) = saveAs x
-  write (ETClass x) = write x
-  isA (ETClass x) = isA x
-  printObj (ETClass x) = printObj x
-
-instance IDeletable (Exist TClass) where
-  delete (ETClass x) = delete x
-
-instance ITFormula (Exist TFormula) where
-  getParameter (ETFormula x) = getParameter x
-  setParameter (ETFormula x) = setParameter x
-
-instance ITNamed (Exist TFormula) where
-  setTitle (ETFormula x) = setTitle x
-
-instance ITObject (Exist TFormula) where
-  getName (ETFormula x) = getName x
-  draw (ETFormula x) = draw x
-  findObject (ETFormula x) = findObject x
-  saveAs (ETFormula x) = saveAs x
-  write (ETFormula x) = write x
-  isA (ETFormula x) = isA x
-  printObj (ETFormula x) = printObj x
-
-instance IDeletable (Exist TFormula) where
-  delete (ETFormula x) = delete x
-
-instance ITAtt3D (Exist TAtt3D) where
-
-
-instance IDeletable (Exist TAtt3D) where
-  delete (ETAtt3D x) = delete x
-
-instance ITAttAxis (Exist TAttAxis) where
-  setLabelColor (ETAttAxis x) = setLabelColor x
-  setLabelSize (ETAttAxis x) = setLabelSize x
-  setTickLength (ETAttAxis x) = setTickLength x
-  setTitleOffset (ETAttAxis x) = setTitleOffset x
-  setNdivisions (ETAttAxis x) = setNdivisions x
-
-instance IDeletable (Exist TAttAxis) where
-  delete (ETAttAxis x) = delete x
-
-instance ITAttBBox (Exist TAttBBox) where
-
-
-instance IDeletable (Exist TAttBBox) where
-  delete (ETAttBBox x) = delete x
-
-instance ITAttCanvas (Exist TAttCanvas) where
-
-
-instance IDeletable (Exist TAttCanvas) where
-  delete (ETAttCanvas x) = delete x
-
-instance ITAttFill (Exist TAttFill) where
-  setFillColor (ETAttFill x) = setFillColor x
-  setFillStyle (ETAttFill x) = setFillStyle x
-
-instance IDeletable (Exist TAttFill) where
-  delete (ETAttFill x) = delete x
-
-instance ITAttImage (Exist TAttImage) where
-
-
-instance IDeletable (Exist TAttImage) where
-  delete (ETAttImage x) = delete x
-
-instance ITAttLine (Exist TAttLine) where
-  setLineColor (ETAttLine x) = setLineColor x
-
-instance IDeletable (Exist TAttLine) where
-  delete (ETAttLine x) = delete x
-
-instance ITAttMarker (Exist TAttMarker) where
-
-
-instance IDeletable (Exist TAttMarker) where
-  delete (ETAttMarker x) = delete x
-
-instance ITAttPad (Exist TAttPad) where
-
-
-instance IDeletable (Exist TAttPad) where
-  delete (ETAttPad x) = delete x
-
-instance ITAttParticle (Exist TAttParticle) where
-
-
-instance ITNamed (Exist TAttParticle) where
-  setTitle (ETAttParticle x) = setTitle x
-
-instance ITObject (Exist TAttParticle) where
-  getName (ETAttParticle x) = getName x
-  draw (ETAttParticle x) = draw x
-  findObject (ETAttParticle x) = findObject x
-  saveAs (ETAttParticle x) = saveAs x
-  write (ETAttParticle x) = write x
-  isA (ETAttParticle x) = isA x
-  printObj (ETAttParticle x) = printObj x
-
-instance IDeletable (Exist TAttParticle) where
-  delete (ETAttParticle x) = delete x
-
-instance ITAttText (Exist TAttText) where
-  setTextColor (ETAttText x) = setTextColor x
-  setTextAlign (ETAttText x) = setTextAlign x
-  setTextSize (ETAttText x) = setTextSize x
-
-instance IDeletable (Exist TAttText) where
-  delete (ETAttText x) = delete x
-
-instance ITHStack (Exist THStack) where
-
-
-instance ITNamed (Exist THStack) where
-  setTitle (ETHStack x) = setTitle x
-
-instance ITObject (Exist THStack) where
-  getName (ETHStack x) = getName x
-  draw (ETHStack x) = draw x
-  findObject (ETHStack x) = findObject x
-  saveAs (ETHStack x) = saveAs x
-  write (ETHStack x) = write x
-  isA (ETHStack x) = isA x
-  printObj (ETHStack x) = printObj x
-
-instance IDeletable (Exist THStack) where
-  delete (ETHStack x) = delete x
-
-instance ITF1 (Exist TF1) where
-
-
-instance ITFormula (Exist TF1) where
-  getParameter (ETF1 x) = getParameter x
-  setParameter (ETF1 x) = setParameter x
-
-instance ITAttLine (Exist TF1) where
-  setLineColor (ETF1 x) = setLineColor x
-
-instance ITAttFill (Exist TF1) where
-  setFillColor (ETF1 x) = setFillColor x
-  setFillStyle (ETF1 x) = setFillStyle x
-
-instance ITNamed (Exist TF1) where
-  setTitle (ETF1 x) = setTitle x
-
-instance ITObject (Exist TF1) where
-  getName (ETF1 x) = getName x
-  draw (ETF1 x) = draw x
-  findObject (ETF1 x) = findObject x
-  saveAs (ETF1 x) = saveAs x
-  write (ETF1 x) = write x
-  isA (ETF1 x) = isA x
-  printObj (ETF1 x) = printObj x
-
-instance IDeletable (Exist TF1) where
-  delete (ETF1 x) = delete x
-
-instance ITGraph (Exist TGraph) where
-
-
-instance ITNamed (Exist TGraph) where
-  setTitle (ETGraph x) = setTitle x
-
-instance ITAttLine (Exist TGraph) where
-  setLineColor (ETGraph x) = setLineColor x
-
-instance ITAttFill (Exist TGraph) where
-  setFillColor (ETGraph x) = setFillColor x
-  setFillStyle (ETGraph x) = setFillStyle x
-
-instance ITAttMarker (Exist TGraph) where
-
-
-instance ITObject (Exist TGraph) where
-  getName (ETGraph x) = getName x
-  draw (ETGraph x) = draw x
-  findObject (ETGraph x) = findObject x
-  saveAs (ETGraph x) = saveAs x
-  write (ETGraph x) = write x
-  isA (ETGraph x) = isA x
-  printObj (ETGraph x) = printObj x
-
-instance IDeletable (Exist TGraph) where
-  delete (ETGraph x) = delete x
-
-instance ITGraphAsymmErrors (Exist TGraphAsymmErrors) where
-
-
-instance ITGraph (Exist TGraphAsymmErrors) where
-
-
-instance ITNamed (Exist TGraphAsymmErrors) where
-  setTitle (ETGraphAsymmErrors x) = setTitle x
-
-instance ITAttLine (Exist TGraphAsymmErrors) where
-  setLineColor (ETGraphAsymmErrors x) = setLineColor x
-
-instance ITAttFill (Exist TGraphAsymmErrors) where
-  setFillColor (ETGraphAsymmErrors x) = setFillColor x
-  setFillStyle (ETGraphAsymmErrors x) = setFillStyle x
-
-instance ITAttMarker (Exist TGraphAsymmErrors) where
-
-
-instance ITObject (Exist TGraphAsymmErrors) where
-  getName (ETGraphAsymmErrors x) = getName x
-  draw (ETGraphAsymmErrors x) = draw x
-  findObject (ETGraphAsymmErrors x) = findObject x
-  saveAs (ETGraphAsymmErrors x) = saveAs x
-  write (ETGraphAsymmErrors x) = write x
-  isA (ETGraphAsymmErrors x) = isA x
-  printObj (ETGraphAsymmErrors x) = printObj x
-
-instance IDeletable (Exist TGraphAsymmErrors) where
-  delete (ETGraphAsymmErrors x) = delete x
-
-instance ITCutG (Exist TCutG) where
-
-
-instance ITGraph (Exist TCutG) where
-
-
-instance ITNamed (Exist TCutG) where
-  setTitle (ETCutG x) = setTitle x
-
-instance ITAttLine (Exist TCutG) where
-  setLineColor (ETCutG x) = setLineColor x
-
-instance ITAttFill (Exist TCutG) where
-  setFillColor (ETCutG x) = setFillColor x
-  setFillStyle (ETCutG x) = setFillStyle x
-
-instance ITAttMarker (Exist TCutG) where
-
-
-instance ITObject (Exist TCutG) where
-  getName (ETCutG x) = getName x
-  draw (ETCutG x) = draw x
-  findObject (ETCutG x) = findObject x
-  saveAs (ETCutG x) = saveAs x
-  write (ETCutG x) = write x
-  isA (ETCutG x) = isA x
-  printObj (ETCutG x) = printObj x
-
-instance IDeletable (Exist TCutG) where
-  delete (ETCutG x) = delete x
-
-instance ITGraphBentErrors (Exist TGraphBentErrors) where
-
-
-instance ITGraph (Exist TGraphBentErrors) where
-
-
-instance ITNamed (Exist TGraphBentErrors) where
-  setTitle (ETGraphBentErrors x) = setTitle x
-
-instance ITAttLine (Exist TGraphBentErrors) where
-  setLineColor (ETGraphBentErrors x) = setLineColor x
-
-instance ITAttFill (Exist TGraphBentErrors) where
-  setFillColor (ETGraphBentErrors x) = setFillColor x
-  setFillStyle (ETGraphBentErrors x) = setFillStyle x
-
-instance ITAttMarker (Exist TGraphBentErrors) where
-
-
-instance ITObject (Exist TGraphBentErrors) where
-  getName (ETGraphBentErrors x) = getName x
-  draw (ETGraphBentErrors x) = draw x
-  findObject (ETGraphBentErrors x) = findObject x
-  saveAs (ETGraphBentErrors x) = saveAs x
-  write (ETGraphBentErrors x) = write x
-  isA (ETGraphBentErrors x) = isA x
-  printObj (ETGraphBentErrors x) = printObj x
-
-instance IDeletable (Exist TGraphBentErrors) where
-  delete (ETGraphBentErrors x) = delete x
-
-instance ITGraphErrors (Exist TGraphErrors) where
-
-
-instance ITGraph (Exist TGraphErrors) where
-
-
-instance ITNamed (Exist TGraphErrors) where
-  setTitle (ETGraphErrors x) = setTitle x
-
-instance ITAttLine (Exist TGraphErrors) where
-  setLineColor (ETGraphErrors x) = setLineColor x
-
-instance ITAttFill (Exist TGraphErrors) where
-  setFillColor (ETGraphErrors x) = setFillColor x
-  setFillStyle (ETGraphErrors x) = setFillStyle x
-
-instance ITAttMarker (Exist TGraphErrors) where
-
-
-instance ITObject (Exist TGraphErrors) where
-  getName (ETGraphErrors x) = getName x
-  draw (ETGraphErrors x) = draw x
-  findObject (ETGraphErrors x) = findObject x
-  saveAs (ETGraphErrors x) = saveAs x
-  write (ETGraphErrors x) = write x
-  isA (ETGraphErrors x) = isA x
-  printObj (ETGraphErrors x) = printObj x
-
-instance IDeletable (Exist TGraphErrors) where
-  delete (ETGraphErrors x) = delete x
-
-instance ITGraphPolar (Exist TGraphPolar) where
-
-
-instance ITGraphErrors (Exist TGraphPolar) where
-
-
-instance ITGraph (Exist TGraphPolar) where
-
-
-instance ITNamed (Exist TGraphPolar) where
-  setTitle (ETGraphPolar x) = setTitle x
-
-instance ITAttLine (Exist TGraphPolar) where
-  setLineColor (ETGraphPolar x) = setLineColor x
-
-instance ITAttFill (Exist TGraphPolar) where
-  setFillColor (ETGraphPolar x) = setFillColor x
-  setFillStyle (ETGraphPolar x) = setFillStyle x
-
-instance ITAttMarker (Exist TGraphPolar) where
-
-
-instance ITObject (Exist TGraphPolar) where
-  getName (ETGraphPolar x) = getName x
-  draw (ETGraphPolar x) = draw x
-  findObject (ETGraphPolar x) = findObject x
-  saveAs (ETGraphPolar x) = saveAs x
-  write (ETGraphPolar x) = write x
-  isA (ETGraphPolar x) = isA x
-  printObj (ETGraphPolar x) = printObj x
-
-instance IDeletable (Exist TGraphPolar) where
-  delete (ETGraphPolar x) = delete x
-
-instance ITGraphQQ (Exist TGraphQQ) where
-
-
-instance ITGraph (Exist TGraphQQ) where
-
-
-instance ITNamed (Exist TGraphQQ) where
-  setTitle (ETGraphQQ x) = setTitle x
-
-instance ITAttLine (Exist TGraphQQ) where
-  setLineColor (ETGraphQQ x) = setLineColor x
-
-instance ITAttFill (Exist TGraphQQ) where
-  setFillColor (ETGraphQQ x) = setFillColor x
-  setFillStyle (ETGraphQQ x) = setFillStyle x
-
-instance ITAttMarker (Exist TGraphQQ) where
-
-
-instance ITObject (Exist TGraphQQ) where
-  getName (ETGraphQQ x) = getName x
-  draw (ETGraphQQ x) = draw x
-  findObject (ETGraphQQ x) = findObject x
-  saveAs (ETGraphQQ x) = saveAs x
-  write (ETGraphQQ x) = write x
-  isA (ETGraphQQ x) = isA x
-  printObj (ETGraphQQ x) = printObj x
-
-instance IDeletable (Exist TGraphQQ) where
-  delete (ETGraphQQ x) = delete x
-
-instance ITEllipse (Exist TEllipse) where
-
-
-instance ITObject (Exist TEllipse) where
-  getName (ETEllipse x) = getName x
-  draw (ETEllipse x) = draw x
-  findObject (ETEllipse x) = findObject x
-  saveAs (ETEllipse x) = saveAs x
-  write (ETEllipse x) = write x
-  isA (ETEllipse x) = isA x
-  printObj (ETEllipse x) = printObj x
-
-instance ITAttLine (Exist TEllipse) where
-  setLineColor (ETEllipse x) = setLineColor x
-
-instance ITAttFill (Exist TEllipse) where
-  setFillColor (ETEllipse x) = setFillColor x
-  setFillStyle (ETEllipse x) = setFillStyle x
-
-instance IDeletable (Exist TEllipse) where
-  delete (ETEllipse x) = delete x
-
-instance ITArc (Exist TArc) where
-
-
-instance ITEllipse (Exist TArc) where
-
-
-instance ITObject (Exist TArc) where
-  getName (ETArc x) = getName x
-  draw (ETArc x) = draw x
-  findObject (ETArc x) = findObject x
-  saveAs (ETArc x) = saveAs x
-  write (ETArc x) = write x
-  isA (ETArc x) = isA x
-  printObj (ETArc x) = printObj x
-
-instance ITAttLine (Exist TArc) where
-  setLineColor (ETArc x) = setLineColor x
-
-instance ITAttFill (Exist TArc) where
-  setFillColor (ETArc x) = setFillColor x
-  setFillStyle (ETArc x) = setFillStyle x
-
-instance IDeletable (Exist TArc) where
-  delete (ETArc x) = delete x
-
-instance ITCrown (Exist TCrown) where
-
-
-instance ITEllipse (Exist TCrown) where
-
-
-instance ITObject (Exist TCrown) where
-  getName (ETCrown x) = getName x
-  draw (ETCrown x) = draw x
-  findObject (ETCrown x) = findObject x
-  saveAs (ETCrown x) = saveAs x
-  write (ETCrown x) = write x
-  isA (ETCrown x) = isA x
-  printObj (ETCrown x) = printObj x
-
-instance ITAttLine (Exist TCrown) where
-  setLineColor (ETCrown x) = setLineColor x
-
-instance ITAttFill (Exist TCrown) where
-  setFillColor (ETCrown x) = setFillColor x
-  setFillStyle (ETCrown x) = setFillStyle x
-
-instance IDeletable (Exist TCrown) where
-  delete (ETCrown x) = delete x
-
-instance ITLine (Exist TLine) where
-
-
-instance ITObject (Exist TLine) where
-  getName (ETLine x) = getName x
-  draw (ETLine x) = draw x
-  findObject (ETLine x) = findObject x
-  saveAs (ETLine x) = saveAs x
-  write (ETLine x) = write x
-  isA (ETLine x) = isA x
-  printObj (ETLine x) = printObj x
-
-instance ITAttLine (Exist TLine) where
-  setLineColor (ETLine x) = setLineColor x
-
-instance IDeletable (Exist TLine) where
-  delete (ETLine x) = delete x
-
-instance ITArrow (Exist TArrow) where
-
-
-instance ITLine (Exist TArrow) where
-
-
-instance ITAttFill (Exist TArrow) where
-  setFillColor (ETArrow x) = setFillColor x
-  setFillStyle (ETArrow x) = setFillStyle x
-
-instance ITObject (Exist TArrow) where
-  getName (ETArrow x) = getName x
-  draw (ETArrow x) = draw x
-  findObject (ETArrow x) = findObject x
-  saveAs (ETArrow x) = saveAs x
-  write (ETArrow x) = write x
-  isA (ETArrow x) = isA x
-  printObj (ETArrow x) = printObj x
-
-instance ITAttLine (Exist TArrow) where
-  setLineColor (ETArrow x) = setLineColor x
-
-instance IDeletable (Exist TArrow) where
-  delete (ETArrow x) = delete x
-
-instance ITGaxis (Exist TGaxis) where
-
-
-instance ITLine (Exist TGaxis) where
-
-
-instance ITAttText (Exist TGaxis) where
-  setTextColor (ETGaxis x) = setTextColor x
-  setTextAlign (ETGaxis x) = setTextAlign x
-  setTextSize (ETGaxis x) = setTextSize x
-
-instance ITObject (Exist TGaxis) where
-  getName (ETGaxis x) = getName x
-  draw (ETGaxis x) = draw x
-  findObject (ETGaxis x) = findObject x
-  saveAs (ETGaxis x) = saveAs x
-  write (ETGaxis x) = write x
-  isA (ETGaxis x) = isA x
-  printObj (ETGaxis x) = printObj x
-
-instance ITAttLine (Exist TGaxis) where
-  setLineColor (ETGaxis x) = setLineColor x
-
-instance IDeletable (Exist TGaxis) where
-  delete (ETGaxis x) = delete x
-
-instance ITShape (Exist TShape) where
-
-
-instance ITNamed (Exist TShape) where
-  setTitle (ETShape x) = setTitle x
-
-instance ITAttLine (Exist TShape) where
-  setLineColor (ETShape x) = setLineColor x
-
-instance ITAttFill (Exist TShape) where
-  setFillColor (ETShape x) = setFillColor x
-  setFillStyle (ETShape x) = setFillStyle x
-
-instance ITAtt3D (Exist TShape) where
-
-
-instance ITObject (Exist TShape) where
-  getName (ETShape x) = getName x
-  draw (ETShape x) = draw x
-  findObject (ETShape x) = findObject x
-  saveAs (ETShape x) = saveAs x
-  write (ETShape x) = write x
-  isA (ETShape x) = isA x
-  printObj (ETShape x) = printObj x
-
-instance IDeletable (Exist TShape) where
-  delete (ETShape x) = delete x
-
-instance ITBRIK (Exist TBRIK) where
-
-
-instance ITShape (Exist TBRIK) where
-
-
-instance ITNamed (Exist TBRIK) where
-  setTitle (ETBRIK x) = setTitle x
-
-instance ITAttLine (Exist TBRIK) where
-  setLineColor (ETBRIK x) = setLineColor x
-
-instance ITAttFill (Exist TBRIK) where
-  setFillColor (ETBRIK x) = setFillColor x
-  setFillStyle (ETBRIK x) = setFillStyle x
-
-instance ITAtt3D (Exist TBRIK) where
-
-
-instance ITObject (Exist TBRIK) where
-  getName (ETBRIK x) = getName x
-  draw (ETBRIK x) = draw x
-  findObject (ETBRIK x) = findObject x
-  saveAs (ETBRIK x) = saveAs x
-  write (ETBRIK x) = write x
-  isA (ETBRIK x) = isA x
-  printObj (ETBRIK x) = printObj x
-
-instance IDeletable (Exist TBRIK) where
-  delete (ETBRIK x) = delete x
-
-instance ITTUBE (Exist TTUBE) where
-
-
-instance ITShape (Exist TTUBE) where
-
-
-instance ITNamed (Exist TTUBE) where
-  setTitle (ETTUBE x) = setTitle x
-
-instance ITAttLine (Exist TTUBE) where
-  setLineColor (ETTUBE x) = setLineColor x
-
-instance ITAttFill (Exist TTUBE) where
-  setFillColor (ETTUBE x) = setFillColor x
-  setFillStyle (ETTUBE x) = setFillStyle x
-
-instance ITAtt3D (Exist TTUBE) where
-
-
-instance ITObject (Exist TTUBE) where
-  getName (ETTUBE x) = getName x
-  draw (ETTUBE x) = draw x
-  findObject (ETTUBE x) = findObject x
-  saveAs (ETTUBE x) = saveAs x
-  write (ETTUBE x) = write x
-  isA (ETTUBE x) = isA x
-  printObj (ETTUBE x) = printObj x
-
-instance IDeletable (Exist TTUBE) where
-  delete (ETTUBE x) = delete x
-
-instance ITPCON (Exist TPCON) where
-
-
-instance ITShape (Exist TPCON) where
-
-
-instance ITNamed (Exist TPCON) where
-  setTitle (ETPCON x) = setTitle x
-
-instance ITAttLine (Exist TPCON) where
-  setLineColor (ETPCON x) = setLineColor x
-
-instance ITAttFill (Exist TPCON) where
-  setFillColor (ETPCON x) = setFillColor x
-  setFillStyle (ETPCON x) = setFillStyle x
-
-instance ITAtt3D (Exist TPCON) where
-
-
-instance ITObject (Exist TPCON) where
-  getName (ETPCON x) = getName x
-  draw (ETPCON x) = draw x
-  findObject (ETPCON x) = findObject x
-  saveAs (ETPCON x) = saveAs x
-  write (ETPCON x) = write x
-  isA (ETPCON x) = isA x
-  printObj (ETPCON x) = printObj x
-
-instance IDeletable (Exist TPCON) where
-  delete (ETPCON x) = delete x
-
-instance ITSPHE (Exist TSPHE) where
-
-
-instance ITShape (Exist TSPHE) where
-
-
-instance ITNamed (Exist TSPHE) where
-  setTitle (ETSPHE x) = setTitle x
-
-instance ITAttLine (Exist TSPHE) where
-  setLineColor (ETSPHE x) = setLineColor x
-
-instance ITAttFill (Exist TSPHE) where
-  setFillColor (ETSPHE x) = setFillColor x
-  setFillStyle (ETSPHE x) = setFillStyle x
-
-instance ITAtt3D (Exist TSPHE) where
-
-
-instance ITObject (Exist TSPHE) where
-  getName (ETSPHE x) = getName x
-  draw (ETSPHE x) = draw x
-  findObject (ETSPHE x) = findObject x
-  saveAs (ETSPHE x) = saveAs x
-  write (ETSPHE x) = write x
-  isA (ETSPHE x) = isA x
-  printObj (ETSPHE x) = printObj x
-
-instance IDeletable (Exist TSPHE) where
-  delete (ETSPHE x) = delete x
-
-instance ITXTRU (Exist TXTRU) where
-
-
-instance ITShape (Exist TXTRU) where
-
-
-instance ITNamed (Exist TXTRU) where
-  setTitle (ETXTRU x) = setTitle x
-
-instance ITAttLine (Exist TXTRU) where
-  setLineColor (ETXTRU x) = setLineColor x
-
-instance ITAttFill (Exist TXTRU) where
-  setFillColor (ETXTRU x) = setFillColor x
-  setFillStyle (ETXTRU x) = setFillStyle x
-
-instance ITAtt3D (Exist TXTRU) where
-
-
-instance ITObject (Exist TXTRU) where
-  getName (ETXTRU x) = getName x
-  draw (ETXTRU x) = draw x
-  findObject (ETXTRU x) = findObject x
-  saveAs (ETXTRU x) = saveAs x
-  write (ETXTRU x) = write x
-  isA (ETXTRU x) = isA x
-  printObj (ETXTRU x) = printObj x
-
-instance IDeletable (Exist TXTRU) where
-  delete (ETXTRU x) = delete x
-
-instance ITBox (Exist TBox) where
-
-
-instance ITObject (Exist TBox) where
-  getName (ETBox x) = getName x
-  draw (ETBox x) = draw x
-  findObject (ETBox x) = findObject x
-  saveAs (ETBox x) = saveAs x
-  write (ETBox x) = write x
-  isA (ETBox x) = isA x
-  printObj (ETBox x) = printObj x
-
-instance ITAttLine (Exist TBox) where
-  setLineColor (ETBox x) = setLineColor x
-
-instance ITAttFill (Exist TBox) where
-  setFillColor (ETBox x) = setFillColor x
-  setFillStyle (ETBox x) = setFillStyle x
-
-instance IDeletable (Exist TBox) where
-  delete (ETBox x) = delete x
-
-instance ITPave (Exist TPave) where
-
-
-instance ITBox (Exist TPave) where
-
-
-instance ITObject (Exist TPave) where
-  getName (ETPave x) = getName x
-  draw (ETPave x) = draw x
-  findObject (ETPave x) = findObject x
-  saveAs (ETPave x) = saveAs x
-  write (ETPave x) = write x
-  isA (ETPave x) = isA x
-  printObj (ETPave x) = printObj x
-
-instance ITAttLine (Exist TPave) where
-  setLineColor (ETPave x) = setLineColor x
-
-instance ITAttFill (Exist TPave) where
-  setFillColor (ETPave x) = setFillColor x
-  setFillStyle (ETPave x) = setFillStyle x
-
-instance IDeletable (Exist TPave) where
-  delete (ETPave x) = delete x
-
-instance ITPaveText (Exist TPaveText) where
-
-
-instance ITPave (Exist TPaveText) where
-
-
-instance ITAttText (Exist TPaveText) where
-  setTextColor (ETPaveText x) = setTextColor x
-  setTextAlign (ETPaveText x) = setTextAlign x
-  setTextSize (ETPaveText x) = setTextSize x
-
-instance ITBox (Exist TPaveText) where
-
-
-instance ITObject (Exist TPaveText) where
-  getName (ETPaveText x) = getName x
-  draw (ETPaveText x) = draw x
-  findObject (ETPaveText x) = findObject x
-  saveAs (ETPaveText x) = saveAs x
-  write (ETPaveText x) = write x
-  isA (ETPaveText x) = isA x
-  printObj (ETPaveText x) = printObj x
-
-instance ITAttLine (Exist TPaveText) where
-  setLineColor (ETPaveText x) = setLineColor x
-
-instance ITAttFill (Exist TPaveText) where
-  setFillColor (ETPaveText x) = setFillColor x
-  setFillStyle (ETPaveText x) = setFillStyle x
-
-instance IDeletable (Exist TPaveText) where
-  delete (ETPaveText x) = delete x
-
-instance ITDiamond (Exist TDiamond) where
-
-
-instance ITPaveText (Exist TDiamond) where
-
-
-instance ITPave (Exist TDiamond) where
-
-
-instance ITAttText (Exist TDiamond) where
-  setTextColor (ETDiamond x) = setTextColor x
-  setTextAlign (ETDiamond x) = setTextAlign x
-  setTextSize (ETDiamond x) = setTextSize x
-
-instance ITBox (Exist TDiamond) where
-
-
-instance ITObject (Exist TDiamond) where
-  getName (ETDiamond x) = getName x
-  draw (ETDiamond x) = draw x
-  findObject (ETDiamond x) = findObject x
-  saveAs (ETDiamond x) = saveAs x
-  write (ETDiamond x) = write x
-  isA (ETDiamond x) = isA x
-  printObj (ETDiamond x) = printObj x
-
-instance ITAttLine (Exist TDiamond) where
-  setLineColor (ETDiamond x) = setLineColor x
-
-instance ITAttFill (Exist TDiamond) where
-  setFillColor (ETDiamond x) = setFillColor x
-  setFillStyle (ETDiamond x) = setFillStyle x
-
-instance IDeletable (Exist TDiamond) where
-  delete (ETDiamond x) = delete x
-
-instance ITPaveStats (Exist TPaveStats) where
-
-
-instance ITPaveText (Exist TPaveStats) where
-
-
-instance ITPave (Exist TPaveStats) where
-
-
-instance ITAttText (Exist TPaveStats) where
-  setTextColor (ETPaveStats x) = setTextColor x
-  setTextAlign (ETPaveStats x) = setTextAlign x
-  setTextSize (ETPaveStats x) = setTextSize x
-
-instance ITBox (Exist TPaveStats) where
-
-
-instance ITObject (Exist TPaveStats) where
-  getName (ETPaveStats x) = getName x
-  draw (ETPaveStats x) = draw x
-  findObject (ETPaveStats x) = findObject x
-  saveAs (ETPaveStats x) = saveAs x
-  write (ETPaveStats x) = write x
-  isA (ETPaveStats x) = isA x
-  printObj (ETPaveStats x) = printObj x
-
-instance ITAttLine (Exist TPaveStats) where
-  setLineColor (ETPaveStats x) = setLineColor x
-
-instance ITAttFill (Exist TPaveStats) where
-  setFillColor (ETPaveStats x) = setFillColor x
-  setFillStyle (ETPaveStats x) = setFillStyle x
-
-instance IDeletable (Exist TPaveStats) where
-  delete (ETPaveStats x) = delete x
-
-instance ITPavesText (Exist TPavesText) where
-
-
-instance ITPaveText (Exist TPavesText) where
-
-
-instance ITPave (Exist TPavesText) where
-
-
-instance ITAttText (Exist TPavesText) where
-  setTextColor (ETPavesText x) = setTextColor x
-  setTextAlign (ETPavesText x) = setTextAlign x
-  setTextSize (ETPavesText x) = setTextSize x
-
-instance ITBox (Exist TPavesText) where
-
-
-instance ITObject (Exist TPavesText) where
-  getName (ETPavesText x) = getName x
-  draw (ETPavesText x) = draw x
-  findObject (ETPavesText x) = findObject x
-  saveAs (ETPavesText x) = saveAs x
-  write (ETPavesText x) = write x
-  isA (ETPavesText x) = isA x
-  printObj (ETPavesText x) = printObj x
-
-instance ITAttLine (Exist TPavesText) where
-  setLineColor (ETPavesText x) = setLineColor x
-
-instance ITAttFill (Exist TPavesText) where
-  setFillColor (ETPavesText x) = setFillColor x
-  setFillStyle (ETPavesText x) = setFillStyle x
-
-instance IDeletable (Exist TPavesText) where
-  delete (ETPavesText x) = delete x
-
-instance ITLegend (Exist TLegend) where
-  addEntry (ETLegend x) = addEntry x
-
-instance ITPave (Exist TLegend) where
-
-
-instance ITAttText (Exist TLegend) where
-  setTextColor (ETLegend x) = setTextColor x
-  setTextAlign (ETLegend x) = setTextAlign x
-  setTextSize (ETLegend x) = setTextSize x
-
-instance ITBox (Exist TLegend) where
-
-
-instance ITObject (Exist TLegend) where
-  getName (ETLegend x) = getName x
-  draw (ETLegend x) = draw x
-  findObject (ETLegend x) = findObject x
-  saveAs (ETLegend x) = saveAs x
-  write (ETLegend x) = write x
-  isA (ETLegend x) = isA x
-  printObj (ETLegend x) = printObj x
-
-instance ITAttLine (Exist TLegend) where
-  setLineColor (ETLegend x) = setLineColor x
-
-instance ITAttFill (Exist TLegend) where
-  setFillColor (ETLegend x) = setFillColor x
-  setFillStyle (ETLegend x) = setFillStyle x
-
-instance IDeletable (Exist TLegend) where
-  delete (ETLegend x) = delete x
-
-instance ITLegendEntry (Exist TLegendEntry) where
-
-
-instance ITObject (Exist TLegendEntry) where
-  getName (ETLegendEntry x) = getName x
-  draw (ETLegendEntry x) = draw x
-  findObject (ETLegendEntry x) = findObject x
-  saveAs (ETLegendEntry x) = saveAs x
-  write (ETLegendEntry x) = write x
-  isA (ETLegendEntry x) = isA x
-  printObj (ETLegendEntry x) = printObj x
-
-instance ITAttText (Exist TLegendEntry) where
-  setTextColor (ETLegendEntry x) = setTextColor x
-  setTextAlign (ETLegendEntry x) = setTextAlign x
-  setTextSize (ETLegendEntry x) = setTextSize x
-
-instance ITAttLine (Exist TLegendEntry) where
-  setLineColor (ETLegendEntry x) = setLineColor x
-
-instance ITAttFill (Exist TLegendEntry) where
-  setFillColor (ETLegendEntry x) = setFillColor x
-  setFillStyle (ETLegendEntry x) = setFillStyle x
-
-instance ITAttMarker (Exist TLegendEntry) where
-
-
-instance IDeletable (Exist TLegendEntry) where
-  delete (ETLegendEntry x) = delete x
-
-instance ITPaveLabel (Exist TPaveLabel) where
-
-
-instance ITPave (Exist TPaveLabel) where
-
-
-instance ITAttText (Exist TPaveLabel) where
-  setTextColor (ETPaveLabel x) = setTextColor x
-  setTextAlign (ETPaveLabel x) = setTextAlign x
-  setTextSize (ETPaveLabel x) = setTextSize x
-
-instance ITBox (Exist TPaveLabel) where
-
-
-instance ITObject (Exist TPaveLabel) where
-  getName (ETPaveLabel x) = getName x
-  draw (ETPaveLabel x) = draw x
-  findObject (ETPaveLabel x) = findObject x
-  saveAs (ETPaveLabel x) = saveAs x
-  write (ETPaveLabel x) = write x
-  isA (ETPaveLabel x) = isA x
-  printObj (ETPaveLabel x) = printObj x
-
-instance ITAttLine (Exist TPaveLabel) where
-  setLineColor (ETPaveLabel x) = setLineColor x
-
-instance ITAttFill (Exist TPaveLabel) where
-  setFillColor (ETPaveLabel x) = setFillColor x
-  setFillStyle (ETPaveLabel x) = setFillStyle x
-
-instance IDeletable (Exist TPaveLabel) where
-  delete (ETPaveLabel x) = delete x
-
-instance ITPaveClass (Exist TPaveClass) where
-
-
-instance ITPaveLabel (Exist TPaveClass) where
-
-
-instance ITPave (Exist TPaveClass) where
-
-
-instance ITAttText (Exist TPaveClass) where
-  setTextColor (ETPaveClass x) = setTextColor x
-  setTextAlign (ETPaveClass x) = setTextAlign x
-  setTextSize (ETPaveClass x) = setTextSize x
-
-instance ITBox (Exist TPaveClass) where
-
-
-instance ITObject (Exist TPaveClass) where
-  getName (ETPaveClass x) = getName x
-  draw (ETPaveClass x) = draw x
-  findObject (ETPaveClass x) = findObject x
-  saveAs (ETPaveClass x) = saveAs x
-  write (ETPaveClass x) = write x
-  isA (ETPaveClass x) = isA x
-  printObj (ETPaveClass x) = printObj x
-
-instance ITAttLine (Exist TPaveClass) where
-  setLineColor (ETPaveClass x) = setLineColor x
-
-instance ITAttFill (Exist TPaveClass) where
-  setFillColor (ETPaveClass x) = setFillColor x
-  setFillStyle (ETPaveClass x) = setFillStyle x
-
-instance IDeletable (Exist TPaveClass) where
-  delete (ETPaveClass x) = delete x
-
-instance ITWbox (Exist TWbox) where
-  setBorderMode (ETWbox x) = setBorderMode x
-
-instance ITBox (Exist TWbox) where
-
-
-instance ITObject (Exist TWbox) where
-  getName (ETWbox x) = getName x
-  draw (ETWbox x) = draw x
-  findObject (ETWbox x) = findObject x
-  saveAs (ETWbox x) = saveAs x
-  write (ETWbox x) = write x
-  isA (ETWbox x) = isA x
-  printObj (ETWbox x) = printObj x
-
-instance ITAttLine (Exist TWbox) where
-  setLineColor (ETWbox x) = setLineColor x
-
-instance ITAttFill (Exist TWbox) where
-  setFillColor (ETWbox x) = setFillColor x
-  setFillStyle (ETWbox x) = setFillStyle x
-
-instance IDeletable (Exist TWbox) where
-  delete (ETWbox x) = delete x
-
-instance ITFrame (Exist TFrame) where
-
-
-instance ITWbox (Exist TFrame) where
-  setBorderMode (ETFrame x) = setBorderMode x
-
-instance ITBox (Exist TFrame) where
-
-
-instance ITObject (Exist TFrame) where
-  getName (ETFrame x) = getName x
-  draw (ETFrame x) = draw x
-  findObject (ETFrame x) = findObject x
-  saveAs (ETFrame x) = saveAs x
-  write (ETFrame x) = write x
-  isA (ETFrame x) = isA x
-  printObj (ETFrame x) = printObj x
-
-instance ITAttLine (Exist TFrame) where
-  setLineColor (ETFrame x) = setLineColor x
-
-instance ITAttFill (Exist TFrame) where
-  setFillColor (ETFrame x) = setFillColor x
-  setFillStyle (ETFrame x) = setFillStyle x
-
-instance IDeletable (Exist TFrame) where
-  delete (ETFrame x) = delete x
-
-instance ITSliderBox (Exist TSliderBox) where
-
-
-instance ITWbox (Exist TSliderBox) where
-  setBorderMode (ETSliderBox x) = setBorderMode x
-
-instance ITBox (Exist TSliderBox) where
-
-
-instance ITObject (Exist TSliderBox) where
-  getName (ETSliderBox x) = getName x
-  draw (ETSliderBox x) = draw x
-  findObject (ETSliderBox x) = findObject x
-  saveAs (ETSliderBox x) = saveAs x
-  write (ETSliderBox x) = write x
-  isA (ETSliderBox x) = isA x
-  printObj (ETSliderBox x) = printObj x
-
-instance ITAttLine (Exist TSliderBox) where
-  setLineColor (ETSliderBox x) = setLineColor x
-
-instance ITAttFill (Exist TSliderBox) where
-  setFillColor (ETSliderBox x) = setFillColor x
-  setFillStyle (ETSliderBox x) = setFillStyle x
-
-instance IDeletable (Exist TSliderBox) where
-  delete (ETSliderBox x) = delete x
-
-instance ITTree (Exist TTree) where
-
-
-instance ITNamed (Exist TTree) where
-  setTitle (ETTree x) = setTitle x
-
-instance ITAttLine (Exist TTree) where
-  setLineColor (ETTree x) = setLineColor x
-
-instance ITAttFill (Exist TTree) where
-  setFillColor (ETTree x) = setFillColor x
-  setFillStyle (ETTree x) = setFillStyle x
-
-instance ITAttMarker (Exist TTree) where
-
-
-instance ITObject (Exist TTree) where
-  getName (ETTree x) = getName x
-  draw (ETTree x) = draw x
-  findObject (ETTree x) = findObject x
-  saveAs (ETTree x) = saveAs x
-  write (ETTree x) = write x
-  isA (ETTree x) = isA x
-  printObj (ETTree x) = printObj x
-
-instance IDeletable (Exist TTree) where
-  delete (ETTree x) = delete x
-
-instance ITChain (Exist TChain) where
-
-
-instance ITTree (Exist TChain) where
-
-
-instance ITNamed (Exist TChain) where
-  setTitle (ETChain x) = setTitle x
-
-instance ITAttLine (Exist TChain) where
-  setLineColor (ETChain x) = setLineColor x
-
-instance ITAttFill (Exist TChain) where
-  setFillColor (ETChain x) = setFillColor x
-  setFillStyle (ETChain x) = setFillStyle x
-
-instance ITAttMarker (Exist TChain) where
-
-
-instance ITObject (Exist TChain) where
-  getName (ETChain x) = getName x
-  draw (ETChain x) = draw x
-  findObject (ETChain x) = findObject x
-  saveAs (ETChain x) = saveAs x
-  write (ETChain x) = write x
-  isA (ETChain x) = isA x
-  printObj (ETChain x) = printObj x
-
-instance IDeletable (Exist TChain) where
-  delete (ETChain x) = delete x
-
-instance ITNtuple (Exist TNtuple) where
-
-
-instance ITTree (Exist TNtuple) where
-
-
-instance ITNamed (Exist TNtuple) where
-  setTitle (ETNtuple x) = setTitle x
-
-instance ITAttLine (Exist TNtuple) where
-  setLineColor (ETNtuple x) = setLineColor x
-
-instance ITAttFill (Exist TNtuple) where
-  setFillColor (ETNtuple x) = setFillColor x
-  setFillStyle (ETNtuple x) = setFillStyle x
-
-instance ITAttMarker (Exist TNtuple) where
-
-
-instance ITObject (Exist TNtuple) where
-  getName (ETNtuple x) = getName x
-  draw (ETNtuple x) = draw x
-  findObject (ETNtuple x) = findObject x
-  saveAs (ETNtuple x) = saveAs x
-  write (ETNtuple x) = write x
-  isA (ETNtuple x) = isA x
-  printObj (ETNtuple x) = printObj x
-
-instance IDeletable (Exist TNtuple) where
-  delete (ETNtuple x) = delete x
-
-instance ITNtupleD (Exist TNtupleD) where
-
-
-instance ITTree (Exist TNtupleD) where
-
-
-instance ITNamed (Exist TNtupleD) where
-  setTitle (ETNtupleD x) = setTitle x
-
-instance ITAttLine (Exist TNtupleD) where
-  setLineColor (ETNtupleD x) = setLineColor x
-
-instance ITAttFill (Exist TNtupleD) where
-  setFillColor (ETNtupleD x) = setFillColor x
-  setFillStyle (ETNtupleD x) = setFillStyle x
-
-instance ITAttMarker (Exist TNtupleD) where
-
-
-instance ITObject (Exist TNtupleD) where
-  getName (ETNtupleD x) = getName x
-  draw (ETNtupleD x) = draw x
-  findObject (ETNtupleD x) = findObject x
-  saveAs (ETNtupleD x) = saveAs x
-  write (ETNtupleD x) = write x
-  isA (ETNtupleD x) = isA x
-  printObj (ETNtupleD x) = printObj x
-
-instance IDeletable (Exist TNtupleD) where
-  delete (ETNtupleD x) = delete x
-
-instance ITTreeSQL (Exist TTreeSQL) where
-
-
-instance ITTree (Exist TTreeSQL) where
-
-
-instance ITNamed (Exist TTreeSQL) where
-  setTitle (ETTreeSQL x) = setTitle x
-
-instance ITAttLine (Exist TTreeSQL) where
-  setLineColor (ETTreeSQL x) = setLineColor x
-
-instance ITAttFill (Exist TTreeSQL) where
-  setFillColor (ETTreeSQL x) = setFillColor x
-  setFillStyle (ETTreeSQL x) = setFillStyle x
-
-instance ITAttMarker (Exist TTreeSQL) where
-
-
-instance ITObject (Exist TTreeSQL) where
-  getName (ETTreeSQL x) = getName x
-  draw (ETTreeSQL x) = draw x
-  findObject (ETTreeSQL x) = findObject x
-  saveAs (ETTreeSQL x) = saveAs x
-  write (ETTreeSQL x) = write x
-  isA (ETTreeSQL x) = isA x
-  printObj (ETTreeSQL x) = printObj x
-
-instance IDeletable (Exist TTreeSQL) where
-  delete (ETTreeSQL x) = delete x
-
-instance ITPolyLine (Exist TPolyLine) where
-
-
-instance ITObject (Exist TPolyLine) where
-  getName (ETPolyLine x) = getName x
-  draw (ETPolyLine x) = draw x
-  findObject (ETPolyLine x) = findObject x
-  saveAs (ETPolyLine x) = saveAs x
-  write (ETPolyLine x) = write x
-  isA (ETPolyLine x) = isA x
-  printObj (ETPolyLine x) = printObj x
-
-instance ITAttLine (Exist TPolyLine) where
-  setLineColor (ETPolyLine x) = setLineColor x
-
-instance ITAttFill (Exist TPolyLine) where
-  setFillColor (ETPolyLine x) = setFillColor x
-  setFillStyle (ETPolyLine x) = setFillStyle x
-
-instance IDeletable (Exist TPolyLine) where
-  delete (ETPolyLine x) = delete x
-
-instance ITCurlyLine (Exist TCurlyLine) where
-
-
-instance ITPolyLine (Exist TCurlyLine) where
-
-
-instance ITObject (Exist TCurlyLine) where
-  getName (ETCurlyLine x) = getName x
-  draw (ETCurlyLine x) = draw x
-  findObject (ETCurlyLine x) = findObject x
-  saveAs (ETCurlyLine x) = saveAs x
-  write (ETCurlyLine x) = write x
-  isA (ETCurlyLine x) = isA x
-  printObj (ETCurlyLine x) = printObj x
-
-instance ITAttLine (Exist TCurlyLine) where
-  setLineColor (ETCurlyLine x) = setLineColor x
-
-instance ITAttFill (Exist TCurlyLine) where
-  setFillColor (ETCurlyLine x) = setFillColor x
-  setFillStyle (ETCurlyLine x) = setFillStyle x
-
-instance IDeletable (Exist TCurlyLine) where
-  delete (ETCurlyLine x) = delete x
-
-instance ITCurlyArc (Exist TCurlyArc) where
-
-
-instance ITCurlyLine (Exist TCurlyArc) where
-
-
-instance ITPolyLine (Exist TCurlyArc) where
-
-
-instance ITObject (Exist TCurlyArc) where
-  getName (ETCurlyArc x) = getName x
-  draw (ETCurlyArc x) = draw x
-  findObject (ETCurlyArc x) = findObject x
-  saveAs (ETCurlyArc x) = saveAs x
-  write (ETCurlyArc x) = write x
-  isA (ETCurlyArc x) = isA x
-  printObj (ETCurlyArc x) = printObj x
-
-instance ITAttLine (Exist TCurlyArc) where
-  setLineColor (ETCurlyArc x) = setLineColor x
-
-instance ITAttFill (Exist TCurlyArc) where
-  setFillColor (ETCurlyArc x) = setFillColor x
-  setFillStyle (ETCurlyArc x) = setFillStyle x
-
-instance IDeletable (Exist TCurlyArc) where
-  delete (ETCurlyArc x) = delete x
-
-instance ITEfficiency (Exist TEfficiency) where
-
-
-instance ITNamed (Exist TEfficiency) where
-  setTitle (ETEfficiency x) = setTitle x
-
-instance ITAttLine (Exist TEfficiency) where
-  setLineColor (ETEfficiency x) = setLineColor x
-
-instance ITAttFill (Exist TEfficiency) where
-  setFillColor (ETEfficiency x) = setFillColor x
-  setFillStyle (ETEfficiency x) = setFillStyle x
-
-instance ITAttMarker (Exist TEfficiency) where
-
-
-instance ITObject (Exist TEfficiency) where
-  getName (ETEfficiency x) = getName x
-  draw (ETEfficiency x) = draw x
-  findObject (ETEfficiency x) = findObject x
-  saveAs (ETEfficiency x) = saveAs x
-  write (ETEfficiency x) = write x
-  isA (ETEfficiency x) = isA x
-  printObj (ETEfficiency x) = printObj x
-
-instance IDeletable (Exist TEfficiency) where
-  delete (ETEfficiency x) = delete x
-
-instance ITAxis (Exist TAxis) where
-  setTimeDisplay (ETAxis x) = setTimeDisplay x
-  setTimeFormat (ETAxis x) = setTimeFormat x
-  setTimeOffset (ETAxis x) = setTimeOffset x
-
-instance ITNamed (Exist TAxis) where
-  setTitle (ETAxis x) = setTitle x
-
-instance ITAttAxis (Exist TAxis) where
-  setLabelColor (ETAxis x) = setLabelColor x
-  setLabelSize (ETAxis x) = setLabelSize x
-  setTickLength (ETAxis x) = setTickLength x
-  setTitleOffset (ETAxis x) = setTitleOffset x
-  setNdivisions (ETAxis x) = setNdivisions x
-
-instance ITObject (Exist TAxis) where
-  getName (ETAxis x) = getName x
-  draw (ETAxis x) = draw x
-  findObject (ETAxis x) = findObject x
-  saveAs (ETAxis x) = saveAs x
-  write (ETAxis x) = write x
-  isA (ETAxis x) = isA x
-  printObj (ETAxis x) = printObj x
-
-instance IDeletable (Exist TAxis) where
-  delete (ETAxis x) = delete x
-
-instance ITLatex (Exist TLatex) where
-
-
-instance ITText (Exist TLatex) where
-
-
-instance ITAttLine (Exist TLatex) where
-  setLineColor (ETLatex x) = setLineColor x
-
-instance ITNamed (Exist TLatex) where
-  setTitle (ETLatex x) = setTitle x
-
-instance ITAttText (Exist TLatex) where
-  setTextColor (ETLatex x) = setTextColor x
-  setTextAlign (ETLatex x) = setTextAlign x
-  setTextSize (ETLatex x) = setTextSize x
-
-instance ITObject (Exist TLatex) where
-  getName (ETLatex x) = getName x
-  draw (ETLatex x) = draw x
-  findObject (ETLatex x) = findObject x
-  saveAs (ETLatex x) = saveAs x
-  write (ETLatex x) = write x
-  isA (ETLatex x) = isA x
-  printObj (ETLatex x) = printObj x
-
-instance IDeletable (Exist TLatex) where
-  delete (ETLatex x) = delete x
-
-instance ITText (Exist TText) where
-
-
-instance ITNamed (Exist TText) where
-  setTitle (ETText x) = setTitle x
-
-instance ITAttText (Exist TText) where
-  setTextColor (ETText x) = setTextColor x
-  setTextAlign (ETText x) = setTextAlign x
-  setTextSize (ETText x) = setTextSize x
-
-instance ITObject (Exist TText) where
-  getName (ETText x) = getName x
-  draw (ETText x) = draw x
-  findObject (ETText x) = findObject x
-  saveAs (ETText x) = saveAs x
-  write (ETText x) = write x
-  isA (ETText x) = isA x
-  printObj (ETText x) = printObj x
-
-instance IDeletable (Exist TText) where
-  delete (ETText x) = delete x
-
-instance ITDirectory (Exist TDirectory) where
-  append (ETDirectory x) = append x
-  addD (ETDirectory x) = addD x
-  appendKey (ETDirectory x) = appendKey x
-  close (ETDirectory x) = close x
-  get (ETDirectory x) = get x
-
-instance ITNamed (Exist TDirectory) where
-  setTitle (ETDirectory x) = setTitle x
-
-instance ITObject (Exist TDirectory) where
-  getName (ETDirectory x) = getName x
-  draw (ETDirectory x) = draw x
-  findObject (ETDirectory x) = findObject x
-  saveAs (ETDirectory x) = saveAs x
-  write (ETDirectory x) = write x
-  isA (ETDirectory x) = isA x
-  printObj (ETDirectory x) = printObj x
-
-instance IDeletable (Exist TDirectory) where
-  delete (ETDirectory x) = delete x
-
-instance ITDirectoryFile (Exist TDirectoryFile) where
-  getListOfKeys (ETDirectoryFile x) = getListOfKeys x
-
-instance ITDirectory (Exist TDirectoryFile) where
-  append (ETDirectoryFile x) = append x
-  addD (ETDirectoryFile x) = addD x
-  appendKey (ETDirectoryFile x) = appendKey x
-  close (ETDirectoryFile x) = close x
-  get (ETDirectoryFile x) = get x
-
-instance ITNamed (Exist TDirectoryFile) where
-  setTitle (ETDirectoryFile x) = setTitle x
-
-instance ITObject (Exist TDirectoryFile) where
-  getName (ETDirectoryFile x) = getName x
-  draw (ETDirectoryFile x) = draw x
-  findObject (ETDirectoryFile x) = findObject x
-  saveAs (ETDirectoryFile x) = saveAs x
-  write (ETDirectoryFile x) = write x
-  isA (ETDirectoryFile x) = isA x
-  printObj (ETDirectoryFile x) = printObj x
-
-instance IDeletable (Exist TDirectoryFile) where
-  delete (ETDirectoryFile x) = delete x
-
-instance ITFile (Exist TFile) where
-
-
-instance ITDirectoryFile (Exist TFile) where
-  getListOfKeys (ETFile x) = getListOfKeys x
-
-instance ITDirectory (Exist TFile) where
-  append (ETFile x) = append x
-  addD (ETFile x) = addD x
-  appendKey (ETFile x) = appendKey x
-  close (ETFile x) = close x
-  get (ETFile x) = get x
-
-instance ITNamed (Exist TFile) where
-  setTitle (ETFile x) = setTitle x
-
-instance ITObject (Exist TFile) where
-  getName (ETFile x) = getName x
-  draw (ETFile x) = draw x
-  findObject (ETFile x) = findObject x
-  saveAs (ETFile x) = saveAs x
-  write (ETFile x) = write x
-  isA (ETFile x) = isA x
-  printObj (ETFile x) = printObj x
-
-instance IDeletable (Exist TFile) where
-  delete (ETFile x) = delete x
-
-instance ITBranch (Exist TBranch) where
-
-
-instance ITNamed (Exist TBranch) where
-  setTitle (ETBranch x) = setTitle x
-
-instance ITAttFill (Exist TBranch) where
-  setFillColor (ETBranch x) = setFillColor x
-  setFillStyle (ETBranch x) = setFillStyle x
-
-instance ITObject (Exist TBranch) where
-  getName (ETBranch x) = getName x
-  draw (ETBranch x) = draw x
-  findObject (ETBranch x) = findObject x
-  saveAs (ETBranch x) = saveAs x
-  write (ETBranch x) = write x
-  isA (ETBranch x) = isA x
-  printObj (ETBranch x) = printObj x
-
-instance IDeletable (Exist TBranch) where
-  delete (ETBranch x) = delete x
-
-instance ITVirtualTreePlayer (Exist TVirtualTreePlayer) where
-
-
-instance ITObject (Exist TVirtualTreePlayer) where
-  getName (ETVirtualTreePlayer x) = getName x
-  draw (ETVirtualTreePlayer x) = draw x
-  findObject (ETVirtualTreePlayer x) = findObject x
-  saveAs (ETVirtualTreePlayer x) = saveAs x
-  write (ETVirtualTreePlayer x) = write x
-  isA (ETVirtualTreePlayer x) = isA x
-  printObj (ETVirtualTreePlayer x) = printObj x
-
-instance IDeletable (Exist TVirtualTreePlayer) where
-  delete (ETVirtualTreePlayer x) = delete x
-
-instance ITTreePlayer (Exist TTreePlayer) where
-
-
-instance ITVirtualTreePlayer (Exist TTreePlayer) where
-
-
-instance ITObject (Exist TTreePlayer) where
-  getName (ETTreePlayer x) = getName x
-  draw (ETTreePlayer x) = draw x
-  findObject (ETTreePlayer x) = findObject x
-  saveAs (ETTreePlayer x) = saveAs x
-  write (ETTreePlayer x) = write x
-  isA (ETTreePlayer x) = isA x
-  printObj (ETTreePlayer x) = printObj x
-
-instance IDeletable (Exist TTreePlayer) where
-  delete (ETTreePlayer x) = delete x
-
-instance ITArray (Exist TArray) where
-
-
-instance IDeletable (Exist TArray) where
-  delete (ETArray x) = delete x
-
-instance ITArrayC (Exist TArrayC) where
-
-
-instance ITArray (Exist TArrayC) where
-
-
-instance IDeletable (Exist TArrayC) where
-  delete (ETArrayC x) = delete x
-
-instance ITArrayD (Exist TArrayD) where
-
-
-instance ITArray (Exist TArrayD) where
-
-
-instance IDeletable (Exist TArrayD) where
-  delete (ETArrayD x) = delete x
-
-instance ITArrayF (Exist TArrayF) where
-
-
-instance ITArray (Exist TArrayF) where
-
-
-instance IDeletable (Exist TArrayF) where
-  delete (ETArrayF x) = delete x
-
-instance ITArrayI (Exist TArrayI) where
-
-
-instance ITArray (Exist TArrayI) where
-
-
-instance IDeletable (Exist TArrayI) where
-  delete (ETArrayI x) = delete x
-
-instance ITArrayL (Exist TArrayL) where
-
-
-instance ITArray (Exist TArrayL) where
-
-
-instance IDeletable (Exist TArrayL) where
-  delete (ETArrayL x) = delete x
-
-instance ITArrayL64 (Exist TArrayL64) where
-
-
-instance ITArray (Exist TArrayL64) where
-
-
-instance IDeletable (Exist TArrayL64) where
-  delete (ETArrayL64 x) = delete x
-
-instance ITArrayS (Exist TArrayS) where
-
-
-instance ITArray (Exist TArrayS) where
-
-
-instance IDeletable (Exist TArrayS) where
-  delete (ETArrayS x) = delete x
-
-instance ITH1 (Exist TH1) where
-  add (ETH1 x) = add x
-  addBinContent (ETH1 x) = addBinContent x
-  chi2Test (ETH1 x) = chi2Test x
-  computeIntegral (ETH1 x) = computeIntegral x
-  directoryAutoAdd (ETH1 x) = directoryAutoAdd x
-  distancetoPrimitive (ETH1 x) = distancetoPrimitive x
-  divide (ETH1 x) = divide x
-  drawCopy (ETH1 x) a1 = return . ETH1 =<< drawCopy x a1
-  drawNormalized (ETH1 x) = drawNormalized x
-  drawPanel (ETH1 x) = drawPanel x
-  bufferEmpty (ETH1 x) = bufferEmpty x
-  eval (ETH1 x) = eval x
-  executeEvent (ETH1 x) = executeEvent x
-  fFT (ETH1 x) = fFT x
-  fill1 (ETH1 x) = fill1 x
-  fillN (ETH1 x) = fillN x
-  fillRandom (ETH1 x) = fillRandom x
-  findBin (ETH1 x) = findBin x
-  findFixBin (ETH1 x) = findFixBin x
-  findFirstBinAbove (ETH1 x) = findFirstBinAbove x
-  findLastBinAbove (ETH1 x) = findLastBinAbove x
-  fitPanel (ETH1 x) = fitPanel x
-  getNdivisions (ETH1 x) = getNdivisions x
-  getAxisColor (ETH1 x) = getAxisColor x
-  getLabelColor (ETH1 x) = getLabelColor x
-  getLabelFont (ETH1 x) = getLabelFont x
-  getLabelOffset (ETH1 x) = getLabelOffset x
-  getLabelSize (ETH1 x) = getLabelSize x
-  getTitleFont (ETH1 x) = getTitleFont x
-  getTitleOffset (ETH1 x) = getTitleOffset x
-  getTitleSize (ETH1 x) = getTitleSize x
-  getTickLength (ETH1 x) = getTickLength x
-  getBarOffset (ETH1 x) = getBarOffset x
-  getBarWidth (ETH1 x) = getBarWidth x
-  getContour (ETH1 x) = getContour x
-  getContourLevel (ETH1 x) = getContourLevel x
-  getContourLevelPad (ETH1 x) = getContourLevelPad x
-  getBin (ETH1 x) = getBin x
-  getBinCenter (ETH1 x) = getBinCenter x
-  getBinContent1 (ETH1 x) = getBinContent1 x
-  getBinContent2 (ETH1 x) = getBinContent2 x
-  getBinContent3 (ETH1 x) = getBinContent3 x
-  getBinError1 (ETH1 x) = getBinError1 x
-  getBinError2 (ETH1 x) = getBinError2 x
-  getBinError3 (ETH1 x) = getBinError3 x
-  getBinLowEdge (ETH1 x) = getBinLowEdge x
-  getBinWidth (ETH1 x) = getBinWidth x
-  getCellContent (ETH1 x) = getCellContent x
-  getCellError (ETH1 x) = getCellError x
-  scale (ETH1 x) = scale x
-  setAxisColor (ETH1 x) = setAxisColor x
-  setAxisRange (ETH1 x) = setAxisRange x
-  setBarOffset (ETH1 x) = setBarOffset x
-  setBarWidth (ETH1 x) = setBarWidth x
-  setBinContent1 (ETH1 x) = setBinContent1 x
-  setBinContent2 (ETH1 x) = setBinContent2 x
-  setBinContent3 (ETH1 x) = setBinContent3 x
-  setBinError1 (ETH1 x) = setBinError1 x
-  setBinError2 (ETH1 x) = setBinError2 x
-  setBinError3 (ETH1 x) = setBinError3 x
-  setBins1 (ETH1 x) = setBins1 x
-  setBins2 (ETH1 x) = setBins2 x
-  setBins3 (ETH1 x) = setBins3 x
-  setMaximum (ETH1 x) = setMaximum x
-  setMinimum (ETH1 x) = setMinimum x
-  setXTitle (ETH1 x) = setXTitle x
-  setYTitle (ETH1 x) = setYTitle x
-  setZTitle (ETH1 x) = setZTitle x
-
-instance ITNamed (Exist TH1) where
-  setTitle (ETH1 x) = setTitle x
-
-instance ITAttLine (Exist TH1) where
-  setLineColor (ETH1 x) = setLineColor x
-
-instance ITAttFill (Exist TH1) where
-  setFillColor (ETH1 x) = setFillColor x
-  setFillStyle (ETH1 x) = setFillStyle x
-
-instance ITAttMarker (Exist TH1) where
-
-
-instance ITObject (Exist TH1) where
-  getName (ETH1 x) = getName x
-  draw (ETH1 x) = draw x
-  findObject (ETH1 x) = findObject x
-  saveAs (ETH1 x) = saveAs x
-  write (ETH1 x) = write x
-  isA (ETH1 x) = isA x
-  printObj (ETH1 x) = printObj x
-
-instance IDeletable (Exist TH1) where
-  delete (ETH1 x) = delete x
-
-instance ITH2 (Exist TH2) where
-  fill2 (ETH2 x) = fill2 x
-  fillRandom2 (ETH2 x) = fillRandom2 x
-  findFirstBinAbove2 (ETH2 x) = findFirstBinAbove2 x
-  findLastBinAbove2 (ETH2 x) = findLastBinAbove2 x
-  fitSlicesX (ETH2 x) = fitSlicesX x
-  fitSlicesY (ETH2 x) = fitSlicesY x
-  getCorrelationFactor (ETH2 x) = getCorrelationFactor x
-  getCovariance (ETH2 x) = getCovariance x
-  getStats (ETH2 x) = getStats x
-  integral (ETH2 x) = integral x
-  interpolate (ETH2 x) = interpolate x
-  kolmogorovTest (ETH2 x) = kolmogorovTest x
-  rebinX (ETH2 x) = rebinX x
-  rebinY (ETH2 x) = rebinY x
-  rebin2D (ETH2 x) = rebin2D x
-  putStats (ETH2 x) = putStats x
-  reset (ETH2 x) = reset x
-  setShowProjectionX (ETH2 x) = setShowProjectionX x
-  setShowProjectionY (ETH2 x) = setShowProjectionY x
-  showBackground (ETH2 x) = showBackground x
-  showPeaks (ETH2 x) = showPeaks x
-  smooth (ETH2 x) = smooth x
-
-instance ITH1 (Exist TH2) where
-  add (ETH2 x) = add x
-  addBinContent (ETH2 x) = addBinContent x
-  chi2Test (ETH2 x) = chi2Test x
-  computeIntegral (ETH2 x) = computeIntegral x
-  directoryAutoAdd (ETH2 x) = directoryAutoAdd x
-  distancetoPrimitive (ETH2 x) = distancetoPrimitive x
-  divide (ETH2 x) = divide x
-  drawCopy (ETH2 x) a1 = return . ETH2 =<< drawCopy x a1
-  drawNormalized (ETH2 x) = drawNormalized x
-  drawPanel (ETH2 x) = drawPanel x
-  bufferEmpty (ETH2 x) = bufferEmpty x
-  eval (ETH2 x) = eval x
-  executeEvent (ETH2 x) = executeEvent x
-  fFT (ETH2 x) = fFT x
-  fill1 (ETH2 x) = fill1 x
-  fillN (ETH2 x) = fillN x
-  fillRandom (ETH2 x) = fillRandom x
-  findBin (ETH2 x) = findBin x
-  findFixBin (ETH2 x) = findFixBin x
-  findFirstBinAbove (ETH2 x) = findFirstBinAbove x
-  findLastBinAbove (ETH2 x) = findLastBinAbove x
-  fitPanel (ETH2 x) = fitPanel x
-  getNdivisions (ETH2 x) = getNdivisions x
-  getAxisColor (ETH2 x) = getAxisColor x
-  getLabelColor (ETH2 x) = getLabelColor x
-  getLabelFont (ETH2 x) = getLabelFont x
-  getLabelOffset (ETH2 x) = getLabelOffset x
-  getLabelSize (ETH2 x) = getLabelSize x
-  getTitleFont (ETH2 x) = getTitleFont x
-  getTitleOffset (ETH2 x) = getTitleOffset x
-  getTitleSize (ETH2 x) = getTitleSize x
-  getTickLength (ETH2 x) = getTickLength x
-  getBarOffset (ETH2 x) = getBarOffset x
-  getBarWidth (ETH2 x) = getBarWidth x
-  getContour (ETH2 x) = getContour x
-  getContourLevel (ETH2 x) = getContourLevel x
-  getContourLevelPad (ETH2 x) = getContourLevelPad x
-  getBin (ETH2 x) = getBin x
-  getBinCenter (ETH2 x) = getBinCenter x
-  getBinContent1 (ETH2 x) = getBinContent1 x
-  getBinContent2 (ETH2 x) = getBinContent2 x
-  getBinContent3 (ETH2 x) = getBinContent3 x
-  getBinError1 (ETH2 x) = getBinError1 x
-  getBinError2 (ETH2 x) = getBinError2 x
-  getBinError3 (ETH2 x) = getBinError3 x
-  getBinLowEdge (ETH2 x) = getBinLowEdge x
-  getBinWidth (ETH2 x) = getBinWidth x
-  getCellContent (ETH2 x) = getCellContent x
-  getCellError (ETH2 x) = getCellError x
-  scale (ETH2 x) = scale x
-  setAxisColor (ETH2 x) = setAxisColor x
-  setAxisRange (ETH2 x) = setAxisRange x
-  setBarOffset (ETH2 x) = setBarOffset x
-  setBarWidth (ETH2 x) = setBarWidth x
-  setBinContent1 (ETH2 x) = setBinContent1 x
-  setBinContent2 (ETH2 x) = setBinContent2 x
-  setBinContent3 (ETH2 x) = setBinContent3 x
-  setBinError1 (ETH2 x) = setBinError1 x
-  setBinError2 (ETH2 x) = setBinError2 x
-  setBinError3 (ETH2 x) = setBinError3 x
-  setBins1 (ETH2 x) = setBins1 x
-  setBins2 (ETH2 x) = setBins2 x
-  setBins3 (ETH2 x) = setBins3 x
-  setMaximum (ETH2 x) = setMaximum x
-  setMinimum (ETH2 x) = setMinimum x
-  setXTitle (ETH2 x) = setXTitle x
-  setYTitle (ETH2 x) = setYTitle x
-  setZTitle (ETH2 x) = setZTitle x
-
-instance ITNamed (Exist TH2) where
-  setTitle (ETH2 x) = setTitle x
-
-instance ITAttLine (Exist TH2) where
-  setLineColor (ETH2 x) = setLineColor x
-
-instance ITAttFill (Exist TH2) where
-  setFillColor (ETH2 x) = setFillColor x
-  setFillStyle (ETH2 x) = setFillStyle x
-
-instance ITAttMarker (Exist TH2) where
-
-
-instance ITObject (Exist TH2) where
-  getName (ETH2 x) = getName x
-  draw (ETH2 x) = draw x
-  findObject (ETH2 x) = findObject x
-  saveAs (ETH2 x) = saveAs x
-  write (ETH2 x) = write x
-  isA (ETH2 x) = isA x
-  printObj (ETH2 x) = printObj x
-
-instance IDeletable (Exist TH2) where
-  delete (ETH2 x) = delete x
-
-instance ITH3 (Exist TH3) where
-
-
-instance ITH1 (Exist TH3) where
-  add (ETH3 x) = add x
-  addBinContent (ETH3 x) = addBinContent x
-  chi2Test (ETH3 x) = chi2Test x
-  computeIntegral (ETH3 x) = computeIntegral x
-  directoryAutoAdd (ETH3 x) = directoryAutoAdd x
-  distancetoPrimitive (ETH3 x) = distancetoPrimitive x
-  divide (ETH3 x) = divide x
-  drawCopy (ETH3 x) a1 = return . ETH3 =<< drawCopy x a1
-  drawNormalized (ETH3 x) = drawNormalized x
-  drawPanel (ETH3 x) = drawPanel x
-  bufferEmpty (ETH3 x) = bufferEmpty x
-  eval (ETH3 x) = eval x
-  executeEvent (ETH3 x) = executeEvent x
-  fFT (ETH3 x) = fFT x
-  fill1 (ETH3 x) = fill1 x
-  fillN (ETH3 x) = fillN x
-  fillRandom (ETH3 x) = fillRandom x
-  findBin (ETH3 x) = findBin x
-  findFixBin (ETH3 x) = findFixBin x
-  findFirstBinAbove (ETH3 x) = findFirstBinAbove x
-  findLastBinAbove (ETH3 x) = findLastBinAbove x
-  fitPanel (ETH3 x) = fitPanel x
-  getNdivisions (ETH3 x) = getNdivisions x
-  getAxisColor (ETH3 x) = getAxisColor x
-  getLabelColor (ETH3 x) = getLabelColor x
-  getLabelFont (ETH3 x) = getLabelFont x
-  getLabelOffset (ETH3 x) = getLabelOffset x
-  getLabelSize (ETH3 x) = getLabelSize x
-  getTitleFont (ETH3 x) = getTitleFont x
-  getTitleOffset (ETH3 x) = getTitleOffset x
-  getTitleSize (ETH3 x) = getTitleSize x
-  getTickLength (ETH3 x) = getTickLength x
-  getBarOffset (ETH3 x) = getBarOffset x
-  getBarWidth (ETH3 x) = getBarWidth x
-  getContour (ETH3 x) = getContour x
-  getContourLevel (ETH3 x) = getContourLevel x
-  getContourLevelPad (ETH3 x) = getContourLevelPad x
-  getBin (ETH3 x) = getBin x
-  getBinCenter (ETH3 x) = getBinCenter x
-  getBinContent1 (ETH3 x) = getBinContent1 x
-  getBinContent2 (ETH3 x) = getBinContent2 x
-  getBinContent3 (ETH3 x) = getBinContent3 x
-  getBinError1 (ETH3 x) = getBinError1 x
-  getBinError2 (ETH3 x) = getBinError2 x
-  getBinError3 (ETH3 x) = getBinError3 x
-  getBinLowEdge (ETH3 x) = getBinLowEdge x
-  getBinWidth (ETH3 x) = getBinWidth x
-  getCellContent (ETH3 x) = getCellContent x
-  getCellError (ETH3 x) = getCellError x
-  scale (ETH3 x) = scale x
-  setAxisColor (ETH3 x) = setAxisColor x
-  setAxisRange (ETH3 x) = setAxisRange x
-  setBarOffset (ETH3 x) = setBarOffset x
-  setBarWidth (ETH3 x) = setBarWidth x
-  setBinContent1 (ETH3 x) = setBinContent1 x
-  setBinContent2 (ETH3 x) = setBinContent2 x
-  setBinContent3 (ETH3 x) = setBinContent3 x
-  setBinError1 (ETH3 x) = setBinError1 x
-  setBinError2 (ETH3 x) = setBinError2 x
-  setBinError3 (ETH3 x) = setBinError3 x
-  setBins1 (ETH3 x) = setBins1 x
-  setBins2 (ETH3 x) = setBins2 x
-  setBins3 (ETH3 x) = setBins3 x
-  setMaximum (ETH3 x) = setMaximum x
-  setMinimum (ETH3 x) = setMinimum x
-  setXTitle (ETH3 x) = setXTitle x
-  setYTitle (ETH3 x) = setYTitle x
-  setZTitle (ETH3 x) = setZTitle x
-
-instance ITAtt3D (Exist TH3) where
-
-
-instance ITNamed (Exist TH3) where
-  setTitle (ETH3 x) = setTitle x
-
-instance ITAttLine (Exist TH3) where
-  setLineColor (ETH3 x) = setLineColor x
-
-instance ITAttFill (Exist TH3) where
-  setFillColor (ETH3 x) = setFillColor x
-  setFillStyle (ETH3 x) = setFillStyle x
-
-instance ITAttMarker (Exist TH3) where
-
-
-instance ITObject (Exist TH3) where
-  getName (ETH3 x) = getName x
-  draw (ETH3 x) = draw x
-  findObject (ETH3 x) = findObject x
-  saveAs (ETH3 x) = saveAs x
-  write (ETH3 x) = write x
-  isA (ETH3 x) = isA x
-  printObj (ETH3 x) = printObj x
-
-instance IDeletable (Exist TH3) where
-  delete (ETH3 x) = delete x
-
-instance ITH1C (Exist TH1C) where
-
-
-instance ITH1 (Exist TH1C) where
-  add (ETH1C x) = add x
-  addBinContent (ETH1C x) = addBinContent x
-  chi2Test (ETH1C x) = chi2Test x
-  computeIntegral (ETH1C x) = computeIntegral x
-  directoryAutoAdd (ETH1C x) = directoryAutoAdd x
-  distancetoPrimitive (ETH1C x) = distancetoPrimitive x
-  divide (ETH1C x) = divide x
-  drawCopy (ETH1C x) a1 = return . ETH1C =<< drawCopy x a1
-  drawNormalized (ETH1C x) = drawNormalized x
-  drawPanel (ETH1C x) = drawPanel x
-  bufferEmpty (ETH1C x) = bufferEmpty x
-  eval (ETH1C x) = eval x
-  executeEvent (ETH1C x) = executeEvent x
-  fFT (ETH1C x) = fFT x
-  fill1 (ETH1C x) = fill1 x
-  fillN (ETH1C x) = fillN x
-  fillRandom (ETH1C x) = fillRandom x
-  findBin (ETH1C x) = findBin x
-  findFixBin (ETH1C x) = findFixBin x
-  findFirstBinAbove (ETH1C x) = findFirstBinAbove x
-  findLastBinAbove (ETH1C x) = findLastBinAbove x
-  fitPanel (ETH1C x) = fitPanel x
-  getNdivisions (ETH1C x) = getNdivisions x
-  getAxisColor (ETH1C x) = getAxisColor x
-  getLabelColor (ETH1C x) = getLabelColor x
-  getLabelFont (ETH1C x) = getLabelFont x
-  getLabelOffset (ETH1C x) = getLabelOffset x
-  getLabelSize (ETH1C x) = getLabelSize x
-  getTitleFont (ETH1C x) = getTitleFont x
-  getTitleOffset (ETH1C x) = getTitleOffset x
-  getTitleSize (ETH1C x) = getTitleSize x
-  getTickLength (ETH1C x) = getTickLength x
-  getBarOffset (ETH1C x) = getBarOffset x
-  getBarWidth (ETH1C x) = getBarWidth x
-  getContour (ETH1C x) = getContour x
-  getContourLevel (ETH1C x) = getContourLevel x
-  getContourLevelPad (ETH1C x) = getContourLevelPad x
-  getBin (ETH1C x) = getBin x
-  getBinCenter (ETH1C x) = getBinCenter x
-  getBinContent1 (ETH1C x) = getBinContent1 x
-  getBinContent2 (ETH1C x) = getBinContent2 x
-  getBinContent3 (ETH1C x) = getBinContent3 x
-  getBinError1 (ETH1C x) = getBinError1 x
-  getBinError2 (ETH1C x) = getBinError2 x
-  getBinError3 (ETH1C x) = getBinError3 x
-  getBinLowEdge (ETH1C x) = getBinLowEdge x
-  getBinWidth (ETH1C x) = getBinWidth x
-  getCellContent (ETH1C x) = getCellContent x
-  getCellError (ETH1C x) = getCellError x
-  scale (ETH1C x) = scale x
-  setAxisColor (ETH1C x) = setAxisColor x
-  setAxisRange (ETH1C x) = setAxisRange x
-  setBarOffset (ETH1C x) = setBarOffset x
-  setBarWidth (ETH1C x) = setBarWidth x
-  setBinContent1 (ETH1C x) = setBinContent1 x
-  setBinContent2 (ETH1C x) = setBinContent2 x
-  setBinContent3 (ETH1C x) = setBinContent3 x
-  setBinError1 (ETH1C x) = setBinError1 x
-  setBinError2 (ETH1C x) = setBinError2 x
-  setBinError3 (ETH1C x) = setBinError3 x
-  setBins1 (ETH1C x) = setBins1 x
-  setBins2 (ETH1C x) = setBins2 x
-  setBins3 (ETH1C x) = setBins3 x
-  setMaximum (ETH1C x) = setMaximum x
-  setMinimum (ETH1C x) = setMinimum x
-  setXTitle (ETH1C x) = setXTitle x
-  setYTitle (ETH1C x) = setYTitle x
-  setZTitle (ETH1C x) = setZTitle x
-
-instance ITArrayC (Exist TH1C) where
-
-
-instance ITNamed (Exist TH1C) where
-  setTitle (ETH1C x) = setTitle x
-
-instance ITAttLine (Exist TH1C) where
-  setLineColor (ETH1C x) = setLineColor x
-
-instance ITAttFill (Exist TH1C) where
-  setFillColor (ETH1C x) = setFillColor x
-  setFillStyle (ETH1C x) = setFillStyle x
-
-instance ITAttMarker (Exist TH1C) where
-
-
-instance ITObject (Exist TH1C) where
-  getName (ETH1C x) = getName x
-  draw (ETH1C x) = draw x
-  findObject (ETH1C x) = findObject x
-  saveAs (ETH1C x) = saveAs x
-  write (ETH1C x) = write x
-  isA (ETH1C x) = isA x
-  printObj (ETH1C x) = printObj x
-
-instance IDeletable (Exist TH1C) where
-  delete (ETH1C x) = delete x
-
-instance ITArray (Exist TH1C) where
-
-
-instance ITH1D (Exist TH1D) where
-
-
-instance ITH1 (Exist TH1D) where
-  add (ETH1D x) = add x
-  addBinContent (ETH1D x) = addBinContent x
-  chi2Test (ETH1D x) = chi2Test x
-  computeIntegral (ETH1D x) = computeIntegral x
-  directoryAutoAdd (ETH1D x) = directoryAutoAdd x
-  distancetoPrimitive (ETH1D x) = distancetoPrimitive x
-  divide (ETH1D x) = divide x
-  drawCopy (ETH1D x) a1 = return . ETH1D =<< drawCopy x a1
-  drawNormalized (ETH1D x) = drawNormalized x
-  drawPanel (ETH1D x) = drawPanel x
-  bufferEmpty (ETH1D x) = bufferEmpty x
-  eval (ETH1D x) = eval x
-  executeEvent (ETH1D x) = executeEvent x
-  fFT (ETH1D x) = fFT x
-  fill1 (ETH1D x) = fill1 x
-  fillN (ETH1D x) = fillN x
-  fillRandom (ETH1D x) = fillRandom x
-  findBin (ETH1D x) = findBin x
-  findFixBin (ETH1D x) = findFixBin x
-  findFirstBinAbove (ETH1D x) = findFirstBinAbove x
-  findLastBinAbove (ETH1D x) = findLastBinAbove x
-  fitPanel (ETH1D x) = fitPanel x
-  getNdivisions (ETH1D x) = getNdivisions x
-  getAxisColor (ETH1D x) = getAxisColor x
-  getLabelColor (ETH1D x) = getLabelColor x
-  getLabelFont (ETH1D x) = getLabelFont x
-  getLabelOffset (ETH1D x) = getLabelOffset x
-  getLabelSize (ETH1D x) = getLabelSize x
-  getTitleFont (ETH1D x) = getTitleFont x
-  getTitleOffset (ETH1D x) = getTitleOffset x
-  getTitleSize (ETH1D x) = getTitleSize x
-  getTickLength (ETH1D x) = getTickLength x
-  getBarOffset (ETH1D x) = getBarOffset x
-  getBarWidth (ETH1D x) = getBarWidth x
-  getContour (ETH1D x) = getContour x
-  getContourLevel (ETH1D x) = getContourLevel x
-  getContourLevelPad (ETH1D x) = getContourLevelPad x
-  getBin (ETH1D x) = getBin x
-  getBinCenter (ETH1D x) = getBinCenter x
-  getBinContent1 (ETH1D x) = getBinContent1 x
-  getBinContent2 (ETH1D x) = getBinContent2 x
-  getBinContent3 (ETH1D x) = getBinContent3 x
-  getBinError1 (ETH1D x) = getBinError1 x
-  getBinError2 (ETH1D x) = getBinError2 x
-  getBinError3 (ETH1D x) = getBinError3 x
-  getBinLowEdge (ETH1D x) = getBinLowEdge x
-  getBinWidth (ETH1D x) = getBinWidth x
-  getCellContent (ETH1D x) = getCellContent x
-  getCellError (ETH1D x) = getCellError x
-  scale (ETH1D x) = scale x
-  setAxisColor (ETH1D x) = setAxisColor x
-  setAxisRange (ETH1D x) = setAxisRange x
-  setBarOffset (ETH1D x) = setBarOffset x
-  setBarWidth (ETH1D x) = setBarWidth x
-  setBinContent1 (ETH1D x) = setBinContent1 x
-  setBinContent2 (ETH1D x) = setBinContent2 x
-  setBinContent3 (ETH1D x) = setBinContent3 x
-  setBinError1 (ETH1D x) = setBinError1 x
-  setBinError2 (ETH1D x) = setBinError2 x
-  setBinError3 (ETH1D x) = setBinError3 x
-  setBins1 (ETH1D x) = setBins1 x
-  setBins2 (ETH1D x) = setBins2 x
-  setBins3 (ETH1D x) = setBins3 x
-  setMaximum (ETH1D x) = setMaximum x
-  setMinimum (ETH1D x) = setMinimum x
-  setXTitle (ETH1D x) = setXTitle x
-  setYTitle (ETH1D x) = setYTitle x
-  setZTitle (ETH1D x) = setZTitle x
-
-instance ITArrayD (Exist TH1D) where
-
-
-instance ITNamed (Exist TH1D) where
-  setTitle (ETH1D x) = setTitle x
-
-instance ITAttLine (Exist TH1D) where
-  setLineColor (ETH1D x) = setLineColor x
-
-instance ITAttFill (Exist TH1D) where
-  setFillColor (ETH1D x) = setFillColor x
-  setFillStyle (ETH1D x) = setFillStyle x
-
-instance ITAttMarker (Exist TH1D) where
-
-
-instance ITObject (Exist TH1D) where
-  getName (ETH1D x) = getName x
-  draw (ETH1D x) = draw x
-  findObject (ETH1D x) = findObject x
-  saveAs (ETH1D x) = saveAs x
-  write (ETH1D x) = write x
-  isA (ETH1D x) = isA x
-  printObj (ETH1D x) = printObj x
-
-instance IDeletable (Exist TH1D) where
-  delete (ETH1D x) = delete x
-
-instance ITArray (Exist TH1D) where
-
-
-instance ITH1F (Exist TH1F) where
-
-
-instance ITH1 (Exist TH1F) where
-  add (ETH1F x) = add x
-  addBinContent (ETH1F x) = addBinContent x
-  chi2Test (ETH1F x) = chi2Test x
-  computeIntegral (ETH1F x) = computeIntegral x
-  directoryAutoAdd (ETH1F x) = directoryAutoAdd x
-  distancetoPrimitive (ETH1F x) = distancetoPrimitive x
-  divide (ETH1F x) = divide x
-  drawCopy (ETH1F x) a1 = return . ETH1F =<< drawCopy x a1
-  drawNormalized (ETH1F x) = drawNormalized x
-  drawPanel (ETH1F x) = drawPanel x
-  bufferEmpty (ETH1F x) = bufferEmpty x
-  eval (ETH1F x) = eval x
-  executeEvent (ETH1F x) = executeEvent x
-  fFT (ETH1F x) = fFT x
-  fill1 (ETH1F x) = fill1 x
-  fillN (ETH1F x) = fillN x
-  fillRandom (ETH1F x) = fillRandom x
-  findBin (ETH1F x) = findBin x
-  findFixBin (ETH1F x) = findFixBin x
-  findFirstBinAbove (ETH1F x) = findFirstBinAbove x
-  findLastBinAbove (ETH1F x) = findLastBinAbove x
-  fitPanel (ETH1F x) = fitPanel x
-  getNdivisions (ETH1F x) = getNdivisions x
-  getAxisColor (ETH1F x) = getAxisColor x
-  getLabelColor (ETH1F x) = getLabelColor x
-  getLabelFont (ETH1F x) = getLabelFont x
-  getLabelOffset (ETH1F x) = getLabelOffset x
-  getLabelSize (ETH1F x) = getLabelSize x
-  getTitleFont (ETH1F x) = getTitleFont x
-  getTitleOffset (ETH1F x) = getTitleOffset x
-  getTitleSize (ETH1F x) = getTitleSize x
-  getTickLength (ETH1F x) = getTickLength x
-  getBarOffset (ETH1F x) = getBarOffset x
-  getBarWidth (ETH1F x) = getBarWidth x
-  getContour (ETH1F x) = getContour x
-  getContourLevel (ETH1F x) = getContourLevel x
-  getContourLevelPad (ETH1F x) = getContourLevelPad x
-  getBin (ETH1F x) = getBin x
-  getBinCenter (ETH1F x) = getBinCenter x
-  getBinContent1 (ETH1F x) = getBinContent1 x
-  getBinContent2 (ETH1F x) = getBinContent2 x
-  getBinContent3 (ETH1F x) = getBinContent3 x
-  getBinError1 (ETH1F x) = getBinError1 x
-  getBinError2 (ETH1F x) = getBinError2 x
-  getBinError3 (ETH1F x) = getBinError3 x
-  getBinLowEdge (ETH1F x) = getBinLowEdge x
-  getBinWidth (ETH1F x) = getBinWidth x
-  getCellContent (ETH1F x) = getCellContent x
-  getCellError (ETH1F x) = getCellError x
-  scale (ETH1F x) = scale x
-  setAxisColor (ETH1F x) = setAxisColor x
-  setAxisRange (ETH1F x) = setAxisRange x
-  setBarOffset (ETH1F x) = setBarOffset x
-  setBarWidth (ETH1F x) = setBarWidth x
-  setBinContent1 (ETH1F x) = setBinContent1 x
-  setBinContent2 (ETH1F x) = setBinContent2 x
-  setBinContent3 (ETH1F x) = setBinContent3 x
-  setBinError1 (ETH1F x) = setBinError1 x
-  setBinError2 (ETH1F x) = setBinError2 x
-  setBinError3 (ETH1F x) = setBinError3 x
-  setBins1 (ETH1F x) = setBins1 x
-  setBins2 (ETH1F x) = setBins2 x
-  setBins3 (ETH1F x) = setBins3 x
-  setMaximum (ETH1F x) = setMaximum x
-  setMinimum (ETH1F x) = setMinimum x
-  setXTitle (ETH1F x) = setXTitle x
-  setYTitle (ETH1F x) = setYTitle x
-  setZTitle (ETH1F x) = setZTitle x
-
-instance ITArrayF (Exist TH1F) where
-
-
-instance ITNamed (Exist TH1F) where
-  setTitle (ETH1F x) = setTitle x
-
-instance ITAttLine (Exist TH1F) where
-  setLineColor (ETH1F x) = setLineColor x
-
-instance ITAttFill (Exist TH1F) where
-  setFillColor (ETH1F x) = setFillColor x
-  setFillStyle (ETH1F x) = setFillStyle x
-
-instance ITAttMarker (Exist TH1F) where
-
-
-instance ITObject (Exist TH1F) where
-  getName (ETH1F x) = getName x
-  draw (ETH1F x) = draw x
-  findObject (ETH1F x) = findObject x
-  saveAs (ETH1F x) = saveAs x
-  write (ETH1F x) = write x
-  isA (ETH1F x) = isA x
-  printObj (ETH1F x) = printObj x
-
-instance IDeletable (Exist TH1F) where
-  delete (ETH1F x) = delete x
-
-instance ITArray (Exist TH1F) where
-
-
-instance ITH1I (Exist TH1I) where
-
-
-instance ITH1 (Exist TH1I) where
-  add (ETH1I x) = add x
-  addBinContent (ETH1I x) = addBinContent x
-  chi2Test (ETH1I x) = chi2Test x
-  computeIntegral (ETH1I x) = computeIntegral x
-  directoryAutoAdd (ETH1I x) = directoryAutoAdd x
-  distancetoPrimitive (ETH1I x) = distancetoPrimitive x
-  divide (ETH1I x) = divide x
-  drawCopy (ETH1I x) a1 = return . ETH1I =<< drawCopy x a1
-  drawNormalized (ETH1I x) = drawNormalized x
-  drawPanel (ETH1I x) = drawPanel x
-  bufferEmpty (ETH1I x) = bufferEmpty x
-  eval (ETH1I x) = eval x
-  executeEvent (ETH1I x) = executeEvent x
-  fFT (ETH1I x) = fFT x
-  fill1 (ETH1I x) = fill1 x
-  fillN (ETH1I x) = fillN x
-  fillRandom (ETH1I x) = fillRandom x
-  findBin (ETH1I x) = findBin x
-  findFixBin (ETH1I x) = findFixBin x
-  findFirstBinAbove (ETH1I x) = findFirstBinAbove x
-  findLastBinAbove (ETH1I x) = findLastBinAbove x
-  fitPanel (ETH1I x) = fitPanel x
-  getNdivisions (ETH1I x) = getNdivisions x
-  getAxisColor (ETH1I x) = getAxisColor x
-  getLabelColor (ETH1I x) = getLabelColor x
-  getLabelFont (ETH1I x) = getLabelFont x
-  getLabelOffset (ETH1I x) = getLabelOffset x
-  getLabelSize (ETH1I x) = getLabelSize x
-  getTitleFont (ETH1I x) = getTitleFont x
-  getTitleOffset (ETH1I x) = getTitleOffset x
-  getTitleSize (ETH1I x) = getTitleSize x
-  getTickLength (ETH1I x) = getTickLength x
-  getBarOffset (ETH1I x) = getBarOffset x
-  getBarWidth (ETH1I x) = getBarWidth x
-  getContour (ETH1I x) = getContour x
-  getContourLevel (ETH1I x) = getContourLevel x
-  getContourLevelPad (ETH1I x) = getContourLevelPad x
-  getBin (ETH1I x) = getBin x
-  getBinCenter (ETH1I x) = getBinCenter x
-  getBinContent1 (ETH1I x) = getBinContent1 x
-  getBinContent2 (ETH1I x) = getBinContent2 x
-  getBinContent3 (ETH1I x) = getBinContent3 x
-  getBinError1 (ETH1I x) = getBinError1 x
-  getBinError2 (ETH1I x) = getBinError2 x
-  getBinError3 (ETH1I x) = getBinError3 x
-  getBinLowEdge (ETH1I x) = getBinLowEdge x
-  getBinWidth (ETH1I x) = getBinWidth x
-  getCellContent (ETH1I x) = getCellContent x
-  getCellError (ETH1I x) = getCellError x
-  scale (ETH1I x) = scale x
-  setAxisColor (ETH1I x) = setAxisColor x
-  setAxisRange (ETH1I x) = setAxisRange x
-  setBarOffset (ETH1I x) = setBarOffset x
-  setBarWidth (ETH1I x) = setBarWidth x
-  setBinContent1 (ETH1I x) = setBinContent1 x
-  setBinContent2 (ETH1I x) = setBinContent2 x
-  setBinContent3 (ETH1I x) = setBinContent3 x
-  setBinError1 (ETH1I x) = setBinError1 x
-  setBinError2 (ETH1I x) = setBinError2 x
-  setBinError3 (ETH1I x) = setBinError3 x
-  setBins1 (ETH1I x) = setBins1 x
-  setBins2 (ETH1I x) = setBins2 x
-  setBins3 (ETH1I x) = setBins3 x
-  setMaximum (ETH1I x) = setMaximum x
-  setMinimum (ETH1I x) = setMinimum x
-  setXTitle (ETH1I x) = setXTitle x
-  setYTitle (ETH1I x) = setYTitle x
-  setZTitle (ETH1I x) = setZTitle x
-
-instance ITArrayI (Exist TH1I) where
-
-
-instance ITNamed (Exist TH1I) where
-  setTitle (ETH1I x) = setTitle x
-
-instance ITAttLine (Exist TH1I) where
-  setLineColor (ETH1I x) = setLineColor x
-
-instance ITAttFill (Exist TH1I) where
-  setFillColor (ETH1I x) = setFillColor x
-  setFillStyle (ETH1I x) = setFillStyle x
-
-instance ITAttMarker (Exist TH1I) where
-
-
-instance ITObject (Exist TH1I) where
-  getName (ETH1I x) = getName x
-  draw (ETH1I x) = draw x
-  findObject (ETH1I x) = findObject x
-  saveAs (ETH1I x) = saveAs x
-  write (ETH1I x) = write x
-  isA (ETH1I x) = isA x
-  printObj (ETH1I x) = printObj x
-
-instance IDeletable (Exist TH1I) where
-  delete (ETH1I x) = delete x
-
-instance ITArray (Exist TH1I) where
-
-
-instance ITH1S (Exist TH1S) where
-
-
-instance ITH1 (Exist TH1S) where
-  add (ETH1S x) = add x
-  addBinContent (ETH1S x) = addBinContent x
-  chi2Test (ETH1S x) = chi2Test x
-  computeIntegral (ETH1S x) = computeIntegral x
-  directoryAutoAdd (ETH1S x) = directoryAutoAdd x
-  distancetoPrimitive (ETH1S x) = distancetoPrimitive x
-  divide (ETH1S x) = divide x
-  drawCopy (ETH1S x) a1 = return . ETH1S =<< drawCopy x a1
-  drawNormalized (ETH1S x) = drawNormalized x
-  drawPanel (ETH1S x) = drawPanel x
-  bufferEmpty (ETH1S x) = bufferEmpty x
-  eval (ETH1S x) = eval x
-  executeEvent (ETH1S x) = executeEvent x
-  fFT (ETH1S x) = fFT x
-  fill1 (ETH1S x) = fill1 x
-  fillN (ETH1S x) = fillN x
-  fillRandom (ETH1S x) = fillRandom x
-  findBin (ETH1S x) = findBin x
-  findFixBin (ETH1S x) = findFixBin x
-  findFirstBinAbove (ETH1S x) = findFirstBinAbove x
-  findLastBinAbove (ETH1S x) = findLastBinAbove x
-  fitPanel (ETH1S x) = fitPanel x
-  getNdivisions (ETH1S x) = getNdivisions x
-  getAxisColor (ETH1S x) = getAxisColor x
-  getLabelColor (ETH1S x) = getLabelColor x
-  getLabelFont (ETH1S x) = getLabelFont x
-  getLabelOffset (ETH1S x) = getLabelOffset x
-  getLabelSize (ETH1S x) = getLabelSize x
-  getTitleFont (ETH1S x) = getTitleFont x
-  getTitleOffset (ETH1S x) = getTitleOffset x
-  getTitleSize (ETH1S x) = getTitleSize x
-  getTickLength (ETH1S x) = getTickLength x
-  getBarOffset (ETH1S x) = getBarOffset x
-  getBarWidth (ETH1S x) = getBarWidth x
-  getContour (ETH1S x) = getContour x
-  getContourLevel (ETH1S x) = getContourLevel x
-  getContourLevelPad (ETH1S x) = getContourLevelPad x
-  getBin (ETH1S x) = getBin x
-  getBinCenter (ETH1S x) = getBinCenter x
-  getBinContent1 (ETH1S x) = getBinContent1 x
-  getBinContent2 (ETH1S x) = getBinContent2 x
-  getBinContent3 (ETH1S x) = getBinContent3 x
-  getBinError1 (ETH1S x) = getBinError1 x
-  getBinError2 (ETH1S x) = getBinError2 x
-  getBinError3 (ETH1S x) = getBinError3 x
-  getBinLowEdge (ETH1S x) = getBinLowEdge x
-  getBinWidth (ETH1S x) = getBinWidth x
-  getCellContent (ETH1S x) = getCellContent x
-  getCellError (ETH1S x) = getCellError x
-  scale (ETH1S x) = scale x
-  setAxisColor (ETH1S x) = setAxisColor x
-  setAxisRange (ETH1S x) = setAxisRange x
-  setBarOffset (ETH1S x) = setBarOffset x
-  setBarWidth (ETH1S x) = setBarWidth x
-  setBinContent1 (ETH1S x) = setBinContent1 x
-  setBinContent2 (ETH1S x) = setBinContent2 x
-  setBinContent3 (ETH1S x) = setBinContent3 x
-  setBinError1 (ETH1S x) = setBinError1 x
-  setBinError2 (ETH1S x) = setBinError2 x
-  setBinError3 (ETH1S x) = setBinError3 x
-  setBins1 (ETH1S x) = setBins1 x
-  setBins2 (ETH1S x) = setBins2 x
-  setBins3 (ETH1S x) = setBins3 x
-  setMaximum (ETH1S x) = setMaximum x
-  setMinimum (ETH1S x) = setMinimum x
-  setXTitle (ETH1S x) = setXTitle x
-  setYTitle (ETH1S x) = setYTitle x
-  setZTitle (ETH1S x) = setZTitle x
-
-instance ITArrayS (Exist TH1S) where
-
-
-instance ITNamed (Exist TH1S) where
-  setTitle (ETH1S x) = setTitle x
-
-instance ITAttLine (Exist TH1S) where
-  setLineColor (ETH1S x) = setLineColor x
-
-instance ITAttFill (Exist TH1S) where
-  setFillColor (ETH1S x) = setFillColor x
-  setFillStyle (ETH1S x) = setFillStyle x
-
-instance ITAttMarker (Exist TH1S) where
-
-
-instance ITObject (Exist TH1S) where
-  getName (ETH1S x) = getName x
-  draw (ETH1S x) = draw x
-  findObject (ETH1S x) = findObject x
-  saveAs (ETH1S x) = saveAs x
-  write (ETH1S x) = write x
-  isA (ETH1S x) = isA x
-  printObj (ETH1S x) = printObj x
-
-instance IDeletable (Exist TH1S) where
-  delete (ETH1S x) = delete x
-
-instance ITArray (Exist TH1S) where
-
-
-instance ITH2C (Exist TH2C) where
-
-
-instance ITH2 (Exist TH2C) where
-  fill2 (ETH2C x) = fill2 x
-  fillRandom2 (ETH2C x) = fillRandom2 x
-  findFirstBinAbove2 (ETH2C x) = findFirstBinAbove2 x
-  findLastBinAbove2 (ETH2C x) = findLastBinAbove2 x
-  fitSlicesX (ETH2C x) = fitSlicesX x
-  fitSlicesY (ETH2C x) = fitSlicesY x
-  getCorrelationFactor (ETH2C x) = getCorrelationFactor x
-  getCovariance (ETH2C x) = getCovariance x
-  getStats (ETH2C x) = getStats x
-  integral (ETH2C x) = integral x
-  interpolate (ETH2C x) = interpolate x
-  kolmogorovTest (ETH2C x) = kolmogorovTest x
-  rebinX (ETH2C x) = rebinX x
-  rebinY (ETH2C x) = rebinY x
-  rebin2D (ETH2C x) = rebin2D x
-  putStats (ETH2C x) = putStats x
-  reset (ETH2C x) = reset x
-  setShowProjectionX (ETH2C x) = setShowProjectionX x
-  setShowProjectionY (ETH2C x) = setShowProjectionY x
-  showBackground (ETH2C x) = showBackground x
-  showPeaks (ETH2C x) = showPeaks x
-  smooth (ETH2C x) = smooth x
-
-instance ITArrayC (Exist TH2C) where
-
-
-instance ITH1 (Exist TH2C) where
-  add (ETH2C x) = add x
-  addBinContent (ETH2C x) = addBinContent x
-  chi2Test (ETH2C x) = chi2Test x
-  computeIntegral (ETH2C x) = computeIntegral x
-  directoryAutoAdd (ETH2C x) = directoryAutoAdd x
-  distancetoPrimitive (ETH2C x) = distancetoPrimitive x
-  divide (ETH2C x) = divide x
-  drawCopy (ETH2C x) a1 = return . ETH2C =<< drawCopy x a1
-  drawNormalized (ETH2C x) = drawNormalized x
-  drawPanel (ETH2C x) = drawPanel x
-  bufferEmpty (ETH2C x) = bufferEmpty x
-  eval (ETH2C x) = eval x
-  executeEvent (ETH2C x) = executeEvent x
-  fFT (ETH2C x) = fFT x
-  fill1 (ETH2C x) = fill1 x
-  fillN (ETH2C x) = fillN x
-  fillRandom (ETH2C x) = fillRandom x
-  findBin (ETH2C x) = findBin x
-  findFixBin (ETH2C x) = findFixBin x
-  findFirstBinAbove (ETH2C x) = findFirstBinAbove x
-  findLastBinAbove (ETH2C x) = findLastBinAbove x
-  fitPanel (ETH2C x) = fitPanel x
-  getNdivisions (ETH2C x) = getNdivisions x
-  getAxisColor (ETH2C x) = getAxisColor x
-  getLabelColor (ETH2C x) = getLabelColor x
-  getLabelFont (ETH2C x) = getLabelFont x
-  getLabelOffset (ETH2C x) = getLabelOffset x
-  getLabelSize (ETH2C x) = getLabelSize x
-  getTitleFont (ETH2C x) = getTitleFont x
-  getTitleOffset (ETH2C x) = getTitleOffset x
-  getTitleSize (ETH2C x) = getTitleSize x
-  getTickLength (ETH2C x) = getTickLength x
-  getBarOffset (ETH2C x) = getBarOffset x
-  getBarWidth (ETH2C x) = getBarWidth x
-  getContour (ETH2C x) = getContour x
-  getContourLevel (ETH2C x) = getContourLevel x
-  getContourLevelPad (ETH2C x) = getContourLevelPad x
-  getBin (ETH2C x) = getBin x
-  getBinCenter (ETH2C x) = getBinCenter x
-  getBinContent1 (ETH2C x) = getBinContent1 x
-  getBinContent2 (ETH2C x) = getBinContent2 x
-  getBinContent3 (ETH2C x) = getBinContent3 x
-  getBinError1 (ETH2C x) = getBinError1 x
-  getBinError2 (ETH2C x) = getBinError2 x
-  getBinError3 (ETH2C x) = getBinError3 x
-  getBinLowEdge (ETH2C x) = getBinLowEdge x
-  getBinWidth (ETH2C x) = getBinWidth x
-  getCellContent (ETH2C x) = getCellContent x
-  getCellError (ETH2C x) = getCellError x
-  scale (ETH2C x) = scale x
-  setAxisColor (ETH2C x) = setAxisColor x
-  setAxisRange (ETH2C x) = setAxisRange x
-  setBarOffset (ETH2C x) = setBarOffset x
-  setBarWidth (ETH2C x) = setBarWidth x
-  setBinContent1 (ETH2C x) = setBinContent1 x
-  setBinContent2 (ETH2C x) = setBinContent2 x
-  setBinContent3 (ETH2C x) = setBinContent3 x
-  setBinError1 (ETH2C x) = setBinError1 x
-  setBinError2 (ETH2C x) = setBinError2 x
-  setBinError3 (ETH2C x) = setBinError3 x
-  setBins1 (ETH2C x) = setBins1 x
-  setBins2 (ETH2C x) = setBins2 x
-  setBins3 (ETH2C x) = setBins3 x
-  setMaximum (ETH2C x) = setMaximum x
-  setMinimum (ETH2C x) = setMinimum x
-  setXTitle (ETH2C x) = setXTitle x
-  setYTitle (ETH2C x) = setYTitle x
-  setZTitle (ETH2C x) = setZTitle x
-
-instance ITNamed (Exist TH2C) where
-  setTitle (ETH2C x) = setTitle x
-
-instance ITAttLine (Exist TH2C) where
-  setLineColor (ETH2C x) = setLineColor x
-
-instance ITAttFill (Exist TH2C) where
-  setFillColor (ETH2C x) = setFillColor x
-  setFillStyle (ETH2C x) = setFillStyle x
-
-instance ITAttMarker (Exist TH2C) where
-
-
-instance ITObject (Exist TH2C) where
-  getName (ETH2C x) = getName x
-  draw (ETH2C x) = draw x
-  findObject (ETH2C x) = findObject x
-  saveAs (ETH2C x) = saveAs x
-  write (ETH2C x) = write x
-  isA (ETH2C x) = isA x
-  printObj (ETH2C x) = printObj x
-
-instance IDeletable (Exist TH2C) where
-  delete (ETH2C x) = delete x
-
-instance ITArray (Exist TH2C) where
-
-
-instance ITH2D (Exist TH2D) where
-
-
-instance ITH2 (Exist TH2D) where
-  fill2 (ETH2D x) = fill2 x
-  fillRandom2 (ETH2D x) = fillRandom2 x
-  findFirstBinAbove2 (ETH2D x) = findFirstBinAbove2 x
-  findLastBinAbove2 (ETH2D x) = findLastBinAbove2 x
-  fitSlicesX (ETH2D x) = fitSlicesX x
-  fitSlicesY (ETH2D x) = fitSlicesY x
-  getCorrelationFactor (ETH2D x) = getCorrelationFactor x
-  getCovariance (ETH2D x) = getCovariance x
-  getStats (ETH2D x) = getStats x
-  integral (ETH2D x) = integral x
-  interpolate (ETH2D x) = interpolate x
-  kolmogorovTest (ETH2D x) = kolmogorovTest x
-  rebinX (ETH2D x) = rebinX x
-  rebinY (ETH2D x) = rebinY x
-  rebin2D (ETH2D x) = rebin2D x
-  putStats (ETH2D x) = putStats x
-  reset (ETH2D x) = reset x
-  setShowProjectionX (ETH2D x) = setShowProjectionX x
-  setShowProjectionY (ETH2D x) = setShowProjectionY x
-  showBackground (ETH2D x) = showBackground x
-  showPeaks (ETH2D x) = showPeaks x
-  smooth (ETH2D x) = smooth x
-
-instance ITArrayD (Exist TH2D) where
-
-
-instance ITH1 (Exist TH2D) where
-  add (ETH2D x) = add x
-  addBinContent (ETH2D x) = addBinContent x
-  chi2Test (ETH2D x) = chi2Test x
-  computeIntegral (ETH2D x) = computeIntegral x
-  directoryAutoAdd (ETH2D x) = directoryAutoAdd x
-  distancetoPrimitive (ETH2D x) = distancetoPrimitive x
-  divide (ETH2D x) = divide x
-  drawCopy (ETH2D x) a1 = return . ETH2D =<< drawCopy x a1
-  drawNormalized (ETH2D x) = drawNormalized x
-  drawPanel (ETH2D x) = drawPanel x
-  bufferEmpty (ETH2D x) = bufferEmpty x
-  eval (ETH2D x) = eval x
-  executeEvent (ETH2D x) = executeEvent x
-  fFT (ETH2D x) = fFT x
-  fill1 (ETH2D x) = fill1 x
-  fillN (ETH2D x) = fillN x
-  fillRandom (ETH2D x) = fillRandom x
-  findBin (ETH2D x) = findBin x
-  findFixBin (ETH2D x) = findFixBin x
-  findFirstBinAbove (ETH2D x) = findFirstBinAbove x
-  findLastBinAbove (ETH2D x) = findLastBinAbove x
-  fitPanel (ETH2D x) = fitPanel x
-  getNdivisions (ETH2D x) = getNdivisions x
-  getAxisColor (ETH2D x) = getAxisColor x
-  getLabelColor (ETH2D x) = getLabelColor x
-  getLabelFont (ETH2D x) = getLabelFont x
-  getLabelOffset (ETH2D x) = getLabelOffset x
-  getLabelSize (ETH2D x) = getLabelSize x
-  getTitleFont (ETH2D x) = getTitleFont x
-  getTitleOffset (ETH2D x) = getTitleOffset x
-  getTitleSize (ETH2D x) = getTitleSize x
-  getTickLength (ETH2D x) = getTickLength x
-  getBarOffset (ETH2D x) = getBarOffset x
-  getBarWidth (ETH2D x) = getBarWidth x
-  getContour (ETH2D x) = getContour x
-  getContourLevel (ETH2D x) = getContourLevel x
-  getContourLevelPad (ETH2D x) = getContourLevelPad x
-  getBin (ETH2D x) = getBin x
-  getBinCenter (ETH2D x) = getBinCenter x
-  getBinContent1 (ETH2D x) = getBinContent1 x
-  getBinContent2 (ETH2D x) = getBinContent2 x
-  getBinContent3 (ETH2D x) = getBinContent3 x
-  getBinError1 (ETH2D x) = getBinError1 x
-  getBinError2 (ETH2D x) = getBinError2 x
-  getBinError3 (ETH2D x) = getBinError3 x
-  getBinLowEdge (ETH2D x) = getBinLowEdge x
-  getBinWidth (ETH2D x) = getBinWidth x
-  getCellContent (ETH2D x) = getCellContent x
-  getCellError (ETH2D x) = getCellError x
-  scale (ETH2D x) = scale x
-  setAxisColor (ETH2D x) = setAxisColor x
-  setAxisRange (ETH2D x) = setAxisRange x
-  setBarOffset (ETH2D x) = setBarOffset x
-  setBarWidth (ETH2D x) = setBarWidth x
-  setBinContent1 (ETH2D x) = setBinContent1 x
-  setBinContent2 (ETH2D x) = setBinContent2 x
-  setBinContent3 (ETH2D x) = setBinContent3 x
-  setBinError1 (ETH2D x) = setBinError1 x
-  setBinError2 (ETH2D x) = setBinError2 x
-  setBinError3 (ETH2D x) = setBinError3 x
-  setBins1 (ETH2D x) = setBins1 x
-  setBins2 (ETH2D x) = setBins2 x
-  setBins3 (ETH2D x) = setBins3 x
-  setMaximum (ETH2D x) = setMaximum x
-  setMinimum (ETH2D x) = setMinimum x
-  setXTitle (ETH2D x) = setXTitle x
-  setYTitle (ETH2D x) = setYTitle x
-  setZTitle (ETH2D x) = setZTitle x
-
-instance ITNamed (Exist TH2D) where
-  setTitle (ETH2D x) = setTitle x
-
-instance ITAttLine (Exist TH2D) where
-  setLineColor (ETH2D x) = setLineColor x
-
-instance ITAttFill (Exist TH2D) where
-  setFillColor (ETH2D x) = setFillColor x
-  setFillStyle (ETH2D x) = setFillStyle x
-
-instance ITAttMarker (Exist TH2D) where
-
-
-instance ITObject (Exist TH2D) where
-  getName (ETH2D x) = getName x
-  draw (ETH2D x) = draw x
-  findObject (ETH2D x) = findObject x
-  saveAs (ETH2D x) = saveAs x
-  write (ETH2D x) = write x
-  isA (ETH2D x) = isA x
-  printObj (ETH2D x) = printObj x
-
-instance IDeletable (Exist TH2D) where
-  delete (ETH2D x) = delete x
-
-instance ITArray (Exist TH2D) where
-
-
-instance ITH2F (Exist TH2F) where
-
-
-instance ITH2 (Exist TH2F) where
-  fill2 (ETH2F x) = fill2 x
-  fillRandom2 (ETH2F x) = fillRandom2 x
-  findFirstBinAbove2 (ETH2F x) = findFirstBinAbove2 x
-  findLastBinAbove2 (ETH2F x) = findLastBinAbove2 x
-  fitSlicesX (ETH2F x) = fitSlicesX x
-  fitSlicesY (ETH2F x) = fitSlicesY x
-  getCorrelationFactor (ETH2F x) = getCorrelationFactor x
-  getCovariance (ETH2F x) = getCovariance x
-  getStats (ETH2F x) = getStats x
-  integral (ETH2F x) = integral x
-  interpolate (ETH2F x) = interpolate x
-  kolmogorovTest (ETH2F x) = kolmogorovTest x
-  rebinX (ETH2F x) = rebinX x
-  rebinY (ETH2F x) = rebinY x
-  rebin2D (ETH2F x) = rebin2D x
-  putStats (ETH2F x) = putStats x
-  reset (ETH2F x) = reset x
-  setShowProjectionX (ETH2F x) = setShowProjectionX x
-  setShowProjectionY (ETH2F x) = setShowProjectionY x
-  showBackground (ETH2F x) = showBackground x
-  showPeaks (ETH2F x) = showPeaks x
-  smooth (ETH2F x) = smooth x
-
-instance ITArrayF (Exist TH2F) where
-
-
-instance ITH1 (Exist TH2F) where
-  add (ETH2F x) = add x
-  addBinContent (ETH2F x) = addBinContent x
-  chi2Test (ETH2F x) = chi2Test x
-  computeIntegral (ETH2F x) = computeIntegral x
-  directoryAutoAdd (ETH2F x) = directoryAutoAdd x
-  distancetoPrimitive (ETH2F x) = distancetoPrimitive x
-  divide (ETH2F x) = divide x
-  drawCopy (ETH2F x) a1 = return . ETH2F =<< drawCopy x a1
-  drawNormalized (ETH2F x) = drawNormalized x
-  drawPanel (ETH2F x) = drawPanel x
-  bufferEmpty (ETH2F x) = bufferEmpty x
-  eval (ETH2F x) = eval x
-  executeEvent (ETH2F x) = executeEvent x
-  fFT (ETH2F x) = fFT x
-  fill1 (ETH2F x) = fill1 x
-  fillN (ETH2F x) = fillN x
-  fillRandom (ETH2F x) = fillRandom x
-  findBin (ETH2F x) = findBin x
-  findFixBin (ETH2F x) = findFixBin x
-  findFirstBinAbove (ETH2F x) = findFirstBinAbove x
-  findLastBinAbove (ETH2F x) = findLastBinAbove x
-  fitPanel (ETH2F x) = fitPanel x
-  getNdivisions (ETH2F x) = getNdivisions x
-  getAxisColor (ETH2F x) = getAxisColor x
-  getLabelColor (ETH2F x) = getLabelColor x
-  getLabelFont (ETH2F x) = getLabelFont x
-  getLabelOffset (ETH2F x) = getLabelOffset x
-  getLabelSize (ETH2F x) = getLabelSize x
-  getTitleFont (ETH2F x) = getTitleFont x
-  getTitleOffset (ETH2F x) = getTitleOffset x
-  getTitleSize (ETH2F x) = getTitleSize x
-  getTickLength (ETH2F x) = getTickLength x
-  getBarOffset (ETH2F x) = getBarOffset x
-  getBarWidth (ETH2F x) = getBarWidth x
-  getContour (ETH2F x) = getContour x
-  getContourLevel (ETH2F x) = getContourLevel x
-  getContourLevelPad (ETH2F x) = getContourLevelPad x
-  getBin (ETH2F x) = getBin x
-  getBinCenter (ETH2F x) = getBinCenter x
-  getBinContent1 (ETH2F x) = getBinContent1 x
-  getBinContent2 (ETH2F x) = getBinContent2 x
-  getBinContent3 (ETH2F x) = getBinContent3 x
-  getBinError1 (ETH2F x) = getBinError1 x
-  getBinError2 (ETH2F x) = getBinError2 x
-  getBinError3 (ETH2F x) = getBinError3 x
-  getBinLowEdge (ETH2F x) = getBinLowEdge x
-  getBinWidth (ETH2F x) = getBinWidth x
-  getCellContent (ETH2F x) = getCellContent x
-  getCellError (ETH2F x) = getCellError x
-  scale (ETH2F x) = scale x
-  setAxisColor (ETH2F x) = setAxisColor x
-  setAxisRange (ETH2F x) = setAxisRange x
-  setBarOffset (ETH2F x) = setBarOffset x
-  setBarWidth (ETH2F x) = setBarWidth x
-  setBinContent1 (ETH2F x) = setBinContent1 x
-  setBinContent2 (ETH2F x) = setBinContent2 x
-  setBinContent3 (ETH2F x) = setBinContent3 x
-  setBinError1 (ETH2F x) = setBinError1 x
-  setBinError2 (ETH2F x) = setBinError2 x
-  setBinError3 (ETH2F x) = setBinError3 x
-  setBins1 (ETH2F x) = setBins1 x
-  setBins2 (ETH2F x) = setBins2 x
-  setBins3 (ETH2F x) = setBins3 x
-  setMaximum (ETH2F x) = setMaximum x
-  setMinimum (ETH2F x) = setMinimum x
-  setXTitle (ETH2F x) = setXTitle x
-  setYTitle (ETH2F x) = setYTitle x
-  setZTitle (ETH2F x) = setZTitle x
-
-instance ITNamed (Exist TH2F) where
-  setTitle (ETH2F x) = setTitle x
-
-instance ITAttLine (Exist TH2F) where
-  setLineColor (ETH2F x) = setLineColor x
-
-instance ITAttFill (Exist TH2F) where
-  setFillColor (ETH2F x) = setFillColor x
-  setFillStyle (ETH2F x) = setFillStyle x
-
-instance ITAttMarker (Exist TH2F) where
-
-
-instance ITObject (Exist TH2F) where
-  getName (ETH2F x) = getName x
-  draw (ETH2F x) = draw x
-  findObject (ETH2F x) = findObject x
-  saveAs (ETH2F x) = saveAs x
-  write (ETH2F x) = write x
-  isA (ETH2F x) = isA x
-  printObj (ETH2F x) = printObj x
-
-instance IDeletable (Exist TH2F) where
-  delete (ETH2F x) = delete x
-
-instance ITArray (Exist TH2F) where
-
-
-instance ITH2I (Exist TH2I) where
-
-
-instance ITH2 (Exist TH2I) where
-  fill2 (ETH2I x) = fill2 x
-  fillRandom2 (ETH2I x) = fillRandom2 x
-  findFirstBinAbove2 (ETH2I x) = findFirstBinAbove2 x
-  findLastBinAbove2 (ETH2I x) = findLastBinAbove2 x
-  fitSlicesX (ETH2I x) = fitSlicesX x
-  fitSlicesY (ETH2I x) = fitSlicesY x
-  getCorrelationFactor (ETH2I x) = getCorrelationFactor x
-  getCovariance (ETH2I x) = getCovariance x
-  getStats (ETH2I x) = getStats x
-  integral (ETH2I x) = integral x
-  interpolate (ETH2I x) = interpolate x
-  kolmogorovTest (ETH2I x) = kolmogorovTest x
-  rebinX (ETH2I x) = rebinX x
-  rebinY (ETH2I x) = rebinY x
-  rebin2D (ETH2I x) = rebin2D x
-  putStats (ETH2I x) = putStats x
-  reset (ETH2I x) = reset x
-  setShowProjectionX (ETH2I x) = setShowProjectionX x
-  setShowProjectionY (ETH2I x) = setShowProjectionY x
-  showBackground (ETH2I x) = showBackground x
-  showPeaks (ETH2I x) = showPeaks x
-  smooth (ETH2I x) = smooth x
-
-instance ITArrayI (Exist TH2I) where
-
-
-instance ITH1 (Exist TH2I) where
-  add (ETH2I x) = add x
-  addBinContent (ETH2I x) = addBinContent x
-  chi2Test (ETH2I x) = chi2Test x
-  computeIntegral (ETH2I x) = computeIntegral x
-  directoryAutoAdd (ETH2I x) = directoryAutoAdd x
-  distancetoPrimitive (ETH2I x) = distancetoPrimitive x
-  divide (ETH2I x) = divide x
-  drawCopy (ETH2I x) a1 = return . ETH2I =<< drawCopy x a1
-  drawNormalized (ETH2I x) = drawNormalized x
-  drawPanel (ETH2I x) = drawPanel x
-  bufferEmpty (ETH2I x) = bufferEmpty x
-  eval (ETH2I x) = eval x
-  executeEvent (ETH2I x) = executeEvent x
-  fFT (ETH2I x) = fFT x
-  fill1 (ETH2I x) = fill1 x
-  fillN (ETH2I x) = fillN x
-  fillRandom (ETH2I x) = fillRandom x
-  findBin (ETH2I x) = findBin x
-  findFixBin (ETH2I x) = findFixBin x
-  findFirstBinAbove (ETH2I x) = findFirstBinAbove x
-  findLastBinAbove (ETH2I x) = findLastBinAbove x
-  fitPanel (ETH2I x) = fitPanel x
-  getNdivisions (ETH2I x) = getNdivisions x
-  getAxisColor (ETH2I x) = getAxisColor x
-  getLabelColor (ETH2I x) = getLabelColor x
-  getLabelFont (ETH2I x) = getLabelFont x
-  getLabelOffset (ETH2I x) = getLabelOffset x
-  getLabelSize (ETH2I x) = getLabelSize x
-  getTitleFont (ETH2I x) = getTitleFont x
-  getTitleOffset (ETH2I x) = getTitleOffset x
-  getTitleSize (ETH2I x) = getTitleSize x
-  getTickLength (ETH2I x) = getTickLength x
-  getBarOffset (ETH2I x) = getBarOffset x
-  getBarWidth (ETH2I x) = getBarWidth x
-  getContour (ETH2I x) = getContour x
-  getContourLevel (ETH2I x) = getContourLevel x
-  getContourLevelPad (ETH2I x) = getContourLevelPad x
-  getBin (ETH2I x) = getBin x
-  getBinCenter (ETH2I x) = getBinCenter x
-  getBinContent1 (ETH2I x) = getBinContent1 x
-  getBinContent2 (ETH2I x) = getBinContent2 x
-  getBinContent3 (ETH2I x) = getBinContent3 x
-  getBinError1 (ETH2I x) = getBinError1 x
-  getBinError2 (ETH2I x) = getBinError2 x
-  getBinError3 (ETH2I x) = getBinError3 x
-  getBinLowEdge (ETH2I x) = getBinLowEdge x
-  getBinWidth (ETH2I x) = getBinWidth x
-  getCellContent (ETH2I x) = getCellContent x
-  getCellError (ETH2I x) = getCellError x
-  scale (ETH2I x) = scale x
-  setAxisColor (ETH2I x) = setAxisColor x
-  setAxisRange (ETH2I x) = setAxisRange x
-  setBarOffset (ETH2I x) = setBarOffset x
-  setBarWidth (ETH2I x) = setBarWidth x
-  setBinContent1 (ETH2I x) = setBinContent1 x
-  setBinContent2 (ETH2I x) = setBinContent2 x
-  setBinContent3 (ETH2I x) = setBinContent3 x
-  setBinError1 (ETH2I x) = setBinError1 x
-  setBinError2 (ETH2I x) = setBinError2 x
-  setBinError3 (ETH2I x) = setBinError3 x
-  setBins1 (ETH2I x) = setBins1 x
-  setBins2 (ETH2I x) = setBins2 x
-  setBins3 (ETH2I x) = setBins3 x
-  setMaximum (ETH2I x) = setMaximum x
-  setMinimum (ETH2I x) = setMinimum x
-  setXTitle (ETH2I x) = setXTitle x
-  setYTitle (ETH2I x) = setYTitle x
-  setZTitle (ETH2I x) = setZTitle x
-
-instance ITNamed (Exist TH2I) where
-  setTitle (ETH2I x) = setTitle x
-
-instance ITAttLine (Exist TH2I) where
-  setLineColor (ETH2I x) = setLineColor x
-
-instance ITAttFill (Exist TH2I) where
-  setFillColor (ETH2I x) = setFillColor x
-  setFillStyle (ETH2I x) = setFillStyle x
-
-instance ITAttMarker (Exist TH2I) where
-
-
-instance ITObject (Exist TH2I) where
-  getName (ETH2I x) = getName x
-  draw (ETH2I x) = draw x
-  findObject (ETH2I x) = findObject x
-  saveAs (ETH2I x) = saveAs x
-  write (ETH2I x) = write x
-  isA (ETH2I x) = isA x
-  printObj (ETH2I x) = printObj x
-
-instance IDeletable (Exist TH2I) where
-  delete (ETH2I x) = delete x
-
-instance ITArray (Exist TH2I) where
-
-
-instance ITH2Poly (Exist TH2Poly) where
-
-
-instance ITH2 (Exist TH2Poly) where
-  fill2 (ETH2Poly x) = fill2 x
-  fillRandom2 (ETH2Poly x) = fillRandom2 x
-  findFirstBinAbove2 (ETH2Poly x) = findFirstBinAbove2 x
-  findLastBinAbove2 (ETH2Poly x) = findLastBinAbove2 x
-  fitSlicesX (ETH2Poly x) = fitSlicesX x
-  fitSlicesY (ETH2Poly x) = fitSlicesY x
-  getCorrelationFactor (ETH2Poly x) = getCorrelationFactor x
-  getCovariance (ETH2Poly x) = getCovariance x
-  getStats (ETH2Poly x) = getStats x
-  integral (ETH2Poly x) = integral x
-  interpolate (ETH2Poly x) = interpolate x
-  kolmogorovTest (ETH2Poly x) = kolmogorovTest x
-  rebinX (ETH2Poly x) = rebinX x
-  rebinY (ETH2Poly x) = rebinY x
-  rebin2D (ETH2Poly x) = rebin2D x
-  putStats (ETH2Poly x) = putStats x
-  reset (ETH2Poly x) = reset x
-  setShowProjectionX (ETH2Poly x) = setShowProjectionX x
-  setShowProjectionY (ETH2Poly x) = setShowProjectionY x
-  showBackground (ETH2Poly x) = showBackground x
-  showPeaks (ETH2Poly x) = showPeaks x
-  smooth (ETH2Poly x) = smooth x
-
-instance ITH1 (Exist TH2Poly) where
-  add (ETH2Poly x) = add x
-  addBinContent (ETH2Poly x) = addBinContent x
-  chi2Test (ETH2Poly x) = chi2Test x
-  computeIntegral (ETH2Poly x) = computeIntegral x
-  directoryAutoAdd (ETH2Poly x) = directoryAutoAdd x
-  distancetoPrimitive (ETH2Poly x) = distancetoPrimitive x
-  divide (ETH2Poly x) = divide x
-  drawCopy (ETH2Poly x) a1 = return . ETH2Poly =<< drawCopy x a1
-  drawNormalized (ETH2Poly x) = drawNormalized x
-  drawPanel (ETH2Poly x) = drawPanel x
-  bufferEmpty (ETH2Poly x) = bufferEmpty x
-  eval (ETH2Poly x) = eval x
-  executeEvent (ETH2Poly x) = executeEvent x
-  fFT (ETH2Poly x) = fFT x
-  fill1 (ETH2Poly x) = fill1 x
-  fillN (ETH2Poly x) = fillN x
-  fillRandom (ETH2Poly x) = fillRandom x
-  findBin (ETH2Poly x) = findBin x
-  findFixBin (ETH2Poly x) = findFixBin x
-  findFirstBinAbove (ETH2Poly x) = findFirstBinAbove x
-  findLastBinAbove (ETH2Poly x) = findLastBinAbove x
-  fitPanel (ETH2Poly x) = fitPanel x
-  getNdivisions (ETH2Poly x) = getNdivisions x
-  getAxisColor (ETH2Poly x) = getAxisColor x
-  getLabelColor (ETH2Poly x) = getLabelColor x
-  getLabelFont (ETH2Poly x) = getLabelFont x
-  getLabelOffset (ETH2Poly x) = getLabelOffset x
-  getLabelSize (ETH2Poly x) = getLabelSize x
-  getTitleFont (ETH2Poly x) = getTitleFont x
-  getTitleOffset (ETH2Poly x) = getTitleOffset x
-  getTitleSize (ETH2Poly x) = getTitleSize x
-  getTickLength (ETH2Poly x) = getTickLength x
-  getBarOffset (ETH2Poly x) = getBarOffset x
-  getBarWidth (ETH2Poly x) = getBarWidth x
-  getContour (ETH2Poly x) = getContour x
-  getContourLevel (ETH2Poly x) = getContourLevel x
-  getContourLevelPad (ETH2Poly x) = getContourLevelPad x
-  getBin (ETH2Poly x) = getBin x
-  getBinCenter (ETH2Poly x) = getBinCenter x
-  getBinContent1 (ETH2Poly x) = getBinContent1 x
-  getBinContent2 (ETH2Poly x) = getBinContent2 x
-  getBinContent3 (ETH2Poly x) = getBinContent3 x
-  getBinError1 (ETH2Poly x) = getBinError1 x
-  getBinError2 (ETH2Poly x) = getBinError2 x
-  getBinError3 (ETH2Poly x) = getBinError3 x
-  getBinLowEdge (ETH2Poly x) = getBinLowEdge x
-  getBinWidth (ETH2Poly x) = getBinWidth x
-  getCellContent (ETH2Poly x) = getCellContent x
-  getCellError (ETH2Poly x) = getCellError x
-  scale (ETH2Poly x) = scale x
-  setAxisColor (ETH2Poly x) = setAxisColor x
-  setAxisRange (ETH2Poly x) = setAxisRange x
-  setBarOffset (ETH2Poly x) = setBarOffset x
-  setBarWidth (ETH2Poly x) = setBarWidth x
-  setBinContent1 (ETH2Poly x) = setBinContent1 x
-  setBinContent2 (ETH2Poly x) = setBinContent2 x
-  setBinContent3 (ETH2Poly x) = setBinContent3 x
-  setBinError1 (ETH2Poly x) = setBinError1 x
-  setBinError2 (ETH2Poly x) = setBinError2 x
-  setBinError3 (ETH2Poly x) = setBinError3 x
-  setBins1 (ETH2Poly x) = setBins1 x
-  setBins2 (ETH2Poly x) = setBins2 x
-  setBins3 (ETH2Poly x) = setBins3 x
-  setMaximum (ETH2Poly x) = setMaximum x
-  setMinimum (ETH2Poly x) = setMinimum x
-  setXTitle (ETH2Poly x) = setXTitle x
-  setYTitle (ETH2Poly x) = setYTitle x
-  setZTitle (ETH2Poly x) = setZTitle x
-
-instance ITNamed (Exist TH2Poly) where
-  setTitle (ETH2Poly x) = setTitle x
-
-instance ITAttLine (Exist TH2Poly) where
-  setLineColor (ETH2Poly x) = setLineColor x
-
-instance ITAttFill (Exist TH2Poly) where
-  setFillColor (ETH2Poly x) = setFillColor x
-  setFillStyle (ETH2Poly x) = setFillStyle x
-
-instance ITAttMarker (Exist TH2Poly) where
-
-
-instance ITObject (Exist TH2Poly) where
-  getName (ETH2Poly x) = getName x
-  draw (ETH2Poly x) = draw x
-  findObject (ETH2Poly x) = findObject x
-  saveAs (ETH2Poly x) = saveAs x
-  write (ETH2Poly x) = write x
-  isA (ETH2Poly x) = isA x
-  printObj (ETH2Poly x) = printObj x
-
-instance IDeletable (Exist TH2Poly) where
-  delete (ETH2Poly x) = delete x
-
-instance ITH2S (Exist TH2S) where
-
-
-instance ITH2 (Exist TH2S) where
-  fill2 (ETH2S x) = fill2 x
-  fillRandom2 (ETH2S x) = fillRandom2 x
-  findFirstBinAbove2 (ETH2S x) = findFirstBinAbove2 x
-  findLastBinAbove2 (ETH2S x) = findLastBinAbove2 x
-  fitSlicesX (ETH2S x) = fitSlicesX x
-  fitSlicesY (ETH2S x) = fitSlicesY x
-  getCorrelationFactor (ETH2S x) = getCorrelationFactor x
-  getCovariance (ETH2S x) = getCovariance x
-  getStats (ETH2S x) = getStats x
-  integral (ETH2S x) = integral x
-  interpolate (ETH2S x) = interpolate x
-  kolmogorovTest (ETH2S x) = kolmogorovTest x
-  rebinX (ETH2S x) = rebinX x
-  rebinY (ETH2S x) = rebinY x
-  rebin2D (ETH2S x) = rebin2D x
-  putStats (ETH2S x) = putStats x
-  reset (ETH2S x) = reset x
-  setShowProjectionX (ETH2S x) = setShowProjectionX x
-  setShowProjectionY (ETH2S x) = setShowProjectionY x
-  showBackground (ETH2S x) = showBackground x
-  showPeaks (ETH2S x) = showPeaks x
-  smooth (ETH2S x) = smooth x
-
-instance ITArrayS (Exist TH2S) where
-
-
-instance ITH1 (Exist TH2S) where
-  add (ETH2S x) = add x
-  addBinContent (ETH2S x) = addBinContent x
-  chi2Test (ETH2S x) = chi2Test x
-  computeIntegral (ETH2S x) = computeIntegral x
-  directoryAutoAdd (ETH2S x) = directoryAutoAdd x
-  distancetoPrimitive (ETH2S x) = distancetoPrimitive x
-  divide (ETH2S x) = divide x
-  drawCopy (ETH2S x) a1 = return . ETH2S =<< drawCopy x a1
-  drawNormalized (ETH2S x) = drawNormalized x
-  drawPanel (ETH2S x) = drawPanel x
-  bufferEmpty (ETH2S x) = bufferEmpty x
-  eval (ETH2S x) = eval x
-  executeEvent (ETH2S x) = executeEvent x
-  fFT (ETH2S x) = fFT x
-  fill1 (ETH2S x) = fill1 x
-  fillN (ETH2S x) = fillN x
-  fillRandom (ETH2S x) = fillRandom x
-  findBin (ETH2S x) = findBin x
-  findFixBin (ETH2S x) = findFixBin x
-  findFirstBinAbove (ETH2S x) = findFirstBinAbove x
-  findLastBinAbove (ETH2S x) = findLastBinAbove x
-  fitPanel (ETH2S x) = fitPanel x
-  getNdivisions (ETH2S x) = getNdivisions x
-  getAxisColor (ETH2S x) = getAxisColor x
-  getLabelColor (ETH2S x) = getLabelColor x
-  getLabelFont (ETH2S x) = getLabelFont x
-  getLabelOffset (ETH2S x) = getLabelOffset x
-  getLabelSize (ETH2S x) = getLabelSize x
-  getTitleFont (ETH2S x) = getTitleFont x
-  getTitleOffset (ETH2S x) = getTitleOffset x
-  getTitleSize (ETH2S x) = getTitleSize x
-  getTickLength (ETH2S x) = getTickLength x
-  getBarOffset (ETH2S x) = getBarOffset x
-  getBarWidth (ETH2S x) = getBarWidth x
-  getContour (ETH2S x) = getContour x
-  getContourLevel (ETH2S x) = getContourLevel x
-  getContourLevelPad (ETH2S x) = getContourLevelPad x
-  getBin (ETH2S x) = getBin x
-  getBinCenter (ETH2S x) = getBinCenter x
-  getBinContent1 (ETH2S x) = getBinContent1 x
-  getBinContent2 (ETH2S x) = getBinContent2 x
-  getBinContent3 (ETH2S x) = getBinContent3 x
-  getBinError1 (ETH2S x) = getBinError1 x
-  getBinError2 (ETH2S x) = getBinError2 x
-  getBinError3 (ETH2S x) = getBinError3 x
-  getBinLowEdge (ETH2S x) = getBinLowEdge x
-  getBinWidth (ETH2S x) = getBinWidth x
-  getCellContent (ETH2S x) = getCellContent x
-  getCellError (ETH2S x) = getCellError x
-  scale (ETH2S x) = scale x
-  setAxisColor (ETH2S x) = setAxisColor x
-  setAxisRange (ETH2S x) = setAxisRange x
-  setBarOffset (ETH2S x) = setBarOffset x
-  setBarWidth (ETH2S x) = setBarWidth x
-  setBinContent1 (ETH2S x) = setBinContent1 x
-  setBinContent2 (ETH2S x) = setBinContent2 x
-  setBinContent3 (ETH2S x) = setBinContent3 x
-  setBinError1 (ETH2S x) = setBinError1 x
-  setBinError2 (ETH2S x) = setBinError2 x
-  setBinError3 (ETH2S x) = setBinError3 x
-  setBins1 (ETH2S x) = setBins1 x
-  setBins2 (ETH2S x) = setBins2 x
-  setBins3 (ETH2S x) = setBins3 x
-  setMaximum (ETH2S x) = setMaximum x
-  setMinimum (ETH2S x) = setMinimum x
-  setXTitle (ETH2S x) = setXTitle x
-  setYTitle (ETH2S x) = setYTitle x
-  setZTitle (ETH2S x) = setZTitle x
-
-instance ITNamed (Exist TH2S) where
-  setTitle (ETH2S x) = setTitle x
-
-instance ITAttLine (Exist TH2S) where
-  setLineColor (ETH2S x) = setLineColor x
-
-instance ITAttFill (Exist TH2S) where
-  setFillColor (ETH2S x) = setFillColor x
-  setFillStyle (ETH2S x) = setFillStyle x
-
-instance ITAttMarker (Exist TH2S) where
-
-
-instance ITObject (Exist TH2S) where
-  getName (ETH2S x) = getName x
-  draw (ETH2S x) = draw x
-  findObject (ETH2S x) = findObject x
-  saveAs (ETH2S x) = saveAs x
-  write (ETH2S x) = write x
-  isA (ETH2S x) = isA x
-  printObj (ETH2S x) = printObj x
-
-instance IDeletable (Exist TH2S) where
-  delete (ETH2S x) = delete x
-
-instance ITArray (Exist TH2S) where
-
-
-instance ITH3C (Exist TH3C) where
-
-
-instance ITH3 (Exist TH3C) where
-
-
-instance ITArrayC (Exist TH3C) where
-
-
-instance ITH1 (Exist TH3C) where
-  add (ETH3C x) = add x
-  addBinContent (ETH3C x) = addBinContent x
-  chi2Test (ETH3C x) = chi2Test x
-  computeIntegral (ETH3C x) = computeIntegral x
-  directoryAutoAdd (ETH3C x) = directoryAutoAdd x
-  distancetoPrimitive (ETH3C x) = distancetoPrimitive x
-  divide (ETH3C x) = divide x
-  drawCopy (ETH3C x) a1 = return . ETH3C =<< drawCopy x a1
-  drawNormalized (ETH3C x) = drawNormalized x
-  drawPanel (ETH3C x) = drawPanel x
-  bufferEmpty (ETH3C x) = bufferEmpty x
-  eval (ETH3C x) = eval x
-  executeEvent (ETH3C x) = executeEvent x
-  fFT (ETH3C x) = fFT x
-  fill1 (ETH3C x) = fill1 x
-  fillN (ETH3C x) = fillN x
-  fillRandom (ETH3C x) = fillRandom x
-  findBin (ETH3C x) = findBin x
-  findFixBin (ETH3C x) = findFixBin x
-  findFirstBinAbove (ETH3C x) = findFirstBinAbove x
-  findLastBinAbove (ETH3C x) = findLastBinAbove x
-  fitPanel (ETH3C x) = fitPanel x
-  getNdivisions (ETH3C x) = getNdivisions x
-  getAxisColor (ETH3C x) = getAxisColor x
-  getLabelColor (ETH3C x) = getLabelColor x
-  getLabelFont (ETH3C x) = getLabelFont x
-  getLabelOffset (ETH3C x) = getLabelOffset x
-  getLabelSize (ETH3C x) = getLabelSize x
-  getTitleFont (ETH3C x) = getTitleFont x
-  getTitleOffset (ETH3C x) = getTitleOffset x
-  getTitleSize (ETH3C x) = getTitleSize x
-  getTickLength (ETH3C x) = getTickLength x
-  getBarOffset (ETH3C x) = getBarOffset x
-  getBarWidth (ETH3C x) = getBarWidth x
-  getContour (ETH3C x) = getContour x
-  getContourLevel (ETH3C x) = getContourLevel x
-  getContourLevelPad (ETH3C x) = getContourLevelPad x
-  getBin (ETH3C x) = getBin x
-  getBinCenter (ETH3C x) = getBinCenter x
-  getBinContent1 (ETH3C x) = getBinContent1 x
-  getBinContent2 (ETH3C x) = getBinContent2 x
-  getBinContent3 (ETH3C x) = getBinContent3 x
-  getBinError1 (ETH3C x) = getBinError1 x
-  getBinError2 (ETH3C x) = getBinError2 x
-  getBinError3 (ETH3C x) = getBinError3 x
-  getBinLowEdge (ETH3C x) = getBinLowEdge x
-  getBinWidth (ETH3C x) = getBinWidth x
-  getCellContent (ETH3C x) = getCellContent x
-  getCellError (ETH3C x) = getCellError x
-  scale (ETH3C x) = scale x
-  setAxisColor (ETH3C x) = setAxisColor x
-  setAxisRange (ETH3C x) = setAxisRange x
-  setBarOffset (ETH3C x) = setBarOffset x
-  setBarWidth (ETH3C x) = setBarWidth x
-  setBinContent1 (ETH3C x) = setBinContent1 x
-  setBinContent2 (ETH3C x) = setBinContent2 x
-  setBinContent3 (ETH3C x) = setBinContent3 x
-  setBinError1 (ETH3C x) = setBinError1 x
-  setBinError2 (ETH3C x) = setBinError2 x
-  setBinError3 (ETH3C x) = setBinError3 x
-  setBins1 (ETH3C x) = setBins1 x
-  setBins2 (ETH3C x) = setBins2 x
-  setBins3 (ETH3C x) = setBins3 x
-  setMaximum (ETH3C x) = setMaximum x
-  setMinimum (ETH3C x) = setMinimum x
-  setXTitle (ETH3C x) = setXTitle x
-  setYTitle (ETH3C x) = setYTitle x
-  setZTitle (ETH3C x) = setZTitle x
-
-instance ITAtt3D (Exist TH3C) where
-
-
-instance ITNamed (Exist TH3C) where
-  setTitle (ETH3C x) = setTitle x
-
-instance ITAttLine (Exist TH3C) where
-  setLineColor (ETH3C x) = setLineColor x
-
-instance ITAttFill (Exist TH3C) where
-  setFillColor (ETH3C x) = setFillColor x
-  setFillStyle (ETH3C x) = setFillStyle x
-
-instance ITAttMarker (Exist TH3C) where
-
-
-instance ITObject (Exist TH3C) where
-  getName (ETH3C x) = getName x
-  draw (ETH3C x) = draw x
-  findObject (ETH3C x) = findObject x
-  saveAs (ETH3C x) = saveAs x
-  write (ETH3C x) = write x
-  isA (ETH3C x) = isA x
-  printObj (ETH3C x) = printObj x
-
-instance IDeletable (Exist TH3C) where
-  delete (ETH3C x) = delete x
-
-instance ITArray (Exist TH3C) where
-
-
-instance ITH3D (Exist TH3D) where
-
-
-instance ITH3 (Exist TH3D) where
-
-
-instance ITArrayD (Exist TH3D) where
-
-
-instance ITH1 (Exist TH3D) where
-  add (ETH3D x) = add x
-  addBinContent (ETH3D x) = addBinContent x
-  chi2Test (ETH3D x) = chi2Test x
-  computeIntegral (ETH3D x) = computeIntegral x
-  directoryAutoAdd (ETH3D x) = directoryAutoAdd x
-  distancetoPrimitive (ETH3D x) = distancetoPrimitive x
-  divide (ETH3D x) = divide x
-  drawCopy (ETH3D x) a1 = return . ETH3D =<< drawCopy x a1
-  drawNormalized (ETH3D x) = drawNormalized x
-  drawPanel (ETH3D x) = drawPanel x
-  bufferEmpty (ETH3D x) = bufferEmpty x
-  eval (ETH3D x) = eval x
-  executeEvent (ETH3D x) = executeEvent x
-  fFT (ETH3D x) = fFT x
-  fill1 (ETH3D x) = fill1 x
-  fillN (ETH3D x) = fillN x
-  fillRandom (ETH3D x) = fillRandom x
-  findBin (ETH3D x) = findBin x
-  findFixBin (ETH3D x) = findFixBin x
-  findFirstBinAbove (ETH3D x) = findFirstBinAbove x
-  findLastBinAbove (ETH3D x) = findLastBinAbove x
-  fitPanel (ETH3D x) = fitPanel x
-  getNdivisions (ETH3D x) = getNdivisions x
-  getAxisColor (ETH3D x) = getAxisColor x
-  getLabelColor (ETH3D x) = getLabelColor x
-  getLabelFont (ETH3D x) = getLabelFont x
-  getLabelOffset (ETH3D x) = getLabelOffset x
-  getLabelSize (ETH3D x) = getLabelSize x
-  getTitleFont (ETH3D x) = getTitleFont x
-  getTitleOffset (ETH3D x) = getTitleOffset x
-  getTitleSize (ETH3D x) = getTitleSize x
-  getTickLength (ETH3D x) = getTickLength x
-  getBarOffset (ETH3D x) = getBarOffset x
-  getBarWidth (ETH3D x) = getBarWidth x
-  getContour (ETH3D x) = getContour x
-  getContourLevel (ETH3D x) = getContourLevel x
-  getContourLevelPad (ETH3D x) = getContourLevelPad x
-  getBin (ETH3D x) = getBin x
-  getBinCenter (ETH3D x) = getBinCenter x
-  getBinContent1 (ETH3D x) = getBinContent1 x
-  getBinContent2 (ETH3D x) = getBinContent2 x
-  getBinContent3 (ETH3D x) = getBinContent3 x
-  getBinError1 (ETH3D x) = getBinError1 x
-  getBinError2 (ETH3D x) = getBinError2 x
-  getBinError3 (ETH3D x) = getBinError3 x
-  getBinLowEdge (ETH3D x) = getBinLowEdge x
-  getBinWidth (ETH3D x) = getBinWidth x
-  getCellContent (ETH3D x) = getCellContent x
-  getCellError (ETH3D x) = getCellError x
-  scale (ETH3D x) = scale x
-  setAxisColor (ETH3D x) = setAxisColor x
-  setAxisRange (ETH3D x) = setAxisRange x
-  setBarOffset (ETH3D x) = setBarOffset x
-  setBarWidth (ETH3D x) = setBarWidth x
-  setBinContent1 (ETH3D x) = setBinContent1 x
-  setBinContent2 (ETH3D x) = setBinContent2 x
-  setBinContent3 (ETH3D x) = setBinContent3 x
-  setBinError1 (ETH3D x) = setBinError1 x
-  setBinError2 (ETH3D x) = setBinError2 x
-  setBinError3 (ETH3D x) = setBinError3 x
-  setBins1 (ETH3D x) = setBins1 x
-  setBins2 (ETH3D x) = setBins2 x
-  setBins3 (ETH3D x) = setBins3 x
-  setMaximum (ETH3D x) = setMaximum x
-  setMinimum (ETH3D x) = setMinimum x
-  setXTitle (ETH3D x) = setXTitle x
-  setYTitle (ETH3D x) = setYTitle x
-  setZTitle (ETH3D x) = setZTitle x
-
-instance ITAtt3D (Exist TH3D) where
-
-
-instance ITNamed (Exist TH3D) where
-  setTitle (ETH3D x) = setTitle x
-
-instance ITAttLine (Exist TH3D) where
-  setLineColor (ETH3D x) = setLineColor x
-
-instance ITAttFill (Exist TH3D) where
-  setFillColor (ETH3D x) = setFillColor x
-  setFillStyle (ETH3D x) = setFillStyle x
-
-instance ITAttMarker (Exist TH3D) where
-
-
-instance ITObject (Exist TH3D) where
-  getName (ETH3D x) = getName x
-  draw (ETH3D x) = draw x
-  findObject (ETH3D x) = findObject x
-  saveAs (ETH3D x) = saveAs x
-  write (ETH3D x) = write x
-  isA (ETH3D x) = isA x
-  printObj (ETH3D x) = printObj x
-
-instance IDeletable (Exist TH3D) where
-  delete (ETH3D x) = delete x
-
-instance ITArray (Exist TH3D) where
-
-
-instance ITH3F (Exist TH3F) where
-
-
-instance ITH3 (Exist TH3F) where
-
-
-instance ITArrayF (Exist TH3F) where
-
-
-instance ITH1 (Exist TH3F) where
-  add (ETH3F x) = add x
-  addBinContent (ETH3F x) = addBinContent x
-  chi2Test (ETH3F x) = chi2Test x
-  computeIntegral (ETH3F x) = computeIntegral x
-  directoryAutoAdd (ETH3F x) = directoryAutoAdd x
-  distancetoPrimitive (ETH3F x) = distancetoPrimitive x
-  divide (ETH3F x) = divide x
-  drawCopy (ETH3F x) a1 = return . ETH3F =<< drawCopy x a1
-  drawNormalized (ETH3F x) = drawNormalized x
-  drawPanel (ETH3F x) = drawPanel x
-  bufferEmpty (ETH3F x) = bufferEmpty x
-  eval (ETH3F x) = eval x
-  executeEvent (ETH3F x) = executeEvent x
-  fFT (ETH3F x) = fFT x
-  fill1 (ETH3F x) = fill1 x
-  fillN (ETH3F x) = fillN x
-  fillRandom (ETH3F x) = fillRandom x
-  findBin (ETH3F x) = findBin x
-  findFixBin (ETH3F x) = findFixBin x
-  findFirstBinAbove (ETH3F x) = findFirstBinAbove x
-  findLastBinAbove (ETH3F x) = findLastBinAbove x
-  fitPanel (ETH3F x) = fitPanel x
-  getNdivisions (ETH3F x) = getNdivisions x
-  getAxisColor (ETH3F x) = getAxisColor x
-  getLabelColor (ETH3F x) = getLabelColor x
-  getLabelFont (ETH3F x) = getLabelFont x
-  getLabelOffset (ETH3F x) = getLabelOffset x
-  getLabelSize (ETH3F x) = getLabelSize x
-  getTitleFont (ETH3F x) = getTitleFont x
-  getTitleOffset (ETH3F x) = getTitleOffset x
-  getTitleSize (ETH3F x) = getTitleSize x
-  getTickLength (ETH3F x) = getTickLength x
-  getBarOffset (ETH3F x) = getBarOffset x
-  getBarWidth (ETH3F x) = getBarWidth x
-  getContour (ETH3F x) = getContour x
-  getContourLevel (ETH3F x) = getContourLevel x
-  getContourLevelPad (ETH3F x) = getContourLevelPad x
-  getBin (ETH3F x) = getBin x
-  getBinCenter (ETH3F x) = getBinCenter x
-  getBinContent1 (ETH3F x) = getBinContent1 x
-  getBinContent2 (ETH3F x) = getBinContent2 x
-  getBinContent3 (ETH3F x) = getBinContent3 x
-  getBinError1 (ETH3F x) = getBinError1 x
-  getBinError2 (ETH3F x) = getBinError2 x
-  getBinError3 (ETH3F x) = getBinError3 x
-  getBinLowEdge (ETH3F x) = getBinLowEdge x
-  getBinWidth (ETH3F x) = getBinWidth x
-  getCellContent (ETH3F x) = getCellContent x
-  getCellError (ETH3F x) = getCellError x
-  scale (ETH3F x) = scale x
-  setAxisColor (ETH3F x) = setAxisColor x
-  setAxisRange (ETH3F x) = setAxisRange x
-  setBarOffset (ETH3F x) = setBarOffset x
-  setBarWidth (ETH3F x) = setBarWidth x
-  setBinContent1 (ETH3F x) = setBinContent1 x
-  setBinContent2 (ETH3F x) = setBinContent2 x
-  setBinContent3 (ETH3F x) = setBinContent3 x
-  setBinError1 (ETH3F x) = setBinError1 x
-  setBinError2 (ETH3F x) = setBinError2 x
-  setBinError3 (ETH3F x) = setBinError3 x
-  setBins1 (ETH3F x) = setBins1 x
-  setBins2 (ETH3F x) = setBins2 x
-  setBins3 (ETH3F x) = setBins3 x
-  setMaximum (ETH3F x) = setMaximum x
-  setMinimum (ETH3F x) = setMinimum x
-  setXTitle (ETH3F x) = setXTitle x
-  setYTitle (ETH3F x) = setYTitle x
-  setZTitle (ETH3F x) = setZTitle x
-
-instance ITAtt3D (Exist TH3F) where
-
-
-instance ITNamed (Exist TH3F) where
-  setTitle (ETH3F x) = setTitle x
-
-instance ITAttLine (Exist TH3F) where
-  setLineColor (ETH3F x) = setLineColor x
-
-instance ITAttFill (Exist TH3F) where
-  setFillColor (ETH3F x) = setFillColor x
-  setFillStyle (ETH3F x) = setFillStyle x
-
-instance ITAttMarker (Exist TH3F) where
-
-
-instance ITObject (Exist TH3F) where
-  getName (ETH3F x) = getName x
-  draw (ETH3F x) = draw x
-  findObject (ETH3F x) = findObject x
-  saveAs (ETH3F x) = saveAs x
-  write (ETH3F x) = write x
-  isA (ETH3F x) = isA x
-  printObj (ETH3F x) = printObj x
-
-instance IDeletable (Exist TH3F) where
-  delete (ETH3F x) = delete x
-
-instance ITArray (Exist TH3F) where
-
-
-instance ITH3I (Exist TH3I) where
-
-
-instance ITH3 (Exist TH3I) where
-
-
-instance ITArrayI (Exist TH3I) where
-
-
-instance ITH1 (Exist TH3I) where
-  add (ETH3I x) = add x
-  addBinContent (ETH3I x) = addBinContent x
-  chi2Test (ETH3I x) = chi2Test x
-  computeIntegral (ETH3I x) = computeIntegral x
-  directoryAutoAdd (ETH3I x) = directoryAutoAdd x
-  distancetoPrimitive (ETH3I x) = distancetoPrimitive x
-  divide (ETH3I x) = divide x
-  drawCopy (ETH3I x) a1 = return . ETH3I =<< drawCopy x a1
-  drawNormalized (ETH3I x) = drawNormalized x
-  drawPanel (ETH3I x) = drawPanel x
-  bufferEmpty (ETH3I x) = bufferEmpty x
-  eval (ETH3I x) = eval x
-  executeEvent (ETH3I x) = executeEvent x
-  fFT (ETH3I x) = fFT x
-  fill1 (ETH3I x) = fill1 x
-  fillN (ETH3I x) = fillN x
-  fillRandom (ETH3I x) = fillRandom x
-  findBin (ETH3I x) = findBin x
-  findFixBin (ETH3I x) = findFixBin x
-  findFirstBinAbove (ETH3I x) = findFirstBinAbove x
-  findLastBinAbove (ETH3I x) = findLastBinAbove x
-  fitPanel (ETH3I x) = fitPanel x
-  getNdivisions (ETH3I x) = getNdivisions x
-  getAxisColor (ETH3I x) = getAxisColor x
-  getLabelColor (ETH3I x) = getLabelColor x
-  getLabelFont (ETH3I x) = getLabelFont x
-  getLabelOffset (ETH3I x) = getLabelOffset x
-  getLabelSize (ETH3I x) = getLabelSize x
-  getTitleFont (ETH3I x) = getTitleFont x
-  getTitleOffset (ETH3I x) = getTitleOffset x
-  getTitleSize (ETH3I x) = getTitleSize x
-  getTickLength (ETH3I x) = getTickLength x
-  getBarOffset (ETH3I x) = getBarOffset x
-  getBarWidth (ETH3I x) = getBarWidth x
-  getContour (ETH3I x) = getContour x
-  getContourLevel (ETH3I x) = getContourLevel x
-  getContourLevelPad (ETH3I x) = getContourLevelPad x
-  getBin (ETH3I x) = getBin x
-  getBinCenter (ETH3I x) = getBinCenter x
-  getBinContent1 (ETH3I x) = getBinContent1 x
-  getBinContent2 (ETH3I x) = getBinContent2 x
-  getBinContent3 (ETH3I x) = getBinContent3 x
-  getBinError1 (ETH3I x) = getBinError1 x
-  getBinError2 (ETH3I x) = getBinError2 x
-  getBinError3 (ETH3I x) = getBinError3 x
-  getBinLowEdge (ETH3I x) = getBinLowEdge x
-  getBinWidth (ETH3I x) = getBinWidth x
-  getCellContent (ETH3I x) = getCellContent x
-  getCellError (ETH3I x) = getCellError x
-  scale (ETH3I x) = scale x
-  setAxisColor (ETH3I x) = setAxisColor x
-  setAxisRange (ETH3I x) = setAxisRange x
-  setBarOffset (ETH3I x) = setBarOffset x
-  setBarWidth (ETH3I x) = setBarWidth x
-  setBinContent1 (ETH3I x) = setBinContent1 x
-  setBinContent2 (ETH3I x) = setBinContent2 x
-  setBinContent3 (ETH3I x) = setBinContent3 x
-  setBinError1 (ETH3I x) = setBinError1 x
-  setBinError2 (ETH3I x) = setBinError2 x
-  setBinError3 (ETH3I x) = setBinError3 x
-  setBins1 (ETH3I x) = setBins1 x
-  setBins2 (ETH3I x) = setBins2 x
-  setBins3 (ETH3I x) = setBins3 x
-  setMaximum (ETH3I x) = setMaximum x
-  setMinimum (ETH3I x) = setMinimum x
-  setXTitle (ETH3I x) = setXTitle x
-  setYTitle (ETH3I x) = setYTitle x
-  setZTitle (ETH3I x) = setZTitle x
-
-instance ITAtt3D (Exist TH3I) where
-
-
-instance ITNamed (Exist TH3I) where
-  setTitle (ETH3I x) = setTitle x
-
-instance ITAttLine (Exist TH3I) where
-  setLineColor (ETH3I x) = setLineColor x
-
-instance ITAttFill (Exist TH3I) where
-  setFillColor (ETH3I x) = setFillColor x
-  setFillStyle (ETH3I x) = setFillStyle x
-
-instance ITAttMarker (Exist TH3I) where
-
-
-instance ITObject (Exist TH3I) where
-  getName (ETH3I x) = getName x
-  draw (ETH3I x) = draw x
-  findObject (ETH3I x) = findObject x
-  saveAs (ETH3I x) = saveAs x
-  write (ETH3I x) = write x
-  isA (ETH3I x) = isA x
-  printObj (ETH3I x) = printObj x
-
-instance IDeletable (Exist TH3I) where
-  delete (ETH3I x) = delete x
-
-instance ITArray (Exist TH3I) where
-
-
-instance ITH3S (Exist TH3S) where
-
-
-instance ITH3 (Exist TH3S) where
-
-
-instance ITArrayS (Exist TH3S) where
-
-
-instance ITH1 (Exist TH3S) where
-  add (ETH3S x) = add x
-  addBinContent (ETH3S x) = addBinContent x
-  chi2Test (ETH3S x) = chi2Test x
-  computeIntegral (ETH3S x) = computeIntegral x
-  directoryAutoAdd (ETH3S x) = directoryAutoAdd x
-  distancetoPrimitive (ETH3S x) = distancetoPrimitive x
-  divide (ETH3S x) = divide x
-  drawCopy (ETH3S x) a1 = return . ETH3S =<< drawCopy x a1
-  drawNormalized (ETH3S x) = drawNormalized x
-  drawPanel (ETH3S x) = drawPanel x
-  bufferEmpty (ETH3S x) = bufferEmpty x
-  eval (ETH3S x) = eval x
-  executeEvent (ETH3S x) = executeEvent x
-  fFT (ETH3S x) = fFT x
-  fill1 (ETH3S x) = fill1 x
-  fillN (ETH3S x) = fillN x
-  fillRandom (ETH3S x) = fillRandom x
-  findBin (ETH3S x) = findBin x
-  findFixBin (ETH3S x) = findFixBin x
-  findFirstBinAbove (ETH3S x) = findFirstBinAbove x
-  findLastBinAbove (ETH3S x) = findLastBinAbove x
-  fitPanel (ETH3S x) = fitPanel x
-  getNdivisions (ETH3S x) = getNdivisions x
-  getAxisColor (ETH3S x) = getAxisColor x
-  getLabelColor (ETH3S x) = getLabelColor x
-  getLabelFont (ETH3S x) = getLabelFont x
-  getLabelOffset (ETH3S x) = getLabelOffset x
-  getLabelSize (ETH3S x) = getLabelSize x
-  getTitleFont (ETH3S x) = getTitleFont x
-  getTitleOffset (ETH3S x) = getTitleOffset x
-  getTitleSize (ETH3S x) = getTitleSize x
-  getTickLength (ETH3S x) = getTickLength x
-  getBarOffset (ETH3S x) = getBarOffset x
-  getBarWidth (ETH3S x) = getBarWidth x
-  getContour (ETH3S x) = getContour x
-  getContourLevel (ETH3S x) = getContourLevel x
-  getContourLevelPad (ETH3S x) = getContourLevelPad x
-  getBin (ETH3S x) = getBin x
-  getBinCenter (ETH3S x) = getBinCenter x
-  getBinContent1 (ETH3S x) = getBinContent1 x
-  getBinContent2 (ETH3S x) = getBinContent2 x
-  getBinContent3 (ETH3S x) = getBinContent3 x
-  getBinError1 (ETH3S x) = getBinError1 x
-  getBinError2 (ETH3S x) = getBinError2 x
-  getBinError3 (ETH3S x) = getBinError3 x
-  getBinLowEdge (ETH3S x) = getBinLowEdge x
-  getBinWidth (ETH3S x) = getBinWidth x
-  getCellContent (ETH3S x) = getCellContent x
-  getCellError (ETH3S x) = getCellError x
-  scale (ETH3S x) = scale x
-  setAxisColor (ETH3S x) = setAxisColor x
-  setAxisRange (ETH3S x) = setAxisRange x
-  setBarOffset (ETH3S x) = setBarOffset x
-  setBarWidth (ETH3S x) = setBarWidth x
-  setBinContent1 (ETH3S x) = setBinContent1 x
-  setBinContent2 (ETH3S x) = setBinContent2 x
-  setBinContent3 (ETH3S x) = setBinContent3 x
-  setBinError1 (ETH3S x) = setBinError1 x
-  setBinError2 (ETH3S x) = setBinError2 x
-  setBinError3 (ETH3S x) = setBinError3 x
-  setBins1 (ETH3S x) = setBins1 x
-  setBins2 (ETH3S x) = setBins2 x
-  setBins3 (ETH3S x) = setBins3 x
-  setMaximum (ETH3S x) = setMaximum x
-  setMinimum (ETH3S x) = setMinimum x
-  setXTitle (ETH3S x) = setXTitle x
-  setYTitle (ETH3S x) = setYTitle x
-  setZTitle (ETH3S x) = setZTitle x
-
-instance ITAtt3D (Exist TH3S) where
-
-
-instance ITNamed (Exist TH3S) where
-  setTitle (ETH3S x) = setTitle x
-
-instance ITAttLine (Exist TH3S) where
-  setLineColor (ETH3S x) = setLineColor x
-
-instance ITAttFill (Exist TH3S) where
-  setFillColor (ETH3S x) = setFillColor x
-  setFillStyle (ETH3S x) = setFillStyle x
-
-instance ITAttMarker (Exist TH3S) where
-
-
-instance ITObject (Exist TH3S) where
-  getName (ETH3S x) = getName x
-  draw (ETH3S x) = draw x
-  findObject (ETH3S x) = findObject x
-  saveAs (ETH3S x) = saveAs x
-  write (ETH3S x) = write x
-  isA (ETH3S x) = isA x
-  printObj (ETH3S x) = printObj x
-
-instance IDeletable (Exist TH3S) where
-  delete (ETH3S x) = delete x
-
-instance ITArray (Exist TH3S) where
-
-
-instance ITQObject (Exist TQObject) where
-
-
-instance IDeletable (Exist TQObject) where
-  delete (ETQObject x) = delete x
-
-instance ITVirtualPad (Exist TVirtualPad) where
-  getFrame (ETVirtualPad x) = getFrame x
-  range (ETVirtualPad x) = range x
-
-instance ITObject (Exist TVirtualPad) where
-  getName (ETVirtualPad x) = getName x
-  draw (ETVirtualPad x) = draw x
-  findObject (ETVirtualPad x) = findObject x
-  saveAs (ETVirtualPad x) = saveAs x
-  write (ETVirtualPad x) = write x
-  isA (ETVirtualPad x) = isA x
-  printObj (ETVirtualPad x) = printObj x
-
-instance ITAttLine (Exist TVirtualPad) where
-  setLineColor (ETVirtualPad x) = setLineColor x
-
-instance ITAttFill (Exist TVirtualPad) where
-  setFillColor (ETVirtualPad x) = setFillColor x
-  setFillStyle (ETVirtualPad x) = setFillStyle x
-
-instance ITAttPad (Exist TVirtualPad) where
-
-
-instance ITQObject (Exist TVirtualPad) where
-
-
-instance IDeletable (Exist TVirtualPad) where
-  delete (ETVirtualPad x) = delete x
-
-instance ITPad (Exist TPad) where
-
-
-instance ITVirtualPad (Exist TPad) where
-  getFrame (ETPad x) = getFrame x
-  range (ETPad x) = range x
-
-instance ITObject (Exist TPad) where
-  getName (ETPad x) = getName x
-  draw (ETPad x) = draw x
-  findObject (ETPad x) = findObject x
-  saveAs (ETPad x) = saveAs x
-  write (ETPad x) = write x
-  isA (ETPad x) = isA x
-  printObj (ETPad x) = printObj x
-
-instance ITAttLine (Exist TPad) where
-  setLineColor (ETPad x) = setLineColor x
-
-instance ITAttFill (Exist TPad) where
-  setFillColor (ETPad x) = setFillColor x
-  setFillStyle (ETPad x) = setFillStyle x
-
-instance ITAttPad (Exist TPad) where
-
-
-instance ITQObject (Exist TPad) where
-
-
-instance IDeletable (Exist TPad) where
-  delete (ETPad x) = delete x
-
-instance ITButton (Exist TButton) where
-
-
-instance ITPad (Exist TButton) where
-
-
-instance ITAttText (Exist TButton) where
-  setTextColor (ETButton x) = setTextColor x
-  setTextAlign (ETButton x) = setTextAlign x
-  setTextSize (ETButton x) = setTextSize x
-
-instance ITVirtualPad (Exist TButton) where
-  getFrame (ETButton x) = getFrame x
-  range (ETButton x) = range x
-
-instance ITObject (Exist TButton) where
-  getName (ETButton x) = getName x
-  draw (ETButton x) = draw x
-  findObject (ETButton x) = findObject x
-  saveAs (ETButton x) = saveAs x
-  write (ETButton x) = write x
-  isA (ETButton x) = isA x
-  printObj (ETButton x) = printObj x
-
-instance ITAttLine (Exist TButton) where
-  setLineColor (ETButton x) = setLineColor x
-
-instance ITAttFill (Exist TButton) where
-  setFillColor (ETButton x) = setFillColor x
-  setFillStyle (ETButton x) = setFillStyle x
-
-instance ITAttPad (Exist TButton) where
-
-
-instance ITQObject (Exist TButton) where
-
-
-instance IDeletable (Exist TButton) where
-  delete (ETButton x) = delete x
-
-instance ITGroupButton (Exist TGroupButton) where
-
-
-instance ITButton (Exist TGroupButton) where
-
-
-instance ITPad (Exist TGroupButton) where
-
-
-instance ITAttText (Exist TGroupButton) where
-  setTextColor (ETGroupButton x) = setTextColor x
-  setTextAlign (ETGroupButton x) = setTextAlign x
-  setTextSize (ETGroupButton x) = setTextSize x
-
-instance ITVirtualPad (Exist TGroupButton) where
-  getFrame (ETGroupButton x) = getFrame x
-  range (ETGroupButton x) = range x
-
-instance ITObject (Exist TGroupButton) where
-  getName (ETGroupButton x) = getName x
-  draw (ETGroupButton x) = draw x
-  findObject (ETGroupButton x) = findObject x
-  saveAs (ETGroupButton x) = saveAs x
-  write (ETGroupButton x) = write x
-  isA (ETGroupButton x) = isA x
-  printObj (ETGroupButton x) = printObj x
-
-instance ITAttLine (Exist TGroupButton) where
-  setLineColor (ETGroupButton x) = setLineColor x
-
-instance ITAttFill (Exist TGroupButton) where
-  setFillColor (ETGroupButton x) = setFillColor x
-  setFillStyle (ETGroupButton x) = setFillStyle x
-
-instance ITAttPad (Exist TGroupButton) where
-
-
-instance ITQObject (Exist TGroupButton) where
-
-
-instance IDeletable (Exist TGroupButton) where
-  delete (ETGroupButton x) = delete x
-
-instance ITCanvas (Exist TCanvas) where
-
-
-instance ITPad (Exist TCanvas) where
-
-
-instance ITVirtualPad (Exist TCanvas) where
-  getFrame (ETCanvas x) = getFrame x
-  range (ETCanvas x) = range x
-
-instance ITObject (Exist TCanvas) where
-  getName (ETCanvas x) = getName x
-  draw (ETCanvas x) = draw x
-  findObject (ETCanvas x) = findObject x
-  saveAs (ETCanvas x) = saveAs x
-  write (ETCanvas x) = write x
-  isA (ETCanvas x) = isA x
-  printObj (ETCanvas x) = printObj x
-
-instance ITAttLine (Exist TCanvas) where
-  setLineColor (ETCanvas x) = setLineColor x
-
-instance ITAttFill (Exist TCanvas) where
-  setFillColor (ETCanvas x) = setFillColor x
-  setFillStyle (ETCanvas x) = setFillStyle x
-
-instance ITAttPad (Exist TCanvas) where
-
-
-instance ITQObject (Exist TCanvas) where
-
-
-instance IDeletable (Exist TCanvas) where
-  delete (ETCanvas x) = delete x
-
-instance ITDialogCanvas (Exist TDialogCanvas) where
-
-
-instance ITCanvas (Exist TDialogCanvas) where
-
-
-instance ITAttText (Exist TDialogCanvas) where
-  setTextColor (ETDialogCanvas x) = setTextColor x
-  setTextAlign (ETDialogCanvas x) = setTextAlign x
-  setTextSize (ETDialogCanvas x) = setTextSize x
-
-instance ITPad (Exist TDialogCanvas) where
-
-
-instance ITVirtualPad (Exist TDialogCanvas) where
-  getFrame (ETDialogCanvas x) = getFrame x
-  range (ETDialogCanvas x) = range x
-
-instance ITObject (Exist TDialogCanvas) where
-  getName (ETDialogCanvas x) = getName x
-  draw (ETDialogCanvas x) = draw x
-  findObject (ETDialogCanvas x) = findObject x
-  saveAs (ETDialogCanvas x) = saveAs x
-  write (ETDialogCanvas x) = write x
-  isA (ETDialogCanvas x) = isA x
-  printObj (ETDialogCanvas x) = printObj x
-
-instance ITAttLine (Exist TDialogCanvas) where
-  setLineColor (ETDialogCanvas x) = setLineColor x
-
-instance ITAttFill (Exist TDialogCanvas) where
-  setFillColor (ETDialogCanvas x) = setFillColor x
-  setFillStyle (ETDialogCanvas x) = setFillStyle x
-
-instance ITAttPad (Exist TDialogCanvas) where
-
-
-instance ITQObject (Exist TDialogCanvas) where
-
-
-instance IDeletable (Exist TDialogCanvas) where
-  delete (ETDialogCanvas x) = delete x
-
-instance ITInspectCanvas (Exist TInspectCanvas) where
-
-
-instance ITCanvas (Exist TInspectCanvas) where
-
-
-instance ITAttText (Exist TInspectCanvas) where
-  setTextColor (ETInspectCanvas x) = setTextColor x
-  setTextAlign (ETInspectCanvas x) = setTextAlign x
-  setTextSize (ETInspectCanvas x) = setTextSize x
-
-instance ITPad (Exist TInspectCanvas) where
-
-
-instance ITVirtualPad (Exist TInspectCanvas) where
-  getFrame (ETInspectCanvas x) = getFrame x
-  range (ETInspectCanvas x) = range x
-
-instance ITObject (Exist TInspectCanvas) where
-  getName (ETInspectCanvas x) = getName x
-  draw (ETInspectCanvas x) = draw x
-  findObject (ETInspectCanvas x) = findObject x
-  saveAs (ETInspectCanvas x) = saveAs x
-  write (ETInspectCanvas x) = write x
-  isA (ETInspectCanvas x) = isA x
-  printObj (ETInspectCanvas x) = printObj x
-
-instance ITAttLine (Exist TInspectCanvas) where
-  setLineColor (ETInspectCanvas x) = setLineColor x
-
-instance ITAttFill (Exist TInspectCanvas) where
-  setFillColor (ETInspectCanvas x) = setFillColor x
-  setFillStyle (ETInspectCanvas x) = setFillStyle x
-
-instance ITAttPad (Exist TInspectCanvas) where
-
-
-instance ITQObject (Exist TInspectCanvas) where
-
-
-instance IDeletable (Exist TInspectCanvas) where
-  delete (ETInspectCanvas x) = delete x
-
-instance ITEvePad (Exist TEvePad) where
-
-
-instance ITPad (Exist TEvePad) where
-
-
-instance ITVirtualPad (Exist TEvePad) where
-  getFrame (ETEvePad x) = getFrame x
-  range (ETEvePad x) = range x
-
-instance ITObject (Exist TEvePad) where
-  getName (ETEvePad x) = getName x
-  draw (ETEvePad x) = draw x
-  findObject (ETEvePad x) = findObject x
-  saveAs (ETEvePad x) = saveAs x
-  write (ETEvePad x) = write x
-  isA (ETEvePad x) = isA x
-  printObj (ETEvePad x) = printObj x
-
-instance ITAttLine (Exist TEvePad) where
-  setLineColor (ETEvePad x) = setLineColor x
-
-instance ITAttFill (Exist TEvePad) where
-  setFillColor (ETEvePad x) = setFillColor x
-  setFillStyle (ETEvePad x) = setFillStyle x
-
-instance ITAttPad (Exist TEvePad) where
-
-
-instance ITQObject (Exist TEvePad) where
-
-
-instance IDeletable (Exist TEvePad) where
-  delete (ETEvePad x) = delete x
-
-instance ITSlider (Exist TSlider) where
-
-
-instance ITPad (Exist TSlider) where
-
-
-instance ITVirtualPad (Exist TSlider) where
-  getFrame (ETSlider x) = getFrame x
-  range (ETSlider x) = range x
-
-instance ITObject (Exist TSlider) where
-  getName (ETSlider x) = getName x
-  draw (ETSlider x) = draw x
-  findObject (ETSlider x) = findObject x
-  saveAs (ETSlider x) = saveAs x
-  write (ETSlider x) = write x
-  isA (ETSlider x) = isA x
-  printObj (ETSlider x) = printObj x
-
-instance ITAttLine (Exist TSlider) where
-  setLineColor (ETSlider x) = setLineColor x
-
-instance ITAttFill (Exist TSlider) where
-  setFillColor (ETSlider x) = setFillColor x
-  setFillStyle (ETSlider x) = setFillStyle x
-
-instance ITAttPad (Exist TSlider) where
-
-
-instance ITQObject (Exist TSlider) where
-
-
-instance IDeletable (Exist TSlider) where
-  delete (ETSlider x) = delete x
-
-instance ITApplication (Exist TApplication) where
-  run (ETApplication x) = run x
-
-instance ITObject (Exist TApplication) where
-  getName (ETApplication x) = getName x
-  draw (ETApplication x) = draw x
-  findObject (ETApplication x) = findObject x
-  saveAs (ETApplication x) = saveAs x
-  write (ETApplication x) = write x
-  isA (ETApplication x) = isA x
-  printObj (ETApplication x) = printObj x
-
-instance ITQObject (Exist TApplication) where
-
-
-instance IDeletable (Exist TApplication) where
-  delete (ETApplication x) = delete x
-
-instance ITRint (Exist TRint) where
-
-
-instance ITApplication (Exist TRint) where
-  run (ETRint x) = run x
-
-instance ITObject (Exist TRint) where
-  getName (ETRint x) = getName x
-  draw (ETRint x) = draw x
-  findObject (ETRint x) = findObject x
-  saveAs (ETRint x) = saveAs x
-  write (ETRint x) = write x
-  isA (ETRint x) = isA x
-  printObj (ETRint x) = printObj x
-
-instance ITQObject (Exist TRint) where
-
-
-instance IDeletable (Exist TRint) where
-  delete (ETRint x) = delete x
-
-instance ITRandom (Exist TRandom) where
-  gaus (ETRandom x) = gaus x
-  uniform (ETRandom x) = uniform x
-
-instance ITNamed (Exist TRandom) where
-  setTitle (ETRandom x) = setTitle x
-
-instance ITObject (Exist TRandom) where
-  getName (ETRandom x) = getName x
-  draw (ETRandom x) = draw x
-  findObject (ETRandom x) = findObject x
-  saveAs (ETRandom x) = saveAs x
-  write (ETRandom x) = write x
-  isA (ETRandom x) = isA x
-  printObj (ETRandom x) = printObj x
-
-instance IDeletable (Exist TRandom) where
-  delete (ETRandom x) = delete x
-
-instance ITCollection (Exist TCollection) where
-
-
-instance ITObject (Exist TCollection) where
-  getName (ETCollection x) = getName x
-  draw (ETCollection x) = draw x
-  findObject (ETCollection x) = findObject x
-  saveAs (ETCollection x) = saveAs x
-  write (ETCollection x) = write x
-  isA (ETCollection x) = isA x
-  printObj (ETCollection x) = printObj x
-
-instance IDeletable (Exist TCollection) where
-  delete (ETCollection x) = delete x
-
-instance ITSeqCollection (Exist TSeqCollection) where
-
-
-instance ITCollection (Exist TSeqCollection) where
-
-
-instance ITObject (Exist TSeqCollection) where
-  getName (ETSeqCollection x) = getName x
-  draw (ETSeqCollection x) = draw x
-  findObject (ETSeqCollection x) = findObject x
-  saveAs (ETSeqCollection x) = saveAs x
-  write (ETSeqCollection x) = write x
-  isA (ETSeqCollection x) = isA x
-  printObj (ETSeqCollection x) = printObj x
-
-instance IDeletable (Exist TSeqCollection) where
-  delete (ETSeqCollection x) = delete x
-
-instance ITObjArray (Exist TObjArray) where
-
-
-instance ITSeqCollection (Exist TObjArray) where
-
-
-instance ITCollection (Exist TObjArray) where
-
-
-instance ITObject (Exist TObjArray) where
-  getName (ETObjArray x) = getName x
-  draw (ETObjArray x) = draw x
-  findObject (ETObjArray x) = findObject x
-  saveAs (ETObjArray x) = saveAs x
-  write (ETObjArray x) = write x
-  isA (ETObjArray x) = isA x
-  printObj (ETObjArray x) = printObj x
-
-instance IDeletable (Exist TObjArray) where
-  delete (ETObjArray x) = delete x
-
-instance ITList (Exist TList) where
-
-
-instance ITSeqCollection (Exist TList) where
-
-
-instance ITCollection (Exist TList) where
-
-
-instance ITObject (Exist TList) where
-  getName (ETList x) = getName x
-  draw (ETList x) = draw x
-  findObject (ETList x) = findObject x
-  saveAs (ETList x) = saveAs x
-  write (ETList x) = write x
-  isA (ETList x) = isA x
-  printObj (ETList x) = printObj x
-
-instance IDeletable (Exist TList) where
-  delete (ETList x) = delete x
-
-instance ITKey (Exist TKey) where
-
-
-instance ITNamed (Exist TKey) where
-  setTitle (ETKey x) = setTitle x
-
-instance ITObject (Exist TKey) where
-  getName (ETKey x) = getName x
-  draw (ETKey x) = draw x
-  findObject (ETKey x) = findObject x
-  saveAs (ETKey x) = saveAs x
-  write (ETKey x) = write x
-  isA (ETKey x) = isA x
-  printObj (ETKey x) = printObj x
-
-instance IDeletable (Exist TKey) where
-  delete (ETKey x) = delete x
-
-instance ITDatime (Exist TDatime) where
-  convert (ETDatime x) = convert x
-
-instance IDeletable (Exist TDatime) where
-  delete (ETDatime x) = delete x
-
-
-
-instance ITObject TObject where
-  getName = xform0 c_tobject_getname
-  draw = xform1 c_tobject_draw
-  findObject = xform1 c_tobject_findobject
-  saveAs = xform2 c_tobject_saveas
-  write = xform3 c_tobject_write
-  isA = xform0 c_tobject_isa
-  printObj = xform1 c_tobject_printobj
-
-instance ITNamed TNamed where
-  setTitle = xform1 c_tnamed_settitle
-
-
-
-instance ITClass TClass where
-
-instance ITFormula TFormula where
-  getParameter = xform1 c_tformula_getparameter
-  setParameter = xform2 c_tformula_setparameter
-
-instance ITAtt3D TAtt3D where
-
-instance ITAttAxis TAttAxis where
-  setLabelColor = xform1 c_tattaxis_setlabelcolor
-  setLabelSize = xform1 c_tattaxis_setlabelsize
-  setTickLength = xform1 c_tattaxis_setticklength
-  setTitleOffset = xform1 c_tattaxis_settitleoffset
-  setNdivisions = xform2 c_tattaxis_setndivisions
-
-instance ITAttBBox TAttBBox where
-
-instance ITAttCanvas TAttCanvas where
-
-instance ITAttFill TAttFill where
-  setFillColor = xform1 c_tattfill_setfillcolor
-  setFillStyle = xform1 c_tattfill_setfillstyle
-
-instance ITAttImage TAttImage where
-
-instance ITAttLine TAttLine where
-  setLineColor = xform1 c_tattline_setlinecolor
-
-instance ITAttMarker TAttMarker where
-
-instance ITAttPad TAttPad where
-
-instance ITAttParticle TAttParticle where
-
-instance ITAttText TAttText where
-  setTextColor = xform1 c_tatttext_settextcolor
-  setTextAlign = xform1 c_tatttext_settextalign
-  setTextSize = xform1 c_tatttext_settextsize
-
-instance ITHStack THStack where
-
-instance ITF1 TF1 where
-
-instance ITGraph TGraph where
-
-instance ITGraphAsymmErrors TGraphAsymmErrors where
-
-instance ITCutG TCutG where
-
-instance ITGraphBentErrors TGraphBentErrors where
-
-instance ITGraphErrors TGraphErrors where
-
-instance ITGraphPolar TGraphPolar where
-
-instance ITGraphQQ TGraphQQ where
-
-instance ITEllipse TEllipse where
-
-instance ITArc TArc where
-
-instance ITCrown TCrown where
-
-instance ITLine TLine where
-
-instance ITArrow TArrow where
-
-instance ITGaxis TGaxis where
-
-instance ITShape TShape where
-
-instance ITBRIK TBRIK where
-
-instance ITTUBE TTUBE where
-
-instance ITPCON TPCON where
-
-instance ITSPHE TSPHE where
-
-instance ITXTRU TXTRU where
-
-instance ITBox TBox where
-
-instance ITPave TPave where
-
-instance ITPaveText TPaveText where
-
-instance ITDiamond TDiamond where
-
-instance ITPaveStats TPaveStats where
-
-instance ITPavesText TPavesText where
-
-instance ITLegend TLegend where
-  addEntry = xform3 c_tlegend_addentry
-
-instance ITLegendEntry TLegendEntry where
-
-instance ITPaveLabel TPaveLabel where
-
-instance ITPaveClass TPaveClass where
-
-instance ITWbox TWbox where
-  setBorderMode = xform1 c_twbox_setbordermode
-
-instance ITFrame TFrame where
-
-instance ITSliderBox TSliderBox where
-
-instance ITTree TTree where
-
-instance ITChain TChain where
-
-instance ITNtuple TNtuple where
-
-instance ITNtupleD TNtupleD where
-
-instance ITTreeSQL TTreeSQL where
-
-instance ITPolyLine TPolyLine where
-
-instance ITCurlyLine TCurlyLine where
-
-instance ITCurlyArc TCurlyArc where
-
-instance ITEfficiency TEfficiency where
-
-instance ITAxis TAxis where
-  setTimeDisplay = xform1 c_taxis_settimedisplay
-  setTimeFormat = xform1 c_taxis_settimeformat
-  setTimeOffset = xform2 c_taxis_settimeoffset
-
-instance ITLatex TLatex where
-
-instance ITText TText where
-
-instance ITDirectory TDirectory where
-  append = xform2 c_tdirectory_append
-  addD = xform2 c_tdirectory_addd
-  appendKey = xform1 c_tdirectory_appendkey
-  close = xform1 c_tdirectory_close
-  get = xform1 c_tdirectory_get
-
-instance ITDirectoryFile TDirectoryFile where
-  getListOfKeys = xform0 c_tdirectoryfile_getlistofkeys
-
-instance ITFile TFile where
-
-instance ITBranch TBranch where
-
-instance ITVirtualTreePlayer TVirtualTreePlayer where
-
-instance ITTreePlayer TTreePlayer where
-
-instance ITArray TArray where
-
-instance ITArrayC TArrayC where
-
-instance ITArrayD TArrayD where
-
-instance ITArrayF TArrayF where
-
-instance ITArrayI TArrayI where
-
-instance ITArrayL TArrayL where
-
-instance ITArrayL64 TArrayL64 where
-
-instance ITArrayS TArrayS where
-
-instance ITH1 TH1 where
-  add = xform2 c_th1_add
-  addBinContent = xform2 c_th1_addbincontent
-  chi2Test = xform3 c_th1_chi2test
-  computeIntegral = xform0 c_th1_computeintegral
-  directoryAutoAdd = xform1 c_th1_directoryautoadd
-  distancetoPrimitive = xform2 c_th1_distancetoprimitive
-  divide = xform5 c_th1_divide
-  drawCopy = xform1 c_th1_drawcopy
-  drawNormalized = xform2 c_th1_drawnormalized
-  drawPanel = xform0 c_th1_drawpanel
-  bufferEmpty = xform1 c_th1_bufferempty
-  eval = xform2 c_th1_eval
-  executeEvent = xform3 c_th1_executeevent
-  fFT = xform2 c_th1_fft
-  fill1 = xform1 c_th1_fill1
-  fillN = xform4 c_th1_filln
-  fillRandom = xform2 c_th1_fillrandom
-  findBin = xform3 c_th1_findbin
-  findFixBin = xform3 c_th1_findfixbin
-  findFirstBinAbove = xform2 c_th1_findfirstbinabove
-  findLastBinAbove = xform2 c_th1_findlastbinabove
-  fitPanel = xform0 c_th1_fitpanel
-  getNdivisions = xform1 c_th1_getndivisions
-  getAxisColor = xform1 c_th1_getaxiscolor
-  getLabelColor = xform1 c_th1_getlabelcolor
-  getLabelFont = xform1 c_th1_getlabelfont
-  getLabelOffset = xform1 c_th1_getlabeloffset
-  getLabelSize = xform1 c_th1_getlabelsize
-  getTitleFont = xform1 c_th1_gettitlefont
-  getTitleOffset = xform1 c_th1_gettitleoffset
-  getTitleSize = xform1 c_th1_gettitlesize
-  getTickLength = xform1 c_th1_getticklength
-  getBarOffset = xform0 c_th1_getbaroffset
-  getBarWidth = xform0 c_th1_getbarwidth
-  getContour = xform1 c_th1_getcontour
-  getContourLevel = xform1 c_th1_getcontourlevel
-  getContourLevelPad = xform1 c_th1_getcontourlevelpad
-  getBin = xform3 c_th1_getbin
-  getBinCenter = xform1 c_th1_getbincenter
-  getBinContent1 = xform1 c_th1_getbincontent1
-  getBinContent2 = xform2 c_th1_getbincontent2
-  getBinContent3 = xform3 c_th1_getbincontent3
-  getBinError1 = xform1 c_th1_getbinerror1
-  getBinError2 = xform2 c_th1_getbinerror2
-  getBinError3 = xform3 c_th1_getbinerror3
-  getBinLowEdge = xform1 c_th1_getbinlowedge
-  getBinWidth = xform1 c_th1_getbinwidth
-  getCellContent = xform2 c_th1_getcellcontent
-  getCellError = xform2 c_th1_getcellerror
-  scale = xform2 c_th1_scale
-  setAxisColor = xform2 c_th1_setaxiscolor
-  setAxisRange = xform3 c_th1_setaxisrange
-  setBarOffset = xform1 c_th1_setbaroffset
-  setBarWidth = xform1 c_th1_setbarwidth
-  setBinContent1 = xform2 c_th1_setbincontent1
-  setBinContent2 = xform3 c_th1_setbincontent2
-  setBinContent3 = xform4 c_th1_setbincontent3
-  setBinError1 = xform2 c_th1_setbinerror1
-  setBinError2 = xform3 c_th1_setbinerror2
-  setBinError3 = xform4 c_th1_setbinerror3
-  setBins1 = xform2 c_th1_setbins1
-  setBins2 = xform4 c_th1_setbins2
-  setBins3 = xform6 c_th1_setbins3
-  setMaximum = xform1 c_th1_setmaximum
-  setMinimum = xform1 c_th1_setminimum
-  setXTitle = xform1 c_th1_setxtitle
-  setYTitle = xform1 c_th1_setytitle
-  setZTitle = xform1 c_th1_setztitle
-
-instance ITH2 TH2 where
-  fill2 = xform2 c_th2_fill2
-  fillRandom2 = xform2 c_th2_fillrandom2
-  findFirstBinAbove2 = xform2 c_th2_findfirstbinabove2
-  findLastBinAbove2 = xform2 c_th2_findlastbinabove2
-  fitSlicesX = xform6 c_th2_fitslicesx
-  fitSlicesY = xform6 c_th2_fitslicesy
-  getCorrelationFactor = xform2 c_th2_getcorrelationfactor
-  getCovariance = xform2 c_th2_getcovariance
-  getStats = xform1 c_th2_getstats
-  integral = xform5 c_th2_integral
-  interpolate = xform3 c_th2_interpolate
-  kolmogorovTest = xform2 c_th2_kolmogorovtest
-  rebinX = xform2 c_th2_rebinx
-  rebinY = xform2 c_th2_rebiny
-  rebin2D = xform3 c_th2_rebin2d
-  putStats = xform1 c_th2_putstats
-  reset = xform1 c_th2_reset
-  setShowProjectionX = xform1 c_th2_setshowprojectionx
-  setShowProjectionY = xform1 c_th2_setshowprojectiony
-  showBackground = xform2 c_th2_showbackground
-  showPeaks = xform3 c_th2_showpeaks
-  smooth = xform2 c_th2_smooth
-
-instance ITH3 TH3 where
-
-instance ITH1C TH1C where
-
-instance ITH1D TH1D where
-
-instance ITH1F TH1F where
-
-instance ITH1I TH1I where
-
-instance ITH1S TH1S where
-
-instance ITH2C TH2C where
-
-instance ITH2D TH2D where
-
-instance ITH2F TH2F where
-
-instance ITH2I TH2I where
-
-instance ITH2Poly TH2Poly where
-
-instance ITH2S TH2S where
-
-instance ITH3C TH3C where
-
-instance ITH3D TH3D where
-
-instance ITH3F TH3F where
-
-instance ITH3I TH3I where
-
-instance ITH3S TH3S where
-
-instance ITQObject TQObject where
-
-instance ITVirtualPad TVirtualPad where
-  getFrame = xform0 c_tvirtualpad_getframe
-  range = xform4 c_tvirtualpad_range
-
-instance ITPad TPad where
-
-instance ITButton TButton where
-
-instance ITGroupButton TGroupButton where
-
-instance ITCanvas TCanvas where
-
-instance ITDialogCanvas TDialogCanvas where
-
-instance ITInspectCanvas TInspectCanvas where
-
-instance ITEvePad TEvePad where
-
-instance ITSlider TSlider where
-
-instance ITApplication TApplication where
-  run = xform1 c_tapplication_run
-
-instance ITRint TRint where
-
-instance ITRandom TRandom where
-  gaus = xform2 c_trandom_gaus
-  uniform = xform2 c_trandom_uniform
-
-instance ITCollection TCollection where
-
-instance ITSeqCollection TSeqCollection where
-
-instance ITObjArray TObjArray where
-
-instance ITList TList where
-
-instance ITKey TKey where
-
-instance ITDatime TDatime where
-  convert = xform1 c_tdatime_convert
-
-instance IDeletable TDatime where
-  delete = xform0 c_tdatime_delete
-
-instance IDeletable TKey where
-  delete = xform0 c_tkey_delete
-
-instance IDeletable TList where
-  delete = xform0 c_tlist_delete
-
-instance IDeletable TObjArray where
-  delete = xform0 c_tobjarray_delete
-
-instance IDeletable TSeqCollection where
-  delete = xform0 c_tseqcollection_delete
-
-instance IDeletable TCollection where
-  delete = xform0 c_tcollection_delete
-
-instance IDeletable TRandom where
-  delete = xform0 c_trandom_delete
-
-instance IDeletable TRint where
-  delete = xform0 c_trint_delete
-
-instance IDeletable TApplication where
-  delete = xform0 c_tapplication_delete
-
-instance IDeletable TSlider where
-  delete = xform0 c_tslider_delete
-
-instance IDeletable TEvePad where
-  delete = xform0 c_tevepad_delete
-
-instance IDeletable TInspectCanvas where
-  delete = xform0 c_tinspectcanvas_delete
-
-instance IDeletable TDialogCanvas where
-  delete = xform0 c_tdialogcanvas_delete
-
-instance IDeletable TCanvas where
-  delete = xform0 c_tcanvas_delete
-
-instance IDeletable TGroupButton where
-  delete = xform0 c_tgroupbutton_delete
-
-instance IDeletable TButton where
-  delete = xform0 c_tbutton_delete
-
-instance IDeletable TPad where
-  delete = xform0 c_tpad_delete
-
-instance IDeletable TVirtualPad where
-  delete = xform0 c_tvirtualpad_delete
-
-instance IDeletable TQObject where
-  delete = xform0 c_tqobject_delete
-
-instance IDeletable TH3S where
-  delete = xform0 c_th3s_delete
-
-instance IDeletable TH3I where
-  delete = xform0 c_th3i_delete
-
-instance IDeletable TH3F where
-  delete = xform0 c_th3f_delete
-
-instance IDeletable TH3D where
-  delete = xform0 c_th3d_delete
-
-instance IDeletable TH3C where
-  delete = xform0 c_th3c_delete
-
-instance IDeletable TH2S where
-  delete = xform0 c_th2s_delete
-
-instance IDeletable TH2Poly where
-  delete = xform0 c_th2poly_delete
-
-instance IDeletable TH2I where
-  delete = xform0 c_th2i_delete
-
-instance IDeletable TH2F where
-  delete = xform0 c_th2f_delete
-
-instance IDeletable TH2D where
-  delete = xform0 c_th2d_delete
-
-instance IDeletable TH2C where
-  delete = xform0 c_th2c_delete
-
-instance IDeletable TH1S where
-  delete = xform0 c_th1s_delete
-
-instance IDeletable TH1I where
-  delete = xform0 c_th1i_delete
-
-instance IDeletable TH1F where
-  delete = xform0 c_th1f_delete
-
-instance IDeletable TH1D where
-  delete = xform0 c_th1d_delete
-
-instance IDeletable TH1C where
-  delete = xform0 c_th1c_delete
-
-instance IDeletable TH3 where
-  delete = xform0 c_th3_delete
-
-instance IDeletable TH2 where
-  delete = xform0 c_th2_delete
-
-instance IDeletable TH1 where
-  delete = xform0 c_th1_delete
-
-instance IDeletable TArrayS where
-  delete = xform0 c_tarrays_delete
-
-instance IDeletable TArrayL64 where
-  delete = xform0 c_tarrayl64_delete
-
-instance IDeletable TArrayL where
-  delete = xform0 c_tarrayl_delete
-
-instance IDeletable TArrayI where
-  delete = xform0 c_tarrayi_delete
-
-instance IDeletable TArrayF where
-  delete = xform0 c_tarrayf_delete
-
-instance IDeletable TArrayD where
-  delete = xform0 c_tarrayd_delete
-
-instance IDeletable TArrayC where
-  delete = xform0 c_tarrayc_delete
-
-instance IDeletable TArray where
-  delete = xform0 c_tarray_delete
-
-instance IDeletable TTreePlayer where
-  delete = xform0 c_ttreeplayer_delete
-
-instance IDeletable TVirtualTreePlayer where
-  delete = xform0 c_tvirtualtreeplayer_delete
-
-instance IDeletable TBranch where
-  delete = xform0 c_tbranch_delete
-
-instance IDeletable TFile where
-  delete = xform0 c_tfile_delete
-
-instance IDeletable TDirectoryFile where
-  delete = xform0 c_tdirectoryfile_delete
-
-instance IDeletable TDirectory where
-  delete = xform0 c_tdirectory_delete
-
-instance IDeletable TText where
-  delete = xform0 c_ttext_delete
-
-instance IDeletable TLatex where
-  delete = xform0 c_tlatex_delete
-
-instance IDeletable TAxis where
-  delete = xform0 c_taxis_delete
-
-instance IDeletable TEfficiency where
-  delete = xform0 c_tefficiency_delete
-
-instance IDeletable TCurlyArc where
-  delete = xform0 c_tcurlyarc_delete
-
-instance IDeletable TCurlyLine where
-  delete = xform0 c_tcurlyline_delete
-
-instance IDeletable TPolyLine where
-  delete = xform0 c_tpolyline_delete
-
-instance IDeletable TTreeSQL where
-  delete = xform0 c_ttreesql_delete
-
-instance IDeletable TNtupleD where
-  delete = xform0 c_tntupled_delete
-
-instance IDeletable TNtuple where
-  delete = xform0 c_tntuple_delete
-
-instance IDeletable TChain where
-  delete = xform0 c_tchain_delete
-
-instance IDeletable TTree where
-  delete = xform0 c_ttree_delete
-
-instance IDeletable TSliderBox where
-  delete = xform0 c_tsliderbox_delete
-
-instance IDeletable TFrame where
-  delete = xform0 c_tframe_delete
-
-instance IDeletable TWbox where
-  delete = xform0 c_twbox_delete
-
-instance IDeletable TPaveClass where
-  delete = xform0 c_tpaveclass_delete
-
-instance IDeletable TPaveLabel where
-  delete = xform0 c_tpavelabel_delete
-
-instance IDeletable TLegendEntry where
-  delete = xform0 c_tlegendentry_delete
-
-instance IDeletable TLegend where
-  delete = xform0 c_tlegend_delete
-
-instance IDeletable TPavesText where
-  delete = xform0 c_tpavestext_delete
-
-instance IDeletable TPaveStats where
-  delete = xform0 c_tpavestats_delete
-
-instance IDeletable TDiamond where
-  delete = xform0 c_tdiamond_delete
-
-instance IDeletable TPaveText where
-  delete = xform0 c_tpavetext_delete
-
-instance IDeletable TPave where
-  delete = xform0 c_tpave_delete
-
-instance IDeletable TBox where
-  delete = xform0 c_tbox_delete
-
-instance IDeletable TXTRU where
-  delete = xform0 c_txtru_delete
-
-instance IDeletable TSPHE where
-  delete = xform0 c_tsphe_delete
-
-instance IDeletable TPCON where
-  delete = xform0 c_tpcon_delete
-
-instance IDeletable TTUBE where
-  delete = xform0 c_ttube_delete
-
-instance IDeletable TBRIK where
-  delete = xform0 c_tbrik_delete
-
-instance IDeletable TShape where
-  delete = xform0 c_tshape_delete
-
-instance IDeletable TGaxis where
-  delete = xform0 c_tgaxis_delete
-
-instance IDeletable TArrow where
-  delete = xform0 c_tarrow_delete
-
-instance IDeletable TLine where
-  delete = xform0 c_tline_delete
-
-instance IDeletable TCrown where
-  delete = xform0 c_tcrown_delete
-
-instance IDeletable TArc where
-  delete = xform0 c_tarc_delete
-
-instance IDeletable TEllipse where
-  delete = xform0 c_tellipse_delete
-
-instance IDeletable TGraphQQ where
-  delete = xform0 c_tgraphqq_delete
-
-instance IDeletable TGraphPolar where
-  delete = xform0 c_tgraphpolar_delete
-
-instance IDeletable TGraphErrors where
-  delete = xform0 c_tgrapherrors_delete
-
-instance IDeletable TGraphBentErrors where
-  delete = xform0 c_tgraphbenterrors_delete
-
-instance IDeletable TCutG where
-  delete = xform0 c_tcutg_delete
-
-instance IDeletable TGraphAsymmErrors where
-  delete = xform0 c_tgraphasymmerrors_delete
-
-instance IDeletable TGraph where
-  delete = xform0 c_tgraph_delete
-
-instance IDeletable TF1 where
-  delete = xform0 c_tf1_delete
-
-instance IDeletable THStack where
-  delete = xform0 c_thstack_delete
-
-instance IDeletable TAttText where
-  delete = xform0 c_tatttext_delete
-
-instance IDeletable TAttParticle where
-  delete = xform0 c_tattparticle_delete
-
-instance IDeletable TAttPad where
-  delete = xform0 c_tattpad_delete
-
-instance IDeletable TAttMarker where
-  delete = xform0 c_tattmarker_delete
-
-instance IDeletable TAttLine where
-  delete = xform0 c_tattline_delete
-
-instance IDeletable TAttImage where
-  delete = xform0 c_tattimage_delete
-
-instance IDeletable TAttFill where
-  delete = xform0 c_tattfill_delete
-
-instance IDeletable TAttCanvas where
-  delete = xform0 c_tattcanvas_delete
-
-instance IDeletable TAttBBox where
-  delete = xform0 c_tattbbox_delete
-
-instance IDeletable TAttAxis where
-  delete = xform0 c_tattaxis_delete
-
-instance IDeletable TAtt3D where
-  delete = xform0 c_tatt3d_delete
-
-instance IDeletable TFormula where
-  delete = xform0 c_tformula_delete
-
-instance IDeletable TClass where
-  delete = xform0 c_tclass_delete
-
-
-
-instance IDeletable TNamed where
-  delete = xform0 c_tnamed_delete
-
-instance IDeletable TObject where
-  delete = xform0 c_tobject_delete
-
-instance ITApplication TRint where
-  run = xform1 c_trint_run
-
-instance ITArray TH3S where
-
-instance ITArray TH3I where
-
-instance ITArray TH3F where
-
-instance ITArray TH3D where
-
-instance ITArray TH3C where
-
-instance ITArray TH2S where
-
-instance ITArray TH2I where
-
-instance ITArray TH2F where
-
-instance ITArray TH2D where
-
-instance ITArray TH2C where
-
-instance ITArray TH1S where
-
-instance ITArray TH1I where
-
-instance ITArray TH1F where
-
-instance ITArray TH1D where
-
-instance ITArray TH1C where
-
-instance ITArray TArrayS where
-
-instance ITArray TArrayL64 where
-
-instance ITArray TArrayL where
-
-instance ITArray TArrayI where
-
-instance ITArray TArrayF where
-
-instance ITArray TArrayD where
-
-instance ITArray TArrayC where
-
-instance ITArrayC TH3C where
-
-instance ITArrayC TH2C where
-
-instance ITArrayC TH1C where
-
-instance ITArrayD TH3D where
-
-instance ITArrayD TH2D where
-
-instance ITArrayD TH1D where
-
-instance ITArrayF TH3F where
-
-instance ITArrayF TH2F where
-
-instance ITArrayF TH1F where
-
-instance ITArrayI TH3I where
-
-instance ITArrayI TH2I where
-
-instance ITArrayI TH1I where
-
-instance ITArrayS TH3S where
-
-instance ITArrayS TH2S where
-
-instance ITArrayS TH1S where
-
-instance ITAtt3D TH3S where
-
-instance ITAtt3D TH3I where
-
-instance ITAtt3D TH3F where
-
-instance ITAtt3D TH3D where
-
-instance ITAtt3D TH3C where
-
-instance ITAtt3D TH3 where
-
-instance ITAtt3D TXTRU where
-
-instance ITAtt3D TSPHE where
-
-instance ITAtt3D TPCON where
-
-instance ITAtt3D TTUBE where
-
-instance ITAtt3D TBRIK where
-
-instance ITAtt3D TShape where
-
-instance ITAttAxis TAxis where
-  setLabelColor = xform1 c_taxis_setlabelcolor
-  setLabelSize = xform1 c_taxis_setlabelsize
-  setTickLength = xform1 c_taxis_setticklength
-  setTitleOffset = xform1 c_taxis_settitleoffset
-  setNdivisions = xform2 c_taxis_setndivisions
-
-instance ITAttFill TSlider where
-  setFillColor = xform1 c_tslider_setfillcolor
-  setFillStyle = xform1 c_tslider_setfillstyle
-
-instance ITAttFill TEvePad where
-  setFillColor = xform1 c_tevepad_setfillcolor
-  setFillStyle = xform1 c_tevepad_setfillstyle
-
-instance ITAttFill TInspectCanvas where
-  setFillColor = xform1 c_tinspectcanvas_setfillcolor
-  setFillStyle = xform1 c_tinspectcanvas_setfillstyle
-
-instance ITAttFill TDialogCanvas where
-  setFillColor = xform1 c_tdialogcanvas_setfillcolor
-  setFillStyle = xform1 c_tdialogcanvas_setfillstyle
-
-instance ITAttFill TCanvas where
-  setFillColor = xform1 c_tcanvas_setfillcolor
-  setFillStyle = xform1 c_tcanvas_setfillstyle
-
-instance ITAttFill TGroupButton where
-  setFillColor = xform1 c_tgroupbutton_setfillcolor
-  setFillStyle = xform1 c_tgroupbutton_setfillstyle
-
-instance ITAttFill TButton where
-  setFillColor = xform1 c_tbutton_setfillcolor
-  setFillStyle = xform1 c_tbutton_setfillstyle
-
-instance ITAttFill TPad where
-  setFillColor = xform1 c_tpad_setfillcolor
-  setFillStyle = xform1 c_tpad_setfillstyle
-
-instance ITAttFill TVirtualPad where
-  setFillColor = xform1 c_tvirtualpad_setfillcolor
-  setFillStyle = xform1 c_tvirtualpad_setfillstyle
-
-instance ITAttFill TH3S where
-  setFillColor = xform1 c_th3s_setfillcolor
-  setFillStyle = xform1 c_th3s_setfillstyle
-
-instance ITAttFill TH3I where
-  setFillColor = xform1 c_th3i_setfillcolor
-  setFillStyle = xform1 c_th3i_setfillstyle
-
-instance ITAttFill TH3F where
-  setFillColor = xform1 c_th3f_setfillcolor
-  setFillStyle = xform1 c_th3f_setfillstyle
-
-instance ITAttFill TH3D where
-  setFillColor = xform1 c_th3d_setfillcolor
-  setFillStyle = xform1 c_th3d_setfillstyle
-
-instance ITAttFill TH3C where
-  setFillColor = xform1 c_th3c_setfillcolor
-  setFillStyle = xform1 c_th3c_setfillstyle
-
-instance ITAttFill TH2S where
-  setFillColor = xform1 c_th2s_setfillcolor
-  setFillStyle = xform1 c_th2s_setfillstyle
-
-instance ITAttFill TH2Poly where
-  setFillColor = xform1 c_th2poly_setfillcolor
-  setFillStyle = xform1 c_th2poly_setfillstyle
-
-instance ITAttFill TH2I where
-  setFillColor = xform1 c_th2i_setfillcolor
-  setFillStyle = xform1 c_th2i_setfillstyle
-
-instance ITAttFill TH2F where
-  setFillColor = xform1 c_th2f_setfillcolor
-  setFillStyle = xform1 c_th2f_setfillstyle
-
-instance ITAttFill TH2D where
-  setFillColor = xform1 c_th2d_setfillcolor
-  setFillStyle = xform1 c_th2d_setfillstyle
-
-instance ITAttFill TH2C where
-  setFillColor = xform1 c_th2c_setfillcolor
-  setFillStyle = xform1 c_th2c_setfillstyle
-
-instance ITAttFill TH1S where
-  setFillColor = xform1 c_th1s_setfillcolor
-  setFillStyle = xform1 c_th1s_setfillstyle
-
-instance ITAttFill TH1I where
-  setFillColor = xform1 c_th1i_setfillcolor
-  setFillStyle = xform1 c_th1i_setfillstyle
-
-instance ITAttFill TH1F where
-  setFillColor = xform1 c_th1f_setfillcolor
-  setFillStyle = xform1 c_th1f_setfillstyle
-
-instance ITAttFill TH1D where
-  setFillColor = xform1 c_th1d_setfillcolor
-  setFillStyle = xform1 c_th1d_setfillstyle
-
-instance ITAttFill TH1C where
-  setFillColor = xform1 c_th1c_setfillcolor
-  setFillStyle = xform1 c_th1c_setfillstyle
-
-instance ITAttFill TH3 where
-  setFillColor = xform1 c_th3_setfillcolor
-  setFillStyle = xform1 c_th3_setfillstyle
-
-instance ITAttFill TH2 where
-  setFillColor = xform1 c_th2_setfillcolor
-  setFillStyle = xform1 c_th2_setfillstyle
-
-instance ITAttFill TH1 where
-  setFillColor = xform1 c_th1_setfillcolor
-  setFillStyle = xform1 c_th1_setfillstyle
-
-instance ITAttFill TBranch where
-  setFillColor = xform1 c_tbranch_setfillcolor
-  setFillStyle = xform1 c_tbranch_setfillstyle
-
-instance ITAttFill TEfficiency where
-  setFillColor = xform1 c_tefficiency_setfillcolor
-  setFillStyle = xform1 c_tefficiency_setfillstyle
-
-instance ITAttFill TCurlyArc where
-  setFillColor = xform1 c_tcurlyarc_setfillcolor
-  setFillStyle = xform1 c_tcurlyarc_setfillstyle
-
-instance ITAttFill TCurlyLine where
-  setFillColor = xform1 c_tcurlyline_setfillcolor
-  setFillStyle = xform1 c_tcurlyline_setfillstyle
-
-instance ITAttFill TPolyLine where
-  setFillColor = xform1 c_tpolyline_setfillcolor
-  setFillStyle = xform1 c_tpolyline_setfillstyle
-
-instance ITAttFill TTreeSQL where
-  setFillColor = xform1 c_ttreesql_setfillcolor
-  setFillStyle = xform1 c_ttreesql_setfillstyle
-
-instance ITAttFill TNtupleD where
-  setFillColor = xform1 c_tntupled_setfillcolor
-  setFillStyle = xform1 c_tntupled_setfillstyle
-
-instance ITAttFill TNtuple where
-  setFillColor = xform1 c_tntuple_setfillcolor
-  setFillStyle = xform1 c_tntuple_setfillstyle
-
-instance ITAttFill TChain where
-  setFillColor = xform1 c_tchain_setfillcolor
-  setFillStyle = xform1 c_tchain_setfillstyle
-
-instance ITAttFill TTree where
-  setFillColor = xform1 c_ttree_setfillcolor
-  setFillStyle = xform1 c_ttree_setfillstyle
-
-instance ITAttFill TSliderBox where
-  setFillColor = xform1 c_tsliderbox_setfillcolor
-  setFillStyle = xform1 c_tsliderbox_setfillstyle
-
-instance ITAttFill TFrame where
-  setFillColor = xform1 c_tframe_setfillcolor
-  setFillStyle = xform1 c_tframe_setfillstyle
-
-instance ITAttFill TWbox where
-  setFillColor = xform1 c_twbox_setfillcolor
-  setFillStyle = xform1 c_twbox_setfillstyle
-
-instance ITAttFill TPaveClass where
-  setFillColor = xform1 c_tpaveclass_setfillcolor
-  setFillStyle = xform1 c_tpaveclass_setfillstyle
-
-instance ITAttFill TPaveLabel where
-  setFillColor = xform1 c_tpavelabel_setfillcolor
-  setFillStyle = xform1 c_tpavelabel_setfillstyle
-
-instance ITAttFill TLegendEntry where
-  setFillColor = xform1 c_tlegendentry_setfillcolor
-  setFillStyle = xform1 c_tlegendentry_setfillstyle
-
-instance ITAttFill TLegend where
-  setFillColor = xform1 c_tlegend_setfillcolor
-  setFillStyle = xform1 c_tlegend_setfillstyle
-
-instance ITAttFill TPavesText where
-  setFillColor = xform1 c_tpavestext_setfillcolor
-  setFillStyle = xform1 c_tpavestext_setfillstyle
-
-instance ITAttFill TPaveStats where
-  setFillColor = xform1 c_tpavestats_setfillcolor
-  setFillStyle = xform1 c_tpavestats_setfillstyle
-
-instance ITAttFill TDiamond where
-  setFillColor = xform1 c_tdiamond_setfillcolor
-  setFillStyle = xform1 c_tdiamond_setfillstyle
-
-instance ITAttFill TPaveText where
-  setFillColor = xform1 c_tpavetext_setfillcolor
-  setFillStyle = xform1 c_tpavetext_setfillstyle
-
-instance ITAttFill TPave where
-  setFillColor = xform1 c_tpave_setfillcolor
-  setFillStyle = xform1 c_tpave_setfillstyle
-
-instance ITAttFill TBox where
-  setFillColor = xform1 c_tbox_setfillcolor
-  setFillStyle = xform1 c_tbox_setfillstyle
-
-instance ITAttFill TXTRU where
-  setFillColor = xform1 c_txtru_setfillcolor
-  setFillStyle = xform1 c_txtru_setfillstyle
-
-instance ITAttFill TSPHE where
-  setFillColor = xform1 c_tsphe_setfillcolor
-  setFillStyle = xform1 c_tsphe_setfillstyle
-
-instance ITAttFill TPCON where
-  setFillColor = xform1 c_tpcon_setfillcolor
-  setFillStyle = xform1 c_tpcon_setfillstyle
-
-instance ITAttFill TTUBE where
-  setFillColor = xform1 c_ttube_setfillcolor
-  setFillStyle = xform1 c_ttube_setfillstyle
-
-instance ITAttFill TBRIK where
-  setFillColor = xform1 c_tbrik_setfillcolor
-  setFillStyle = xform1 c_tbrik_setfillstyle
-
-instance ITAttFill TShape where
-  setFillColor = xform1 c_tshape_setfillcolor
-  setFillStyle = xform1 c_tshape_setfillstyle
-
-instance ITAttFill TArrow where
-  setFillColor = xform1 c_tarrow_setfillcolor
-  setFillStyle = xform1 c_tarrow_setfillstyle
-
-instance ITAttFill TCrown where
-  setFillColor = xform1 c_tcrown_setfillcolor
-  setFillStyle = xform1 c_tcrown_setfillstyle
-
-instance ITAttFill TArc where
-  setFillColor = xform1 c_tarc_setfillcolor
-  setFillStyle = xform1 c_tarc_setfillstyle
-
-instance ITAttFill TEllipse where
-  setFillColor = xform1 c_tellipse_setfillcolor
-  setFillStyle = xform1 c_tellipse_setfillstyle
-
-instance ITAttFill TGraphQQ where
-  setFillColor = xform1 c_tgraphqq_setfillcolor
-  setFillStyle = xform1 c_tgraphqq_setfillstyle
-
-instance ITAttFill TGraphPolar where
-  setFillColor = xform1 c_tgraphpolar_setfillcolor
-  setFillStyle = xform1 c_tgraphpolar_setfillstyle
-
-instance ITAttFill TGraphErrors where
-  setFillColor = xform1 c_tgrapherrors_setfillcolor
-  setFillStyle = xform1 c_tgrapherrors_setfillstyle
-
-instance ITAttFill TGraphBentErrors where
-  setFillColor = xform1 c_tgraphbenterrors_setfillcolor
-  setFillStyle = xform1 c_tgraphbenterrors_setfillstyle
-
-instance ITAttFill TCutG where
-  setFillColor = xform1 c_tcutg_setfillcolor
-  setFillStyle = xform1 c_tcutg_setfillstyle
-
-instance ITAttFill TGraphAsymmErrors where
-  setFillColor = xform1 c_tgraphasymmerrors_setfillcolor
-  setFillStyle = xform1 c_tgraphasymmerrors_setfillstyle
-
-instance ITAttFill TGraph where
-  setFillColor = xform1 c_tgraph_setfillcolor
-  setFillStyle = xform1 c_tgraph_setfillstyle
-
-instance ITAttFill TF1 where
-  setFillColor = xform1 c_tf1_setfillcolor
-  setFillStyle = xform1 c_tf1_setfillstyle
-
-instance ITAttLine TSlider where
-  setLineColor = xform1 c_tslider_setlinecolor
-
-instance ITAttLine TEvePad where
-  setLineColor = xform1 c_tevepad_setlinecolor
-
-instance ITAttLine TInspectCanvas where
-  setLineColor = xform1 c_tinspectcanvas_setlinecolor
-
-instance ITAttLine TDialogCanvas where
-  setLineColor = xform1 c_tdialogcanvas_setlinecolor
-
-instance ITAttLine TCanvas where
-  setLineColor = xform1 c_tcanvas_setlinecolor
-
-instance ITAttLine TGroupButton where
-  setLineColor = xform1 c_tgroupbutton_setlinecolor
-
-instance ITAttLine TButton where
-  setLineColor = xform1 c_tbutton_setlinecolor
-
-instance ITAttLine TPad where
-  setLineColor = xform1 c_tpad_setlinecolor
-
-instance ITAttLine TVirtualPad where
-  setLineColor = xform1 c_tvirtualpad_setlinecolor
-
-instance ITAttLine TH3S where
-  setLineColor = xform1 c_th3s_setlinecolor
-
-instance ITAttLine TH3I where
-  setLineColor = xform1 c_th3i_setlinecolor
-
-instance ITAttLine TH3F where
-  setLineColor = xform1 c_th3f_setlinecolor
-
-instance ITAttLine TH3D where
-  setLineColor = xform1 c_th3d_setlinecolor
-
-instance ITAttLine TH3C where
-  setLineColor = xform1 c_th3c_setlinecolor
-
-instance ITAttLine TH2S where
-  setLineColor = xform1 c_th2s_setlinecolor
-
-instance ITAttLine TH2Poly where
-  setLineColor = xform1 c_th2poly_setlinecolor
-
-instance ITAttLine TH2I where
-  setLineColor = xform1 c_th2i_setlinecolor
-
-instance ITAttLine TH2F where
-  setLineColor = xform1 c_th2f_setlinecolor
-
-instance ITAttLine TH2D where
-  setLineColor = xform1 c_th2d_setlinecolor
-
-instance ITAttLine TH2C where
-  setLineColor = xform1 c_th2c_setlinecolor
-
-instance ITAttLine TH1S where
-  setLineColor = xform1 c_th1s_setlinecolor
-
-instance ITAttLine TH1I where
-  setLineColor = xform1 c_th1i_setlinecolor
-
-instance ITAttLine TH1F where
-  setLineColor = xform1 c_th1f_setlinecolor
-
-instance ITAttLine TH1D where
-  setLineColor = xform1 c_th1d_setlinecolor
-
-instance ITAttLine TH1C where
-  setLineColor = xform1 c_th1c_setlinecolor
-
-instance ITAttLine TH3 where
-  setLineColor = xform1 c_th3_setlinecolor
-
-instance ITAttLine TH2 where
-  setLineColor = xform1 c_th2_setlinecolor
-
-instance ITAttLine TH1 where
-  setLineColor = xform1 c_th1_setlinecolor
-
-instance ITAttLine TLatex where
-  setLineColor = xform1 c_tlatex_setlinecolor
-
-instance ITAttLine TEfficiency where
-  setLineColor = xform1 c_tefficiency_setlinecolor
-
-instance ITAttLine TCurlyArc where
-  setLineColor = xform1 c_tcurlyarc_setlinecolor
-
-instance ITAttLine TCurlyLine where
-  setLineColor = xform1 c_tcurlyline_setlinecolor
-
-instance ITAttLine TPolyLine where
-  setLineColor = xform1 c_tpolyline_setlinecolor
-
-instance ITAttLine TTreeSQL where
-  setLineColor = xform1 c_ttreesql_setlinecolor
-
-instance ITAttLine TNtupleD where
-  setLineColor = xform1 c_tntupled_setlinecolor
-
-instance ITAttLine TNtuple where
-  setLineColor = xform1 c_tntuple_setlinecolor
-
-instance ITAttLine TChain where
-  setLineColor = xform1 c_tchain_setlinecolor
-
-instance ITAttLine TTree where
-  setLineColor = xform1 c_ttree_setlinecolor
-
-instance ITAttLine TSliderBox where
-  setLineColor = xform1 c_tsliderbox_setlinecolor
-
-instance ITAttLine TFrame where
-  setLineColor = xform1 c_tframe_setlinecolor
-
-instance ITAttLine TWbox where
-  setLineColor = xform1 c_twbox_setlinecolor
-
-instance ITAttLine TPaveClass where
-  setLineColor = xform1 c_tpaveclass_setlinecolor
-
-instance ITAttLine TPaveLabel where
-  setLineColor = xform1 c_tpavelabel_setlinecolor
-
-instance ITAttLine TLegendEntry where
-  setLineColor = xform1 c_tlegendentry_setlinecolor
-
-instance ITAttLine TLegend where
-  setLineColor = xform1 c_tlegend_setlinecolor
-
-instance ITAttLine TPavesText where
-  setLineColor = xform1 c_tpavestext_setlinecolor
-
-instance ITAttLine TPaveStats where
-  setLineColor = xform1 c_tpavestats_setlinecolor
-
-instance ITAttLine TDiamond where
-  setLineColor = xform1 c_tdiamond_setlinecolor
-
-instance ITAttLine TPaveText where
-  setLineColor = xform1 c_tpavetext_setlinecolor
-
-instance ITAttLine TPave where
-  setLineColor = xform1 c_tpave_setlinecolor
-
-instance ITAttLine TBox where
-  setLineColor = xform1 c_tbox_setlinecolor
-
-instance ITAttLine TXTRU where
-  setLineColor = xform1 c_txtru_setlinecolor
-
-instance ITAttLine TSPHE where
-  setLineColor = xform1 c_tsphe_setlinecolor
-
-instance ITAttLine TPCON where
-  setLineColor = xform1 c_tpcon_setlinecolor
-
-instance ITAttLine TTUBE where
-  setLineColor = xform1 c_ttube_setlinecolor
-
-instance ITAttLine TBRIK where
-  setLineColor = xform1 c_tbrik_setlinecolor
-
-instance ITAttLine TShape where
-  setLineColor = xform1 c_tshape_setlinecolor
-
-instance ITAttLine TGaxis where
-  setLineColor = xform1 c_tgaxis_setlinecolor
-
-instance ITAttLine TArrow where
-  setLineColor = xform1 c_tarrow_setlinecolor
-
-instance ITAttLine TLine where
-  setLineColor = xform1 c_tline_setlinecolor
-
-instance ITAttLine TCrown where
-  setLineColor = xform1 c_tcrown_setlinecolor
-
-instance ITAttLine TArc where
-  setLineColor = xform1 c_tarc_setlinecolor
-
-instance ITAttLine TEllipse where
-  setLineColor = xform1 c_tellipse_setlinecolor
-
-instance ITAttLine TGraphQQ where
-  setLineColor = xform1 c_tgraphqq_setlinecolor
-
-instance ITAttLine TGraphPolar where
-  setLineColor = xform1 c_tgraphpolar_setlinecolor
-
-instance ITAttLine TGraphErrors where
-  setLineColor = xform1 c_tgrapherrors_setlinecolor
-
-instance ITAttLine TGraphBentErrors where
-  setLineColor = xform1 c_tgraphbenterrors_setlinecolor
-
-instance ITAttLine TCutG where
-  setLineColor = xform1 c_tcutg_setlinecolor
-
-instance ITAttLine TGraphAsymmErrors where
-  setLineColor = xform1 c_tgraphasymmerrors_setlinecolor
-
-instance ITAttLine TGraph where
-  setLineColor = xform1 c_tgraph_setlinecolor
-
-instance ITAttLine TF1 where
-  setLineColor = xform1 c_tf1_setlinecolor
-
-instance ITAttMarker TH3S where
-
-instance ITAttMarker TH3I where
-
-instance ITAttMarker TH3F where
-
-instance ITAttMarker TH3D where
-
-instance ITAttMarker TH3C where
-
-instance ITAttMarker TH2S where
-
-instance ITAttMarker TH2Poly where
-
-instance ITAttMarker TH2I where
-
-instance ITAttMarker TH2F where
-
-instance ITAttMarker TH2D where
-
-instance ITAttMarker TH2C where
-
-instance ITAttMarker TH1S where
-
-instance ITAttMarker TH1I where
-
-instance ITAttMarker TH1F where
-
-instance ITAttMarker TH1D where
-
-instance ITAttMarker TH1C where
-
-instance ITAttMarker TH3 where
-
-instance ITAttMarker TH2 where
-
-instance ITAttMarker TH1 where
-
-instance ITAttMarker TEfficiency where
-
-instance ITAttMarker TTreeSQL where
-
-instance ITAttMarker TNtupleD where
-
-instance ITAttMarker TNtuple where
-
-instance ITAttMarker TChain where
-
-instance ITAttMarker TTree where
-
-instance ITAttMarker TLegendEntry where
-
-instance ITAttMarker TGraphQQ where
-
-instance ITAttMarker TGraphPolar where
-
-instance ITAttMarker TGraphErrors where
-
-instance ITAttMarker TGraphBentErrors where
-
-instance ITAttMarker TCutG where
-
-instance ITAttMarker TGraphAsymmErrors where
-
-instance ITAttMarker TGraph where
-
-instance ITAttPad TSlider where
-
-instance ITAttPad TEvePad where
-
-instance ITAttPad TInspectCanvas where
-
-instance ITAttPad TDialogCanvas where
-
-instance ITAttPad TCanvas where
-
-instance ITAttPad TGroupButton where
-
-instance ITAttPad TButton where
-
-instance ITAttPad TPad where
-
-instance ITAttPad TVirtualPad where
-
-instance ITAttText TInspectCanvas where
-  setTextColor = xform1 c_tinspectcanvas_settextcolor
-  setTextAlign = xform1 c_tinspectcanvas_settextalign
-  setTextSize = xform1 c_tinspectcanvas_settextsize
-
-instance ITAttText TDialogCanvas where
-  setTextColor = xform1 c_tdialogcanvas_settextcolor
-  setTextAlign = xform1 c_tdialogcanvas_settextalign
-  setTextSize = xform1 c_tdialogcanvas_settextsize
-
-instance ITAttText TGroupButton where
-  setTextColor = xform1 c_tgroupbutton_settextcolor
-  setTextAlign = xform1 c_tgroupbutton_settextalign
-  setTextSize = xform1 c_tgroupbutton_settextsize
-
-instance ITAttText TButton where
-  setTextColor = xform1 c_tbutton_settextcolor
-  setTextAlign = xform1 c_tbutton_settextalign
-  setTextSize = xform1 c_tbutton_settextsize
-
-instance ITAttText TText where
-  setTextColor = xform1 c_ttext_settextcolor
-  setTextAlign = xform1 c_ttext_settextalign
-  setTextSize = xform1 c_ttext_settextsize
-
-instance ITAttText TLatex where
-  setTextColor = xform1 c_tlatex_settextcolor
-  setTextAlign = xform1 c_tlatex_settextalign
-  setTextSize = xform1 c_tlatex_settextsize
-
-instance ITAttText TPaveClass where
-  setTextColor = xform1 c_tpaveclass_settextcolor
-  setTextAlign = xform1 c_tpaveclass_settextalign
-  setTextSize = xform1 c_tpaveclass_settextsize
-
-instance ITAttText TPaveLabel where
-  setTextColor = xform1 c_tpavelabel_settextcolor
-  setTextAlign = xform1 c_tpavelabel_settextalign
-  setTextSize = xform1 c_tpavelabel_settextsize
-
-instance ITAttText TLegendEntry where
-  setTextColor = xform1 c_tlegendentry_settextcolor
-  setTextAlign = xform1 c_tlegendentry_settextalign
-  setTextSize = xform1 c_tlegendentry_settextsize
-
-instance ITAttText TLegend where
-  setTextColor = xform1 c_tlegend_settextcolor
-  setTextAlign = xform1 c_tlegend_settextalign
-  setTextSize = xform1 c_tlegend_settextsize
-
-instance ITAttText TPavesText where
-  setTextColor = xform1 c_tpavestext_settextcolor
-  setTextAlign = xform1 c_tpavestext_settextalign
-  setTextSize = xform1 c_tpavestext_settextsize
-
-instance ITAttText TPaveStats where
-  setTextColor = xform1 c_tpavestats_settextcolor
-  setTextAlign = xform1 c_tpavestats_settextalign
-  setTextSize = xform1 c_tpavestats_settextsize
-
-instance ITAttText TDiamond where
-  setTextColor = xform1 c_tdiamond_settextcolor
-  setTextAlign = xform1 c_tdiamond_settextalign
-  setTextSize = xform1 c_tdiamond_settextsize
-
-instance ITAttText TPaveText where
-  setTextColor = xform1 c_tpavetext_settextcolor
-  setTextAlign = xform1 c_tpavetext_settextalign
-  setTextSize = xform1 c_tpavetext_settextsize
-
-instance ITAttText TGaxis where
-  setTextColor = xform1 c_tgaxis_settextcolor
-  setTextAlign = xform1 c_tgaxis_settextalign
-  setTextSize = xform1 c_tgaxis_settextsize
-
-instance ITBox TSliderBox where
-
-instance ITBox TFrame where
-
-instance ITBox TWbox where
-
-instance ITBox TPaveClass where
-
-instance ITBox TPaveLabel where
-
-instance ITBox TLegend where
-
-instance ITBox TPavesText where
-
-instance ITBox TPaveStats where
-
-instance ITBox TDiamond where
-
-instance ITBox TPaveText where
-
-instance ITBox TPave where
-
-instance ITButton TGroupButton where
-
-instance ITCanvas TInspectCanvas where
-
-instance ITCanvas TDialogCanvas where
-
-instance ITCollection TList where
-
-instance ITCollection TObjArray where
-
-instance ITCollection TSeqCollection where
-
-instance ITCurlyLine TCurlyArc where
-
-instance ITDictionary TClass where
-
-instance ITDirectory TFile where
-  append = xform2 c_tfile_append
-  addD = xform2 c_tfile_addd
-  appendKey = xform1 c_tfile_appendkey
-  close = xform1 c_tfile_close
-  get = xform1 c_tfile_get
-
-instance ITDirectory TDirectoryFile where
-  append = xform2 c_tdirectoryfile_append
-  addD = xform2 c_tdirectoryfile_addd
-  appendKey = xform1 c_tdirectoryfile_appendkey
-  close = xform1 c_tdirectoryfile_close
-  get = xform1 c_tdirectoryfile_get
-
-instance ITDirectoryFile TFile where
-  getListOfKeys = xform0 c_tfile_getlistofkeys
-
-instance ITEllipse TCrown where
-
-instance ITEllipse TArc where
-
-instance ITFormula TF1 where
-  getParameter = xform1 c_tf1_getparameter
-  setParameter = xform2 c_tf1_setparameter
-
-instance ITGraph TGraphQQ where
-
-instance ITGraph TGraphPolar where
-
-instance ITGraph TGraphErrors where
-
-instance ITGraph TGraphBentErrors where
-
-instance ITGraph TCutG where
-
-instance ITGraph TGraphAsymmErrors where
-
-instance ITGraphErrors TGraphPolar where
-
-instance ITH1 TH3S where
-  add = xform2 c_th3s_add
-  addBinContent = xform2 c_th3s_addbincontent
-  chi2Test = xform3 c_th3s_chi2test
-  computeIntegral = xform0 c_th3s_computeintegral
-  directoryAutoAdd = xform1 c_th3s_directoryautoadd
-  distancetoPrimitive = xform2 c_th3s_distancetoprimitive
-  divide = xform5 c_th3s_divide
-  drawCopy = xform1 c_th3s_drawcopy
-  drawNormalized = xform2 c_th3s_drawnormalized
-  drawPanel = xform0 c_th3s_drawpanel
-  bufferEmpty = xform1 c_th3s_bufferempty
-  eval = xform2 c_th3s_eval
-  executeEvent = xform3 c_th3s_executeevent
-  fFT = xform2 c_th3s_fft
-  fill1 = xform1 c_th3s_fill1
-  fillN = xform4 c_th3s_filln
-  fillRandom = xform2 c_th3s_fillrandom
-  findBin = xform3 c_th3s_findbin
-  findFixBin = xform3 c_th3s_findfixbin
-  findFirstBinAbove = xform2 c_th3s_findfirstbinabove
-  findLastBinAbove = xform2 c_th3s_findlastbinabove
-  fitPanel = xform0 c_th3s_fitpanel
-  getNdivisions = xform1 c_th3s_getndivisions
-  getAxisColor = xform1 c_th3s_getaxiscolor
-  getLabelColor = xform1 c_th3s_getlabelcolor
-  getLabelFont = xform1 c_th3s_getlabelfont
-  getLabelOffset = xform1 c_th3s_getlabeloffset
-  getLabelSize = xform1 c_th3s_getlabelsize
-  getTitleFont = xform1 c_th3s_gettitlefont
-  getTitleOffset = xform1 c_th3s_gettitleoffset
-  getTitleSize = xform1 c_th3s_gettitlesize
-  getTickLength = xform1 c_th3s_getticklength
-  getBarOffset = xform0 c_th3s_getbaroffset
-  getBarWidth = xform0 c_th3s_getbarwidth
-  getContour = xform1 c_th3s_getcontour
-  getContourLevel = xform1 c_th3s_getcontourlevel
-  getContourLevelPad = xform1 c_th3s_getcontourlevelpad
-  getBin = xform3 c_th3s_getbin
-  getBinCenter = xform1 c_th3s_getbincenter
-  getBinContent1 = xform1 c_th3s_getbincontent1
-  getBinContent2 = xform2 c_th3s_getbincontent2
-  getBinContent3 = xform3 c_th3s_getbincontent3
-  getBinError1 = xform1 c_th3s_getbinerror1
-  getBinError2 = xform2 c_th3s_getbinerror2
-  getBinError3 = xform3 c_th3s_getbinerror3
-  getBinLowEdge = xform1 c_th3s_getbinlowedge
-  getBinWidth = xform1 c_th3s_getbinwidth
-  getCellContent = xform2 c_th3s_getcellcontent
-  getCellError = xform2 c_th3s_getcellerror
-  scale = xform2 c_th3s_scale
-  setAxisColor = xform2 c_th3s_setaxiscolor
-  setAxisRange = xform3 c_th3s_setaxisrange
-  setBarOffset = xform1 c_th3s_setbaroffset
-  setBarWidth = xform1 c_th3s_setbarwidth
-  setBinContent1 = xform2 c_th3s_setbincontent1
-  setBinContent2 = xform3 c_th3s_setbincontent2
-  setBinContent3 = xform4 c_th3s_setbincontent3
-  setBinError1 = xform2 c_th3s_setbinerror1
-  setBinError2 = xform3 c_th3s_setbinerror2
-  setBinError3 = xform4 c_th3s_setbinerror3
-  setBins1 = xform2 c_th3s_setbins1
-  setBins2 = xform4 c_th3s_setbins2
-  setBins3 = xform6 c_th3s_setbins3
-  setMaximum = xform1 c_th3s_setmaximum
-  setMinimum = xform1 c_th3s_setminimum
-  setXTitle = xform1 c_th3s_setxtitle
-  setYTitle = xform1 c_th3s_setytitle
-  setZTitle = xform1 c_th3s_setztitle
-
-instance ITH1 TH3I where
-  add = xform2 c_th3i_add
-  addBinContent = xform2 c_th3i_addbincontent
-  chi2Test = xform3 c_th3i_chi2test
-  computeIntegral = xform0 c_th3i_computeintegral
-  directoryAutoAdd = xform1 c_th3i_directoryautoadd
-  distancetoPrimitive = xform2 c_th3i_distancetoprimitive
-  divide = xform5 c_th3i_divide
-  drawCopy = xform1 c_th3i_drawcopy
-  drawNormalized = xform2 c_th3i_drawnormalized
-  drawPanel = xform0 c_th3i_drawpanel
-  bufferEmpty = xform1 c_th3i_bufferempty
-  eval = xform2 c_th3i_eval
-  executeEvent = xform3 c_th3i_executeevent
-  fFT = xform2 c_th3i_fft
-  fill1 = xform1 c_th3i_fill1
-  fillN = xform4 c_th3i_filln
-  fillRandom = xform2 c_th3i_fillrandom
-  findBin = xform3 c_th3i_findbin
-  findFixBin = xform3 c_th3i_findfixbin
-  findFirstBinAbove = xform2 c_th3i_findfirstbinabove
-  findLastBinAbove = xform2 c_th3i_findlastbinabove
-  fitPanel = xform0 c_th3i_fitpanel
-  getNdivisions = xform1 c_th3i_getndivisions
-  getAxisColor = xform1 c_th3i_getaxiscolor
-  getLabelColor = xform1 c_th3i_getlabelcolor
-  getLabelFont = xform1 c_th3i_getlabelfont
-  getLabelOffset = xform1 c_th3i_getlabeloffset
-  getLabelSize = xform1 c_th3i_getlabelsize
-  getTitleFont = xform1 c_th3i_gettitlefont
-  getTitleOffset = xform1 c_th3i_gettitleoffset
-  getTitleSize = xform1 c_th3i_gettitlesize
-  getTickLength = xform1 c_th3i_getticklength
-  getBarOffset = xform0 c_th3i_getbaroffset
-  getBarWidth = xform0 c_th3i_getbarwidth
-  getContour = xform1 c_th3i_getcontour
-  getContourLevel = xform1 c_th3i_getcontourlevel
-  getContourLevelPad = xform1 c_th3i_getcontourlevelpad
-  getBin = xform3 c_th3i_getbin
-  getBinCenter = xform1 c_th3i_getbincenter
-  getBinContent1 = xform1 c_th3i_getbincontent1
-  getBinContent2 = xform2 c_th3i_getbincontent2
-  getBinContent3 = xform3 c_th3i_getbincontent3
-  getBinError1 = xform1 c_th3i_getbinerror1
-  getBinError2 = xform2 c_th3i_getbinerror2
-  getBinError3 = xform3 c_th3i_getbinerror3
-  getBinLowEdge = xform1 c_th3i_getbinlowedge
-  getBinWidth = xform1 c_th3i_getbinwidth
-  getCellContent = xform2 c_th3i_getcellcontent
-  getCellError = xform2 c_th3i_getcellerror
-  scale = xform2 c_th3i_scale
-  setAxisColor = xform2 c_th3i_setaxiscolor
-  setAxisRange = xform3 c_th3i_setaxisrange
-  setBarOffset = xform1 c_th3i_setbaroffset
-  setBarWidth = xform1 c_th3i_setbarwidth
-  setBinContent1 = xform2 c_th3i_setbincontent1
-  setBinContent2 = xform3 c_th3i_setbincontent2
-  setBinContent3 = xform4 c_th3i_setbincontent3
-  setBinError1 = xform2 c_th3i_setbinerror1
-  setBinError2 = xform3 c_th3i_setbinerror2
-  setBinError3 = xform4 c_th3i_setbinerror3
-  setBins1 = xform2 c_th3i_setbins1
-  setBins2 = xform4 c_th3i_setbins2
-  setBins3 = xform6 c_th3i_setbins3
-  setMaximum = xform1 c_th3i_setmaximum
-  setMinimum = xform1 c_th3i_setminimum
-  setXTitle = xform1 c_th3i_setxtitle
-  setYTitle = xform1 c_th3i_setytitle
-  setZTitle = xform1 c_th3i_setztitle
-
-instance ITH1 TH3F where
-  add = xform2 c_th3f_add
-  addBinContent = xform2 c_th3f_addbincontent
-  chi2Test = xform3 c_th3f_chi2test
-  computeIntegral = xform0 c_th3f_computeintegral
-  directoryAutoAdd = xform1 c_th3f_directoryautoadd
-  distancetoPrimitive = xform2 c_th3f_distancetoprimitive
-  divide = xform5 c_th3f_divide
-  drawCopy = xform1 c_th3f_drawcopy
-  drawNormalized = xform2 c_th3f_drawnormalized
-  drawPanel = xform0 c_th3f_drawpanel
-  bufferEmpty = xform1 c_th3f_bufferempty
-  eval = xform2 c_th3f_eval
-  executeEvent = xform3 c_th3f_executeevent
-  fFT = xform2 c_th3f_fft
-  fill1 = xform1 c_th3f_fill1
-  fillN = xform4 c_th3f_filln
-  fillRandom = xform2 c_th3f_fillrandom
-  findBin = xform3 c_th3f_findbin
-  findFixBin = xform3 c_th3f_findfixbin
-  findFirstBinAbove = xform2 c_th3f_findfirstbinabove
-  findLastBinAbove = xform2 c_th3f_findlastbinabove
-  fitPanel = xform0 c_th3f_fitpanel
-  getNdivisions = xform1 c_th3f_getndivisions
-  getAxisColor = xform1 c_th3f_getaxiscolor
-  getLabelColor = xform1 c_th3f_getlabelcolor
-  getLabelFont = xform1 c_th3f_getlabelfont
-  getLabelOffset = xform1 c_th3f_getlabeloffset
-  getLabelSize = xform1 c_th3f_getlabelsize
-  getTitleFont = xform1 c_th3f_gettitlefont
-  getTitleOffset = xform1 c_th3f_gettitleoffset
-  getTitleSize = xform1 c_th3f_gettitlesize
-  getTickLength = xform1 c_th3f_getticklength
-  getBarOffset = xform0 c_th3f_getbaroffset
-  getBarWidth = xform0 c_th3f_getbarwidth
-  getContour = xform1 c_th3f_getcontour
-  getContourLevel = xform1 c_th3f_getcontourlevel
-  getContourLevelPad = xform1 c_th3f_getcontourlevelpad
-  getBin = xform3 c_th3f_getbin
-  getBinCenter = xform1 c_th3f_getbincenter
-  getBinContent1 = xform1 c_th3f_getbincontent1
-  getBinContent2 = xform2 c_th3f_getbincontent2
-  getBinContent3 = xform3 c_th3f_getbincontent3
-  getBinError1 = xform1 c_th3f_getbinerror1
-  getBinError2 = xform2 c_th3f_getbinerror2
-  getBinError3 = xform3 c_th3f_getbinerror3
-  getBinLowEdge = xform1 c_th3f_getbinlowedge
-  getBinWidth = xform1 c_th3f_getbinwidth
-  getCellContent = xform2 c_th3f_getcellcontent
-  getCellError = xform2 c_th3f_getcellerror
-  scale = xform2 c_th3f_scale
-  setAxisColor = xform2 c_th3f_setaxiscolor
-  setAxisRange = xform3 c_th3f_setaxisrange
-  setBarOffset = xform1 c_th3f_setbaroffset
-  setBarWidth = xform1 c_th3f_setbarwidth
-  setBinContent1 = xform2 c_th3f_setbincontent1
-  setBinContent2 = xform3 c_th3f_setbincontent2
-  setBinContent3 = xform4 c_th3f_setbincontent3
-  setBinError1 = xform2 c_th3f_setbinerror1
-  setBinError2 = xform3 c_th3f_setbinerror2
-  setBinError3 = xform4 c_th3f_setbinerror3
-  setBins1 = xform2 c_th3f_setbins1
-  setBins2 = xform4 c_th3f_setbins2
-  setBins3 = xform6 c_th3f_setbins3
-  setMaximum = xform1 c_th3f_setmaximum
-  setMinimum = xform1 c_th3f_setminimum
-  setXTitle = xform1 c_th3f_setxtitle
-  setYTitle = xform1 c_th3f_setytitle
-  setZTitle = xform1 c_th3f_setztitle
-
-instance ITH1 TH3D where
-  add = xform2 c_th3d_add
-  addBinContent = xform2 c_th3d_addbincontent
-  chi2Test = xform3 c_th3d_chi2test
-  computeIntegral = xform0 c_th3d_computeintegral
-  directoryAutoAdd = xform1 c_th3d_directoryautoadd
-  distancetoPrimitive = xform2 c_th3d_distancetoprimitive
-  divide = xform5 c_th3d_divide
-  drawCopy = xform1 c_th3d_drawcopy
-  drawNormalized = xform2 c_th3d_drawnormalized
-  drawPanel = xform0 c_th3d_drawpanel
-  bufferEmpty = xform1 c_th3d_bufferempty
-  eval = xform2 c_th3d_eval
-  executeEvent = xform3 c_th3d_executeevent
-  fFT = xform2 c_th3d_fft
-  fill1 = xform1 c_th3d_fill1
-  fillN = xform4 c_th3d_filln
-  fillRandom = xform2 c_th3d_fillrandom
-  findBin = xform3 c_th3d_findbin
-  findFixBin = xform3 c_th3d_findfixbin
-  findFirstBinAbove = xform2 c_th3d_findfirstbinabove
-  findLastBinAbove = xform2 c_th3d_findlastbinabove
-  fitPanel = xform0 c_th3d_fitpanel
-  getNdivisions = xform1 c_th3d_getndivisions
-  getAxisColor = xform1 c_th3d_getaxiscolor
-  getLabelColor = xform1 c_th3d_getlabelcolor
-  getLabelFont = xform1 c_th3d_getlabelfont
-  getLabelOffset = xform1 c_th3d_getlabeloffset
-  getLabelSize = xform1 c_th3d_getlabelsize
-  getTitleFont = xform1 c_th3d_gettitlefont
-  getTitleOffset = xform1 c_th3d_gettitleoffset
-  getTitleSize = xform1 c_th3d_gettitlesize
-  getTickLength = xform1 c_th3d_getticklength
-  getBarOffset = xform0 c_th3d_getbaroffset
-  getBarWidth = xform0 c_th3d_getbarwidth
-  getContour = xform1 c_th3d_getcontour
-  getContourLevel = xform1 c_th3d_getcontourlevel
-  getContourLevelPad = xform1 c_th3d_getcontourlevelpad
-  getBin = xform3 c_th3d_getbin
-  getBinCenter = xform1 c_th3d_getbincenter
-  getBinContent1 = xform1 c_th3d_getbincontent1
-  getBinContent2 = xform2 c_th3d_getbincontent2
-  getBinContent3 = xform3 c_th3d_getbincontent3
-  getBinError1 = xform1 c_th3d_getbinerror1
-  getBinError2 = xform2 c_th3d_getbinerror2
-  getBinError3 = xform3 c_th3d_getbinerror3
-  getBinLowEdge = xform1 c_th3d_getbinlowedge
-  getBinWidth = xform1 c_th3d_getbinwidth
-  getCellContent = xform2 c_th3d_getcellcontent
-  getCellError = xform2 c_th3d_getcellerror
-  scale = xform2 c_th3d_scale
-  setAxisColor = xform2 c_th3d_setaxiscolor
-  setAxisRange = xform3 c_th3d_setaxisrange
-  setBarOffset = xform1 c_th3d_setbaroffset
-  setBarWidth = xform1 c_th3d_setbarwidth
-  setBinContent1 = xform2 c_th3d_setbincontent1
-  setBinContent2 = xform3 c_th3d_setbincontent2
-  setBinContent3 = xform4 c_th3d_setbincontent3
-  setBinError1 = xform2 c_th3d_setbinerror1
-  setBinError2 = xform3 c_th3d_setbinerror2
-  setBinError3 = xform4 c_th3d_setbinerror3
-  setBins1 = xform2 c_th3d_setbins1
-  setBins2 = xform4 c_th3d_setbins2
-  setBins3 = xform6 c_th3d_setbins3
-  setMaximum = xform1 c_th3d_setmaximum
-  setMinimum = xform1 c_th3d_setminimum
-  setXTitle = xform1 c_th3d_setxtitle
-  setYTitle = xform1 c_th3d_setytitle
-  setZTitle = xform1 c_th3d_setztitle
-
-instance ITH1 TH3C where
-  add = xform2 c_th3c_add
-  addBinContent = xform2 c_th3c_addbincontent
-  chi2Test = xform3 c_th3c_chi2test
-  computeIntegral = xform0 c_th3c_computeintegral
-  directoryAutoAdd = xform1 c_th3c_directoryautoadd
-  distancetoPrimitive = xform2 c_th3c_distancetoprimitive
-  divide = xform5 c_th3c_divide
-  drawCopy = xform1 c_th3c_drawcopy
-  drawNormalized = xform2 c_th3c_drawnormalized
-  drawPanel = xform0 c_th3c_drawpanel
-  bufferEmpty = xform1 c_th3c_bufferempty
-  eval = xform2 c_th3c_eval
-  executeEvent = xform3 c_th3c_executeevent
-  fFT = xform2 c_th3c_fft
-  fill1 = xform1 c_th3c_fill1
-  fillN = xform4 c_th3c_filln
-  fillRandom = xform2 c_th3c_fillrandom
-  findBin = xform3 c_th3c_findbin
-  findFixBin = xform3 c_th3c_findfixbin
-  findFirstBinAbove = xform2 c_th3c_findfirstbinabove
-  findLastBinAbove = xform2 c_th3c_findlastbinabove
-  fitPanel = xform0 c_th3c_fitpanel
-  getNdivisions = xform1 c_th3c_getndivisions
-  getAxisColor = xform1 c_th3c_getaxiscolor
-  getLabelColor = xform1 c_th3c_getlabelcolor
-  getLabelFont = xform1 c_th3c_getlabelfont
-  getLabelOffset = xform1 c_th3c_getlabeloffset
-  getLabelSize = xform1 c_th3c_getlabelsize
-  getTitleFont = xform1 c_th3c_gettitlefont
-  getTitleOffset = xform1 c_th3c_gettitleoffset
-  getTitleSize = xform1 c_th3c_gettitlesize
-  getTickLength = xform1 c_th3c_getticklength
-  getBarOffset = xform0 c_th3c_getbaroffset
-  getBarWidth = xform0 c_th3c_getbarwidth
-  getContour = xform1 c_th3c_getcontour
-  getContourLevel = xform1 c_th3c_getcontourlevel
-  getContourLevelPad = xform1 c_th3c_getcontourlevelpad
-  getBin = xform3 c_th3c_getbin
-  getBinCenter = xform1 c_th3c_getbincenter
-  getBinContent1 = xform1 c_th3c_getbincontent1
-  getBinContent2 = xform2 c_th3c_getbincontent2
-  getBinContent3 = xform3 c_th3c_getbincontent3
-  getBinError1 = xform1 c_th3c_getbinerror1
-  getBinError2 = xform2 c_th3c_getbinerror2
-  getBinError3 = xform3 c_th3c_getbinerror3
-  getBinLowEdge = xform1 c_th3c_getbinlowedge
-  getBinWidth = xform1 c_th3c_getbinwidth
-  getCellContent = xform2 c_th3c_getcellcontent
-  getCellError = xform2 c_th3c_getcellerror
-  scale = xform2 c_th3c_scale
-  setAxisColor = xform2 c_th3c_setaxiscolor
-  setAxisRange = xform3 c_th3c_setaxisrange
-  setBarOffset = xform1 c_th3c_setbaroffset
-  setBarWidth = xform1 c_th3c_setbarwidth
-  setBinContent1 = xform2 c_th3c_setbincontent1
-  setBinContent2 = xform3 c_th3c_setbincontent2
-  setBinContent3 = xform4 c_th3c_setbincontent3
-  setBinError1 = xform2 c_th3c_setbinerror1
-  setBinError2 = xform3 c_th3c_setbinerror2
-  setBinError3 = xform4 c_th3c_setbinerror3
-  setBins1 = xform2 c_th3c_setbins1
-  setBins2 = xform4 c_th3c_setbins2
-  setBins3 = xform6 c_th3c_setbins3
-  setMaximum = xform1 c_th3c_setmaximum
-  setMinimum = xform1 c_th3c_setminimum
-  setXTitle = xform1 c_th3c_setxtitle
-  setYTitle = xform1 c_th3c_setytitle
-  setZTitle = xform1 c_th3c_setztitle
-
-instance ITH1 TH2S where
-  add = xform2 c_th2s_add
-  addBinContent = xform2 c_th2s_addbincontent
-  chi2Test = xform3 c_th2s_chi2test
-  computeIntegral = xform0 c_th2s_computeintegral
-  directoryAutoAdd = xform1 c_th2s_directoryautoadd
-  distancetoPrimitive = xform2 c_th2s_distancetoprimitive
-  divide = xform5 c_th2s_divide
-  drawCopy = xform1 c_th2s_drawcopy
-  drawNormalized = xform2 c_th2s_drawnormalized
-  drawPanel = xform0 c_th2s_drawpanel
-  bufferEmpty = xform1 c_th2s_bufferempty
-  eval = xform2 c_th2s_eval
-  executeEvent = xform3 c_th2s_executeevent
-  fFT = xform2 c_th2s_fft
-  fill1 = xform1 c_th2s_fill1
-  fillN = xform4 c_th2s_filln
-  fillRandom = xform2 c_th2s_fillrandom
-  findBin = xform3 c_th2s_findbin
-  findFixBin = xform3 c_th2s_findfixbin
-  findFirstBinAbove = xform2 c_th2s_findfirstbinabove
-  findLastBinAbove = xform2 c_th2s_findlastbinabove
-  fitPanel = xform0 c_th2s_fitpanel
-  getNdivisions = xform1 c_th2s_getndivisions
-  getAxisColor = xform1 c_th2s_getaxiscolor
-  getLabelColor = xform1 c_th2s_getlabelcolor
-  getLabelFont = xform1 c_th2s_getlabelfont
-  getLabelOffset = xform1 c_th2s_getlabeloffset
-  getLabelSize = xform1 c_th2s_getlabelsize
-  getTitleFont = xform1 c_th2s_gettitlefont
-  getTitleOffset = xform1 c_th2s_gettitleoffset
-  getTitleSize = xform1 c_th2s_gettitlesize
-  getTickLength = xform1 c_th2s_getticklength
-  getBarOffset = xform0 c_th2s_getbaroffset
-  getBarWidth = xform0 c_th2s_getbarwidth
-  getContour = xform1 c_th2s_getcontour
-  getContourLevel = xform1 c_th2s_getcontourlevel
-  getContourLevelPad = xform1 c_th2s_getcontourlevelpad
-  getBin = xform3 c_th2s_getbin
-  getBinCenter = xform1 c_th2s_getbincenter
-  getBinContent1 = xform1 c_th2s_getbincontent1
-  getBinContent2 = xform2 c_th2s_getbincontent2
-  getBinContent3 = xform3 c_th2s_getbincontent3
-  getBinError1 = xform1 c_th2s_getbinerror1
-  getBinError2 = xform2 c_th2s_getbinerror2
-  getBinError3 = xform3 c_th2s_getbinerror3
-  getBinLowEdge = xform1 c_th2s_getbinlowedge
-  getBinWidth = xform1 c_th2s_getbinwidth
-  getCellContent = xform2 c_th2s_getcellcontent
-  getCellError = xform2 c_th2s_getcellerror
-  scale = xform2 c_th2s_scale
-  setAxisColor = xform2 c_th2s_setaxiscolor
-  setAxisRange = xform3 c_th2s_setaxisrange
-  setBarOffset = xform1 c_th2s_setbaroffset
-  setBarWidth = xform1 c_th2s_setbarwidth
-  setBinContent1 = xform2 c_th2s_setbincontent1
-  setBinContent2 = xform3 c_th2s_setbincontent2
-  setBinContent3 = xform4 c_th2s_setbincontent3
-  setBinError1 = xform2 c_th2s_setbinerror1
-  setBinError2 = xform3 c_th2s_setbinerror2
-  setBinError3 = xform4 c_th2s_setbinerror3
-  setBins1 = xform2 c_th2s_setbins1
-  setBins2 = xform4 c_th2s_setbins2
-  setBins3 = xform6 c_th2s_setbins3
-  setMaximum = xform1 c_th2s_setmaximum
-  setMinimum = xform1 c_th2s_setminimum
-  setXTitle = xform1 c_th2s_setxtitle
-  setYTitle = xform1 c_th2s_setytitle
-  setZTitle = xform1 c_th2s_setztitle
-
-instance ITH1 TH2Poly where
-  add = xform2 c_th2poly_add
-  addBinContent = xform2 c_th2poly_addbincontent
-  chi2Test = xform3 c_th2poly_chi2test
-  computeIntegral = xform0 c_th2poly_computeintegral
-  directoryAutoAdd = xform1 c_th2poly_directoryautoadd
-  distancetoPrimitive = xform2 c_th2poly_distancetoprimitive
-  divide = xform5 c_th2poly_divide
-  drawCopy = xform1 c_th2poly_drawcopy
-  drawNormalized = xform2 c_th2poly_drawnormalized
-  drawPanel = xform0 c_th2poly_drawpanel
-  bufferEmpty = xform1 c_th2poly_bufferempty
-  eval = xform2 c_th2poly_eval
-  executeEvent = xform3 c_th2poly_executeevent
-  fFT = xform2 c_th2poly_fft
-  fill1 = xform1 c_th2poly_fill1
-  fillN = xform4 c_th2poly_filln
-  fillRandom = xform2 c_th2poly_fillrandom
-  findBin = xform3 c_th2poly_findbin
-  findFixBin = xform3 c_th2poly_findfixbin
-  findFirstBinAbove = xform2 c_th2poly_findfirstbinabove
-  findLastBinAbove = xform2 c_th2poly_findlastbinabove
-  fitPanel = xform0 c_th2poly_fitpanel
-  getNdivisions = xform1 c_th2poly_getndivisions
-  getAxisColor = xform1 c_th2poly_getaxiscolor
-  getLabelColor = xform1 c_th2poly_getlabelcolor
-  getLabelFont = xform1 c_th2poly_getlabelfont
-  getLabelOffset = xform1 c_th2poly_getlabeloffset
-  getLabelSize = xform1 c_th2poly_getlabelsize
-  getTitleFont = xform1 c_th2poly_gettitlefont
-  getTitleOffset = xform1 c_th2poly_gettitleoffset
-  getTitleSize = xform1 c_th2poly_gettitlesize
-  getTickLength = xform1 c_th2poly_getticklength
-  getBarOffset = xform0 c_th2poly_getbaroffset
-  getBarWidth = xform0 c_th2poly_getbarwidth
-  getContour = xform1 c_th2poly_getcontour
-  getContourLevel = xform1 c_th2poly_getcontourlevel
-  getContourLevelPad = xform1 c_th2poly_getcontourlevelpad
-  getBin = xform3 c_th2poly_getbin
-  getBinCenter = xform1 c_th2poly_getbincenter
-  getBinContent1 = xform1 c_th2poly_getbincontent1
-  getBinContent2 = xform2 c_th2poly_getbincontent2
-  getBinContent3 = xform3 c_th2poly_getbincontent3
-  getBinError1 = xform1 c_th2poly_getbinerror1
-  getBinError2 = xform2 c_th2poly_getbinerror2
-  getBinError3 = xform3 c_th2poly_getbinerror3
-  getBinLowEdge = xform1 c_th2poly_getbinlowedge
-  getBinWidth = xform1 c_th2poly_getbinwidth
-  getCellContent = xform2 c_th2poly_getcellcontent
-  getCellError = xform2 c_th2poly_getcellerror
-  scale = xform2 c_th2poly_scale
-  setAxisColor = xform2 c_th2poly_setaxiscolor
-  setAxisRange = xform3 c_th2poly_setaxisrange
-  setBarOffset = xform1 c_th2poly_setbaroffset
-  setBarWidth = xform1 c_th2poly_setbarwidth
-  setBinContent1 = xform2 c_th2poly_setbincontent1
-  setBinContent2 = xform3 c_th2poly_setbincontent2
-  setBinContent3 = xform4 c_th2poly_setbincontent3
-  setBinError1 = xform2 c_th2poly_setbinerror1
-  setBinError2 = xform3 c_th2poly_setbinerror2
-  setBinError3 = xform4 c_th2poly_setbinerror3
-  setBins1 = xform2 c_th2poly_setbins1
-  setBins2 = xform4 c_th2poly_setbins2
-  setBins3 = xform6 c_th2poly_setbins3
-  setMaximum = xform1 c_th2poly_setmaximum
-  setMinimum = xform1 c_th2poly_setminimum
-  setXTitle = xform1 c_th2poly_setxtitle
-  setYTitle = xform1 c_th2poly_setytitle
-  setZTitle = xform1 c_th2poly_setztitle
-
-instance ITH1 TH2I where
-  add = xform2 c_th2i_add
-  addBinContent = xform2 c_th2i_addbincontent
-  chi2Test = xform3 c_th2i_chi2test
-  computeIntegral = xform0 c_th2i_computeintegral
-  directoryAutoAdd = xform1 c_th2i_directoryautoadd
-  distancetoPrimitive = xform2 c_th2i_distancetoprimitive
-  divide = xform5 c_th2i_divide
-  drawCopy = xform1 c_th2i_drawcopy
-  drawNormalized = xform2 c_th2i_drawnormalized
-  drawPanel = xform0 c_th2i_drawpanel
-  bufferEmpty = xform1 c_th2i_bufferempty
-  eval = xform2 c_th2i_eval
-  executeEvent = xform3 c_th2i_executeevent
-  fFT = xform2 c_th2i_fft
-  fill1 = xform1 c_th2i_fill1
-  fillN = xform4 c_th2i_filln
-  fillRandom = xform2 c_th2i_fillrandom
-  findBin = xform3 c_th2i_findbin
-  findFixBin = xform3 c_th2i_findfixbin
-  findFirstBinAbove = xform2 c_th2i_findfirstbinabove
-  findLastBinAbove = xform2 c_th2i_findlastbinabove
-  fitPanel = xform0 c_th2i_fitpanel
-  getNdivisions = xform1 c_th2i_getndivisions
-  getAxisColor = xform1 c_th2i_getaxiscolor
-  getLabelColor = xform1 c_th2i_getlabelcolor
-  getLabelFont = xform1 c_th2i_getlabelfont
-  getLabelOffset = xform1 c_th2i_getlabeloffset
-  getLabelSize = xform1 c_th2i_getlabelsize
-  getTitleFont = xform1 c_th2i_gettitlefont
-  getTitleOffset = xform1 c_th2i_gettitleoffset
-  getTitleSize = xform1 c_th2i_gettitlesize
-  getTickLength = xform1 c_th2i_getticklength
-  getBarOffset = xform0 c_th2i_getbaroffset
-  getBarWidth = xform0 c_th2i_getbarwidth
-  getContour = xform1 c_th2i_getcontour
-  getContourLevel = xform1 c_th2i_getcontourlevel
-  getContourLevelPad = xform1 c_th2i_getcontourlevelpad
-  getBin = xform3 c_th2i_getbin
-  getBinCenter = xform1 c_th2i_getbincenter
-  getBinContent1 = xform1 c_th2i_getbincontent1
-  getBinContent2 = xform2 c_th2i_getbincontent2
-  getBinContent3 = xform3 c_th2i_getbincontent3
-  getBinError1 = xform1 c_th2i_getbinerror1
-  getBinError2 = xform2 c_th2i_getbinerror2
-  getBinError3 = xform3 c_th2i_getbinerror3
-  getBinLowEdge = xform1 c_th2i_getbinlowedge
-  getBinWidth = xform1 c_th2i_getbinwidth
-  getCellContent = xform2 c_th2i_getcellcontent
-  getCellError = xform2 c_th2i_getcellerror
-  scale = xform2 c_th2i_scale
-  setAxisColor = xform2 c_th2i_setaxiscolor
-  setAxisRange = xform3 c_th2i_setaxisrange
-  setBarOffset = xform1 c_th2i_setbaroffset
-  setBarWidth = xform1 c_th2i_setbarwidth
-  setBinContent1 = xform2 c_th2i_setbincontent1
-  setBinContent2 = xform3 c_th2i_setbincontent2
-  setBinContent3 = xform4 c_th2i_setbincontent3
-  setBinError1 = xform2 c_th2i_setbinerror1
-  setBinError2 = xform3 c_th2i_setbinerror2
-  setBinError3 = xform4 c_th2i_setbinerror3
-  setBins1 = xform2 c_th2i_setbins1
-  setBins2 = xform4 c_th2i_setbins2
-  setBins3 = xform6 c_th2i_setbins3
-  setMaximum = xform1 c_th2i_setmaximum
-  setMinimum = xform1 c_th2i_setminimum
-  setXTitle = xform1 c_th2i_setxtitle
-  setYTitle = xform1 c_th2i_setytitle
-  setZTitle = xform1 c_th2i_setztitle
-
-instance ITH1 TH2F where
-  add = xform2 c_th2f_add
-  addBinContent = xform2 c_th2f_addbincontent
-  chi2Test = xform3 c_th2f_chi2test
-  computeIntegral = xform0 c_th2f_computeintegral
-  directoryAutoAdd = xform1 c_th2f_directoryautoadd
-  distancetoPrimitive = xform2 c_th2f_distancetoprimitive
-  divide = xform5 c_th2f_divide
-  drawCopy = xform1 c_th2f_drawcopy
-  drawNormalized = xform2 c_th2f_drawnormalized
-  drawPanel = xform0 c_th2f_drawpanel
-  bufferEmpty = xform1 c_th2f_bufferempty
-  eval = xform2 c_th2f_eval
-  executeEvent = xform3 c_th2f_executeevent
-  fFT = xform2 c_th2f_fft
-  fill1 = xform1 c_th2f_fill1
-  fillN = xform4 c_th2f_filln
-  fillRandom = xform2 c_th2f_fillrandom
-  findBin = xform3 c_th2f_findbin
-  findFixBin = xform3 c_th2f_findfixbin
-  findFirstBinAbove = xform2 c_th2f_findfirstbinabove
-  findLastBinAbove = xform2 c_th2f_findlastbinabove
-  fitPanel = xform0 c_th2f_fitpanel
-  getNdivisions = xform1 c_th2f_getndivisions
-  getAxisColor = xform1 c_th2f_getaxiscolor
-  getLabelColor = xform1 c_th2f_getlabelcolor
-  getLabelFont = xform1 c_th2f_getlabelfont
-  getLabelOffset = xform1 c_th2f_getlabeloffset
-  getLabelSize = xform1 c_th2f_getlabelsize
-  getTitleFont = xform1 c_th2f_gettitlefont
-  getTitleOffset = xform1 c_th2f_gettitleoffset
-  getTitleSize = xform1 c_th2f_gettitlesize
-  getTickLength = xform1 c_th2f_getticklength
-  getBarOffset = xform0 c_th2f_getbaroffset
-  getBarWidth = xform0 c_th2f_getbarwidth
-  getContour = xform1 c_th2f_getcontour
-  getContourLevel = xform1 c_th2f_getcontourlevel
-  getContourLevelPad = xform1 c_th2f_getcontourlevelpad
-  getBin = xform3 c_th2f_getbin
-  getBinCenter = xform1 c_th2f_getbincenter
-  getBinContent1 = xform1 c_th2f_getbincontent1
-  getBinContent2 = xform2 c_th2f_getbincontent2
-  getBinContent3 = xform3 c_th2f_getbincontent3
-  getBinError1 = xform1 c_th2f_getbinerror1
-  getBinError2 = xform2 c_th2f_getbinerror2
-  getBinError3 = xform3 c_th2f_getbinerror3
-  getBinLowEdge = xform1 c_th2f_getbinlowedge
-  getBinWidth = xform1 c_th2f_getbinwidth
-  getCellContent = xform2 c_th2f_getcellcontent
-  getCellError = xform2 c_th2f_getcellerror
-  scale = xform2 c_th2f_scale
-  setAxisColor = xform2 c_th2f_setaxiscolor
-  setAxisRange = xform3 c_th2f_setaxisrange
-  setBarOffset = xform1 c_th2f_setbaroffset
-  setBarWidth = xform1 c_th2f_setbarwidth
-  setBinContent1 = xform2 c_th2f_setbincontent1
-  setBinContent2 = xform3 c_th2f_setbincontent2
-  setBinContent3 = xform4 c_th2f_setbincontent3
-  setBinError1 = xform2 c_th2f_setbinerror1
-  setBinError2 = xform3 c_th2f_setbinerror2
-  setBinError3 = xform4 c_th2f_setbinerror3
-  setBins1 = xform2 c_th2f_setbins1
-  setBins2 = xform4 c_th2f_setbins2
-  setBins3 = xform6 c_th2f_setbins3
-  setMaximum = xform1 c_th2f_setmaximum
-  setMinimum = xform1 c_th2f_setminimum
-  setXTitle = xform1 c_th2f_setxtitle
-  setYTitle = xform1 c_th2f_setytitle
-  setZTitle = xform1 c_th2f_setztitle
-
-instance ITH1 TH2D where
-  add = xform2 c_th2d_add
-  addBinContent = xform2 c_th2d_addbincontent
-  chi2Test = xform3 c_th2d_chi2test
-  computeIntegral = xform0 c_th2d_computeintegral
-  directoryAutoAdd = xform1 c_th2d_directoryautoadd
-  distancetoPrimitive = xform2 c_th2d_distancetoprimitive
-  divide = xform5 c_th2d_divide
-  drawCopy = xform1 c_th2d_drawcopy
-  drawNormalized = xform2 c_th2d_drawnormalized
-  drawPanel = xform0 c_th2d_drawpanel
-  bufferEmpty = xform1 c_th2d_bufferempty
-  eval = xform2 c_th2d_eval
-  executeEvent = xform3 c_th2d_executeevent
-  fFT = xform2 c_th2d_fft
-  fill1 = xform1 c_th2d_fill1
-  fillN = xform4 c_th2d_filln
-  fillRandom = xform2 c_th2d_fillrandom
-  findBin = xform3 c_th2d_findbin
-  findFixBin = xform3 c_th2d_findfixbin
-  findFirstBinAbove = xform2 c_th2d_findfirstbinabove
-  findLastBinAbove = xform2 c_th2d_findlastbinabove
-  fitPanel = xform0 c_th2d_fitpanel
-  getNdivisions = xform1 c_th2d_getndivisions
-  getAxisColor = xform1 c_th2d_getaxiscolor
-  getLabelColor = xform1 c_th2d_getlabelcolor
-  getLabelFont = xform1 c_th2d_getlabelfont
-  getLabelOffset = xform1 c_th2d_getlabeloffset
-  getLabelSize = xform1 c_th2d_getlabelsize
-  getTitleFont = xform1 c_th2d_gettitlefont
-  getTitleOffset = xform1 c_th2d_gettitleoffset
-  getTitleSize = xform1 c_th2d_gettitlesize
-  getTickLength = xform1 c_th2d_getticklength
-  getBarOffset = xform0 c_th2d_getbaroffset
-  getBarWidth = xform0 c_th2d_getbarwidth
-  getContour = xform1 c_th2d_getcontour
-  getContourLevel = xform1 c_th2d_getcontourlevel
-  getContourLevelPad = xform1 c_th2d_getcontourlevelpad
-  getBin = xform3 c_th2d_getbin
-  getBinCenter = xform1 c_th2d_getbincenter
-  getBinContent1 = xform1 c_th2d_getbincontent1
-  getBinContent2 = xform2 c_th2d_getbincontent2
-  getBinContent3 = xform3 c_th2d_getbincontent3
-  getBinError1 = xform1 c_th2d_getbinerror1
-  getBinError2 = xform2 c_th2d_getbinerror2
-  getBinError3 = xform3 c_th2d_getbinerror3
-  getBinLowEdge = xform1 c_th2d_getbinlowedge
-  getBinWidth = xform1 c_th2d_getbinwidth
-  getCellContent = xform2 c_th2d_getcellcontent
-  getCellError = xform2 c_th2d_getcellerror
-  scale = xform2 c_th2d_scale
-  setAxisColor = xform2 c_th2d_setaxiscolor
-  setAxisRange = xform3 c_th2d_setaxisrange
-  setBarOffset = xform1 c_th2d_setbaroffset
-  setBarWidth = xform1 c_th2d_setbarwidth
-  setBinContent1 = xform2 c_th2d_setbincontent1
-  setBinContent2 = xform3 c_th2d_setbincontent2
-  setBinContent3 = xform4 c_th2d_setbincontent3
-  setBinError1 = xform2 c_th2d_setbinerror1
-  setBinError2 = xform3 c_th2d_setbinerror2
-  setBinError3 = xform4 c_th2d_setbinerror3
-  setBins1 = xform2 c_th2d_setbins1
-  setBins2 = xform4 c_th2d_setbins2
-  setBins3 = xform6 c_th2d_setbins3
-  setMaximum = xform1 c_th2d_setmaximum
-  setMinimum = xform1 c_th2d_setminimum
-  setXTitle = xform1 c_th2d_setxtitle
-  setYTitle = xform1 c_th2d_setytitle
-  setZTitle = xform1 c_th2d_setztitle
-
-instance ITH1 TH2C where
-  add = xform2 c_th2c_add
-  addBinContent = xform2 c_th2c_addbincontent
-  chi2Test = xform3 c_th2c_chi2test
-  computeIntegral = xform0 c_th2c_computeintegral
-  directoryAutoAdd = xform1 c_th2c_directoryautoadd
-  distancetoPrimitive = xform2 c_th2c_distancetoprimitive
-  divide = xform5 c_th2c_divide
-  drawCopy = xform1 c_th2c_drawcopy
-  drawNormalized = xform2 c_th2c_drawnormalized
-  drawPanel = xform0 c_th2c_drawpanel
-  bufferEmpty = xform1 c_th2c_bufferempty
-  eval = xform2 c_th2c_eval
-  executeEvent = xform3 c_th2c_executeevent
-  fFT = xform2 c_th2c_fft
-  fill1 = xform1 c_th2c_fill1
-  fillN = xform4 c_th2c_filln
-  fillRandom = xform2 c_th2c_fillrandom
-  findBin = xform3 c_th2c_findbin
-  findFixBin = xform3 c_th2c_findfixbin
-  findFirstBinAbove = xform2 c_th2c_findfirstbinabove
-  findLastBinAbove = xform2 c_th2c_findlastbinabove
-  fitPanel = xform0 c_th2c_fitpanel
-  getNdivisions = xform1 c_th2c_getndivisions
-  getAxisColor = xform1 c_th2c_getaxiscolor
-  getLabelColor = xform1 c_th2c_getlabelcolor
-  getLabelFont = xform1 c_th2c_getlabelfont
-  getLabelOffset = xform1 c_th2c_getlabeloffset
-  getLabelSize = xform1 c_th2c_getlabelsize
-  getTitleFont = xform1 c_th2c_gettitlefont
-  getTitleOffset = xform1 c_th2c_gettitleoffset
-  getTitleSize = xform1 c_th2c_gettitlesize
-  getTickLength = xform1 c_th2c_getticklength
-  getBarOffset = xform0 c_th2c_getbaroffset
-  getBarWidth = xform0 c_th2c_getbarwidth
-  getContour = xform1 c_th2c_getcontour
-  getContourLevel = xform1 c_th2c_getcontourlevel
-  getContourLevelPad = xform1 c_th2c_getcontourlevelpad
-  getBin = xform3 c_th2c_getbin
-  getBinCenter = xform1 c_th2c_getbincenter
-  getBinContent1 = xform1 c_th2c_getbincontent1
-  getBinContent2 = xform2 c_th2c_getbincontent2
-  getBinContent3 = xform3 c_th2c_getbincontent3
-  getBinError1 = xform1 c_th2c_getbinerror1
-  getBinError2 = xform2 c_th2c_getbinerror2
-  getBinError3 = xform3 c_th2c_getbinerror3
-  getBinLowEdge = xform1 c_th2c_getbinlowedge
-  getBinWidth = xform1 c_th2c_getbinwidth
-  getCellContent = xform2 c_th2c_getcellcontent
-  getCellError = xform2 c_th2c_getcellerror
-  scale = xform2 c_th2c_scale
-  setAxisColor = xform2 c_th2c_setaxiscolor
-  setAxisRange = xform3 c_th2c_setaxisrange
-  setBarOffset = xform1 c_th2c_setbaroffset
-  setBarWidth = xform1 c_th2c_setbarwidth
-  setBinContent1 = xform2 c_th2c_setbincontent1
-  setBinContent2 = xform3 c_th2c_setbincontent2
-  setBinContent3 = xform4 c_th2c_setbincontent3
-  setBinError1 = xform2 c_th2c_setbinerror1
-  setBinError2 = xform3 c_th2c_setbinerror2
-  setBinError3 = xform4 c_th2c_setbinerror3
-  setBins1 = xform2 c_th2c_setbins1
-  setBins2 = xform4 c_th2c_setbins2
-  setBins3 = xform6 c_th2c_setbins3
-  setMaximum = xform1 c_th2c_setmaximum
-  setMinimum = xform1 c_th2c_setminimum
-  setXTitle = xform1 c_th2c_setxtitle
-  setYTitle = xform1 c_th2c_setytitle
-  setZTitle = xform1 c_th2c_setztitle
-
-instance ITH1 TH1S where
-  add = xform2 c_th1s_add
-  addBinContent = xform2 c_th1s_addbincontent
-  chi2Test = xform3 c_th1s_chi2test
-  computeIntegral = xform0 c_th1s_computeintegral
-  directoryAutoAdd = xform1 c_th1s_directoryautoadd
-  distancetoPrimitive = xform2 c_th1s_distancetoprimitive
-  divide = xform5 c_th1s_divide
-  drawCopy = xform1 c_th1s_drawcopy
-  drawNormalized = xform2 c_th1s_drawnormalized
-  drawPanel = xform0 c_th1s_drawpanel
-  bufferEmpty = xform1 c_th1s_bufferempty
-  eval = xform2 c_th1s_eval
-  executeEvent = xform3 c_th1s_executeevent
-  fFT = xform2 c_th1s_fft
-  fill1 = xform1 c_th1s_fill1
-  fillN = xform4 c_th1s_filln
-  fillRandom = xform2 c_th1s_fillrandom
-  findBin = xform3 c_th1s_findbin
-  findFixBin = xform3 c_th1s_findfixbin
-  findFirstBinAbove = xform2 c_th1s_findfirstbinabove
-  findLastBinAbove = xform2 c_th1s_findlastbinabove
-  fitPanel = xform0 c_th1s_fitpanel
-  getNdivisions = xform1 c_th1s_getndivisions
-  getAxisColor = xform1 c_th1s_getaxiscolor
-  getLabelColor = xform1 c_th1s_getlabelcolor
-  getLabelFont = xform1 c_th1s_getlabelfont
-  getLabelOffset = xform1 c_th1s_getlabeloffset
-  getLabelSize = xform1 c_th1s_getlabelsize
-  getTitleFont = xform1 c_th1s_gettitlefont
-  getTitleOffset = xform1 c_th1s_gettitleoffset
-  getTitleSize = xform1 c_th1s_gettitlesize
-  getTickLength = xform1 c_th1s_getticklength
-  getBarOffset = xform0 c_th1s_getbaroffset
-  getBarWidth = xform0 c_th1s_getbarwidth
-  getContour = xform1 c_th1s_getcontour
-  getContourLevel = xform1 c_th1s_getcontourlevel
-  getContourLevelPad = xform1 c_th1s_getcontourlevelpad
-  getBin = xform3 c_th1s_getbin
-  getBinCenter = xform1 c_th1s_getbincenter
-  getBinContent1 = xform1 c_th1s_getbincontent1
-  getBinContent2 = xform2 c_th1s_getbincontent2
-  getBinContent3 = xform3 c_th1s_getbincontent3
-  getBinError1 = xform1 c_th1s_getbinerror1
-  getBinError2 = xform2 c_th1s_getbinerror2
-  getBinError3 = xform3 c_th1s_getbinerror3
-  getBinLowEdge = xform1 c_th1s_getbinlowedge
-  getBinWidth = xform1 c_th1s_getbinwidth
-  getCellContent = xform2 c_th1s_getcellcontent
-  getCellError = xform2 c_th1s_getcellerror
-  scale = xform2 c_th1s_scale
-  setAxisColor = xform2 c_th1s_setaxiscolor
-  setAxisRange = xform3 c_th1s_setaxisrange
-  setBarOffset = xform1 c_th1s_setbaroffset
-  setBarWidth = xform1 c_th1s_setbarwidth
-  setBinContent1 = xform2 c_th1s_setbincontent1
-  setBinContent2 = xform3 c_th1s_setbincontent2
-  setBinContent3 = xform4 c_th1s_setbincontent3
-  setBinError1 = xform2 c_th1s_setbinerror1
-  setBinError2 = xform3 c_th1s_setbinerror2
-  setBinError3 = xform4 c_th1s_setbinerror3
-  setBins1 = xform2 c_th1s_setbins1
-  setBins2 = xform4 c_th1s_setbins2
-  setBins3 = xform6 c_th1s_setbins3
-  setMaximum = xform1 c_th1s_setmaximum
-  setMinimum = xform1 c_th1s_setminimum
-  setXTitle = xform1 c_th1s_setxtitle
-  setYTitle = xform1 c_th1s_setytitle
-  setZTitle = xform1 c_th1s_setztitle
-
-instance ITH1 TH1I where
-  add = xform2 c_th1i_add
-  addBinContent = xform2 c_th1i_addbincontent
-  chi2Test = xform3 c_th1i_chi2test
-  computeIntegral = xform0 c_th1i_computeintegral
-  directoryAutoAdd = xform1 c_th1i_directoryautoadd
-  distancetoPrimitive = xform2 c_th1i_distancetoprimitive
-  divide = xform5 c_th1i_divide
-  drawCopy = xform1 c_th1i_drawcopy
-  drawNormalized = xform2 c_th1i_drawnormalized
-  drawPanel = xform0 c_th1i_drawpanel
-  bufferEmpty = xform1 c_th1i_bufferempty
-  eval = xform2 c_th1i_eval
-  executeEvent = xform3 c_th1i_executeevent
-  fFT = xform2 c_th1i_fft
-  fill1 = xform1 c_th1i_fill1
-  fillN = xform4 c_th1i_filln
-  fillRandom = xform2 c_th1i_fillrandom
-  findBin = xform3 c_th1i_findbin
-  findFixBin = xform3 c_th1i_findfixbin
-  findFirstBinAbove = xform2 c_th1i_findfirstbinabove
-  findLastBinAbove = xform2 c_th1i_findlastbinabove
-  fitPanel = xform0 c_th1i_fitpanel
-  getNdivisions = xform1 c_th1i_getndivisions
-  getAxisColor = xform1 c_th1i_getaxiscolor
-  getLabelColor = xform1 c_th1i_getlabelcolor
-  getLabelFont = xform1 c_th1i_getlabelfont
-  getLabelOffset = xform1 c_th1i_getlabeloffset
-  getLabelSize = xform1 c_th1i_getlabelsize
-  getTitleFont = xform1 c_th1i_gettitlefont
-  getTitleOffset = xform1 c_th1i_gettitleoffset
-  getTitleSize = xform1 c_th1i_gettitlesize
-  getTickLength = xform1 c_th1i_getticklength
-  getBarOffset = xform0 c_th1i_getbaroffset
-  getBarWidth = xform0 c_th1i_getbarwidth
-  getContour = xform1 c_th1i_getcontour
-  getContourLevel = xform1 c_th1i_getcontourlevel
-  getContourLevelPad = xform1 c_th1i_getcontourlevelpad
-  getBin = xform3 c_th1i_getbin
-  getBinCenter = xform1 c_th1i_getbincenter
-  getBinContent1 = xform1 c_th1i_getbincontent1
-  getBinContent2 = xform2 c_th1i_getbincontent2
-  getBinContent3 = xform3 c_th1i_getbincontent3
-  getBinError1 = xform1 c_th1i_getbinerror1
-  getBinError2 = xform2 c_th1i_getbinerror2
-  getBinError3 = xform3 c_th1i_getbinerror3
-  getBinLowEdge = xform1 c_th1i_getbinlowedge
-  getBinWidth = xform1 c_th1i_getbinwidth
-  getCellContent = xform2 c_th1i_getcellcontent
-  getCellError = xform2 c_th1i_getcellerror
-  scale = xform2 c_th1i_scale
-  setAxisColor = xform2 c_th1i_setaxiscolor
-  setAxisRange = xform3 c_th1i_setaxisrange
-  setBarOffset = xform1 c_th1i_setbaroffset
-  setBarWidth = xform1 c_th1i_setbarwidth
-  setBinContent1 = xform2 c_th1i_setbincontent1
-  setBinContent2 = xform3 c_th1i_setbincontent2
-  setBinContent3 = xform4 c_th1i_setbincontent3
-  setBinError1 = xform2 c_th1i_setbinerror1
-  setBinError2 = xform3 c_th1i_setbinerror2
-  setBinError3 = xform4 c_th1i_setbinerror3
-  setBins1 = xform2 c_th1i_setbins1
-  setBins2 = xform4 c_th1i_setbins2
-  setBins3 = xform6 c_th1i_setbins3
-  setMaximum = xform1 c_th1i_setmaximum
-  setMinimum = xform1 c_th1i_setminimum
-  setXTitle = xform1 c_th1i_setxtitle
-  setYTitle = xform1 c_th1i_setytitle
-  setZTitle = xform1 c_th1i_setztitle
-
-instance ITH1 TH1F where
-  add = xform2 c_th1f_add
-  addBinContent = xform2 c_th1f_addbincontent
-  chi2Test = xform3 c_th1f_chi2test
-  computeIntegral = xform0 c_th1f_computeintegral
-  directoryAutoAdd = xform1 c_th1f_directoryautoadd
-  distancetoPrimitive = xform2 c_th1f_distancetoprimitive
-  divide = xform5 c_th1f_divide
-  drawCopy = xform1 c_th1f_drawcopy
-  drawNormalized = xform2 c_th1f_drawnormalized
-  drawPanel = xform0 c_th1f_drawpanel
-  bufferEmpty = xform1 c_th1f_bufferempty
-  eval = xform2 c_th1f_eval
-  executeEvent = xform3 c_th1f_executeevent
-  fFT = xform2 c_th1f_fft
-  fill1 = xform1 c_th1f_fill1
-  fillN = xform4 c_th1f_filln
-  fillRandom = xform2 c_th1f_fillrandom
-  findBin = xform3 c_th1f_findbin
-  findFixBin = xform3 c_th1f_findfixbin
-  findFirstBinAbove = xform2 c_th1f_findfirstbinabove
-  findLastBinAbove = xform2 c_th1f_findlastbinabove
-  fitPanel = xform0 c_th1f_fitpanel
-  getNdivisions = xform1 c_th1f_getndivisions
-  getAxisColor = xform1 c_th1f_getaxiscolor
-  getLabelColor = xform1 c_th1f_getlabelcolor
-  getLabelFont = xform1 c_th1f_getlabelfont
-  getLabelOffset = xform1 c_th1f_getlabeloffset
-  getLabelSize = xform1 c_th1f_getlabelsize
-  getTitleFont = xform1 c_th1f_gettitlefont
-  getTitleOffset = xform1 c_th1f_gettitleoffset
-  getTitleSize = xform1 c_th1f_gettitlesize
-  getTickLength = xform1 c_th1f_getticklength
-  getBarOffset = xform0 c_th1f_getbaroffset
-  getBarWidth = xform0 c_th1f_getbarwidth
-  getContour = xform1 c_th1f_getcontour
-  getContourLevel = xform1 c_th1f_getcontourlevel
-  getContourLevelPad = xform1 c_th1f_getcontourlevelpad
-  getBin = xform3 c_th1f_getbin
-  getBinCenter = xform1 c_th1f_getbincenter
-  getBinContent1 = xform1 c_th1f_getbincontent1
-  getBinContent2 = xform2 c_th1f_getbincontent2
-  getBinContent3 = xform3 c_th1f_getbincontent3
-  getBinError1 = xform1 c_th1f_getbinerror1
-  getBinError2 = xform2 c_th1f_getbinerror2
-  getBinError3 = xform3 c_th1f_getbinerror3
-  getBinLowEdge = xform1 c_th1f_getbinlowedge
-  getBinWidth = xform1 c_th1f_getbinwidth
-  getCellContent = xform2 c_th1f_getcellcontent
-  getCellError = xform2 c_th1f_getcellerror
-  scale = xform2 c_th1f_scale
-  setAxisColor = xform2 c_th1f_setaxiscolor
-  setAxisRange = xform3 c_th1f_setaxisrange
-  setBarOffset = xform1 c_th1f_setbaroffset
-  setBarWidth = xform1 c_th1f_setbarwidth
-  setBinContent1 = xform2 c_th1f_setbincontent1
-  setBinContent2 = xform3 c_th1f_setbincontent2
-  setBinContent3 = xform4 c_th1f_setbincontent3
-  setBinError1 = xform2 c_th1f_setbinerror1
-  setBinError2 = xform3 c_th1f_setbinerror2
-  setBinError3 = xform4 c_th1f_setbinerror3
-  setBins1 = xform2 c_th1f_setbins1
-  setBins2 = xform4 c_th1f_setbins2
-  setBins3 = xform6 c_th1f_setbins3
-  setMaximum = xform1 c_th1f_setmaximum
-  setMinimum = xform1 c_th1f_setminimum
-  setXTitle = xform1 c_th1f_setxtitle
-  setYTitle = xform1 c_th1f_setytitle
-  setZTitle = xform1 c_th1f_setztitle
-
-instance ITH1 TH1D where
-  add = xform2 c_th1d_add
-  addBinContent = xform2 c_th1d_addbincontent
-  chi2Test = xform3 c_th1d_chi2test
-  computeIntegral = xform0 c_th1d_computeintegral
-  directoryAutoAdd = xform1 c_th1d_directoryautoadd
-  distancetoPrimitive = xform2 c_th1d_distancetoprimitive
-  divide = xform5 c_th1d_divide
-  drawCopy = xform1 c_th1d_drawcopy
-  drawNormalized = xform2 c_th1d_drawnormalized
-  drawPanel = xform0 c_th1d_drawpanel
-  bufferEmpty = xform1 c_th1d_bufferempty
-  eval = xform2 c_th1d_eval
-  executeEvent = xform3 c_th1d_executeevent
-  fFT = xform2 c_th1d_fft
-  fill1 = xform1 c_th1d_fill1
-  fillN = xform4 c_th1d_filln
-  fillRandom = xform2 c_th1d_fillrandom
-  findBin = xform3 c_th1d_findbin
-  findFixBin = xform3 c_th1d_findfixbin
-  findFirstBinAbove = xform2 c_th1d_findfirstbinabove
-  findLastBinAbove = xform2 c_th1d_findlastbinabove
-  fitPanel = xform0 c_th1d_fitpanel
-  getNdivisions = xform1 c_th1d_getndivisions
-  getAxisColor = xform1 c_th1d_getaxiscolor
-  getLabelColor = xform1 c_th1d_getlabelcolor
-  getLabelFont = xform1 c_th1d_getlabelfont
-  getLabelOffset = xform1 c_th1d_getlabeloffset
-  getLabelSize = xform1 c_th1d_getlabelsize
-  getTitleFont = xform1 c_th1d_gettitlefont
-  getTitleOffset = xform1 c_th1d_gettitleoffset
-  getTitleSize = xform1 c_th1d_gettitlesize
-  getTickLength = xform1 c_th1d_getticklength
-  getBarOffset = xform0 c_th1d_getbaroffset
-  getBarWidth = xform0 c_th1d_getbarwidth
-  getContour = xform1 c_th1d_getcontour
-  getContourLevel = xform1 c_th1d_getcontourlevel
-  getContourLevelPad = xform1 c_th1d_getcontourlevelpad
-  getBin = xform3 c_th1d_getbin
-  getBinCenter = xform1 c_th1d_getbincenter
-  getBinContent1 = xform1 c_th1d_getbincontent1
-  getBinContent2 = xform2 c_th1d_getbincontent2
-  getBinContent3 = xform3 c_th1d_getbincontent3
-  getBinError1 = xform1 c_th1d_getbinerror1
-  getBinError2 = xform2 c_th1d_getbinerror2
-  getBinError3 = xform3 c_th1d_getbinerror3
-  getBinLowEdge = xform1 c_th1d_getbinlowedge
-  getBinWidth = xform1 c_th1d_getbinwidth
-  getCellContent = xform2 c_th1d_getcellcontent
-  getCellError = xform2 c_th1d_getcellerror
-  scale = xform2 c_th1d_scale
-  setAxisColor = xform2 c_th1d_setaxiscolor
-  setAxisRange = xform3 c_th1d_setaxisrange
-  setBarOffset = xform1 c_th1d_setbaroffset
-  setBarWidth = xform1 c_th1d_setbarwidth
-  setBinContent1 = xform2 c_th1d_setbincontent1
-  setBinContent2 = xform3 c_th1d_setbincontent2
-  setBinContent3 = xform4 c_th1d_setbincontent3
-  setBinError1 = xform2 c_th1d_setbinerror1
-  setBinError2 = xform3 c_th1d_setbinerror2
-  setBinError3 = xform4 c_th1d_setbinerror3
-  setBins1 = xform2 c_th1d_setbins1
-  setBins2 = xform4 c_th1d_setbins2
-  setBins3 = xform6 c_th1d_setbins3
-  setMaximum = xform1 c_th1d_setmaximum
-  setMinimum = xform1 c_th1d_setminimum
-  setXTitle = xform1 c_th1d_setxtitle
-  setYTitle = xform1 c_th1d_setytitle
-  setZTitle = xform1 c_th1d_setztitle
-
-instance ITH1 TH1C where
-  add = xform2 c_th1c_add
-  addBinContent = xform2 c_th1c_addbincontent
-  chi2Test = xform3 c_th1c_chi2test
-  computeIntegral = xform0 c_th1c_computeintegral
-  directoryAutoAdd = xform1 c_th1c_directoryautoadd
-  distancetoPrimitive = xform2 c_th1c_distancetoprimitive
-  divide = xform5 c_th1c_divide
-  drawCopy = xform1 c_th1c_drawcopy
-  drawNormalized = xform2 c_th1c_drawnormalized
-  drawPanel = xform0 c_th1c_drawpanel
-  bufferEmpty = xform1 c_th1c_bufferempty
-  eval = xform2 c_th1c_eval
-  executeEvent = xform3 c_th1c_executeevent
-  fFT = xform2 c_th1c_fft
-  fill1 = xform1 c_th1c_fill1
-  fillN = xform4 c_th1c_filln
-  fillRandom = xform2 c_th1c_fillrandom
-  findBin = xform3 c_th1c_findbin
-  findFixBin = xform3 c_th1c_findfixbin
-  findFirstBinAbove = xform2 c_th1c_findfirstbinabove
-  findLastBinAbove = xform2 c_th1c_findlastbinabove
-  fitPanel = xform0 c_th1c_fitpanel
-  getNdivisions = xform1 c_th1c_getndivisions
-  getAxisColor = xform1 c_th1c_getaxiscolor
-  getLabelColor = xform1 c_th1c_getlabelcolor
-  getLabelFont = xform1 c_th1c_getlabelfont
-  getLabelOffset = xform1 c_th1c_getlabeloffset
-  getLabelSize = xform1 c_th1c_getlabelsize
-  getTitleFont = xform1 c_th1c_gettitlefont
-  getTitleOffset = xform1 c_th1c_gettitleoffset
-  getTitleSize = xform1 c_th1c_gettitlesize
-  getTickLength = xform1 c_th1c_getticklength
-  getBarOffset = xform0 c_th1c_getbaroffset
-  getBarWidth = xform0 c_th1c_getbarwidth
-  getContour = xform1 c_th1c_getcontour
-  getContourLevel = xform1 c_th1c_getcontourlevel
-  getContourLevelPad = xform1 c_th1c_getcontourlevelpad
-  getBin = xform3 c_th1c_getbin
-  getBinCenter = xform1 c_th1c_getbincenter
-  getBinContent1 = xform1 c_th1c_getbincontent1
-  getBinContent2 = xform2 c_th1c_getbincontent2
-  getBinContent3 = xform3 c_th1c_getbincontent3
-  getBinError1 = xform1 c_th1c_getbinerror1
-  getBinError2 = xform2 c_th1c_getbinerror2
-  getBinError3 = xform3 c_th1c_getbinerror3
-  getBinLowEdge = xform1 c_th1c_getbinlowedge
-  getBinWidth = xform1 c_th1c_getbinwidth
-  getCellContent = xform2 c_th1c_getcellcontent
-  getCellError = xform2 c_th1c_getcellerror
-  scale = xform2 c_th1c_scale
-  setAxisColor = xform2 c_th1c_setaxiscolor
-  setAxisRange = xform3 c_th1c_setaxisrange
-  setBarOffset = xform1 c_th1c_setbaroffset
-  setBarWidth = xform1 c_th1c_setbarwidth
-  setBinContent1 = xform2 c_th1c_setbincontent1
-  setBinContent2 = xform3 c_th1c_setbincontent2
-  setBinContent3 = xform4 c_th1c_setbincontent3
-  setBinError1 = xform2 c_th1c_setbinerror1
-  setBinError2 = xform3 c_th1c_setbinerror2
-  setBinError3 = xform4 c_th1c_setbinerror3
-  setBins1 = xform2 c_th1c_setbins1
-  setBins2 = xform4 c_th1c_setbins2
-  setBins3 = xform6 c_th1c_setbins3
-  setMaximum = xform1 c_th1c_setmaximum
-  setMinimum = xform1 c_th1c_setminimum
-  setXTitle = xform1 c_th1c_setxtitle
-  setYTitle = xform1 c_th1c_setytitle
-  setZTitle = xform1 c_th1c_setztitle
-
-instance ITH1 TH3 where
-  add = xform2 c_th3_add
-  addBinContent = xform2 c_th3_addbincontent
-  chi2Test = xform3 c_th3_chi2test
-  computeIntegral = xform0 c_th3_computeintegral
-  directoryAutoAdd = xform1 c_th3_directoryautoadd
-  distancetoPrimitive = xform2 c_th3_distancetoprimitive
-  divide = xform5 c_th3_divide
-  drawCopy = xform1 c_th3_drawcopy
-  drawNormalized = xform2 c_th3_drawnormalized
-  drawPanel = xform0 c_th3_drawpanel
-  bufferEmpty = xform1 c_th3_bufferempty
-  eval = xform2 c_th3_eval
-  executeEvent = xform3 c_th3_executeevent
-  fFT = xform2 c_th3_fft
-  fill1 = xform1 c_th3_fill1
-  fillN = xform4 c_th3_filln
-  fillRandom = xform2 c_th3_fillrandom
-  findBin = xform3 c_th3_findbin
-  findFixBin = xform3 c_th3_findfixbin
-  findFirstBinAbove = xform2 c_th3_findfirstbinabove
-  findLastBinAbove = xform2 c_th3_findlastbinabove
-  fitPanel = xform0 c_th3_fitpanel
-  getNdivisions = xform1 c_th3_getndivisions
-  getAxisColor = xform1 c_th3_getaxiscolor
-  getLabelColor = xform1 c_th3_getlabelcolor
-  getLabelFont = xform1 c_th3_getlabelfont
-  getLabelOffset = xform1 c_th3_getlabeloffset
-  getLabelSize = xform1 c_th3_getlabelsize
-  getTitleFont = xform1 c_th3_gettitlefont
-  getTitleOffset = xform1 c_th3_gettitleoffset
-  getTitleSize = xform1 c_th3_gettitlesize
-  getTickLength = xform1 c_th3_getticklength
-  getBarOffset = xform0 c_th3_getbaroffset
-  getBarWidth = xform0 c_th3_getbarwidth
-  getContour = xform1 c_th3_getcontour
-  getContourLevel = xform1 c_th3_getcontourlevel
-  getContourLevelPad = xform1 c_th3_getcontourlevelpad
-  getBin = xform3 c_th3_getbin
-  getBinCenter = xform1 c_th3_getbincenter
-  getBinContent1 = xform1 c_th3_getbincontent1
-  getBinContent2 = xform2 c_th3_getbincontent2
-  getBinContent3 = xform3 c_th3_getbincontent3
-  getBinError1 = xform1 c_th3_getbinerror1
-  getBinError2 = xform2 c_th3_getbinerror2
-  getBinError3 = xform3 c_th3_getbinerror3
-  getBinLowEdge = xform1 c_th3_getbinlowedge
-  getBinWidth = xform1 c_th3_getbinwidth
-  getCellContent = xform2 c_th3_getcellcontent
-  getCellError = xform2 c_th3_getcellerror
-  scale = xform2 c_th3_scale
-  setAxisColor = xform2 c_th3_setaxiscolor
-  setAxisRange = xform3 c_th3_setaxisrange
-  setBarOffset = xform1 c_th3_setbaroffset
-  setBarWidth = xform1 c_th3_setbarwidth
-  setBinContent1 = xform2 c_th3_setbincontent1
-  setBinContent2 = xform3 c_th3_setbincontent2
-  setBinContent3 = xform4 c_th3_setbincontent3
-  setBinError1 = xform2 c_th3_setbinerror1
-  setBinError2 = xform3 c_th3_setbinerror2
-  setBinError3 = xform4 c_th3_setbinerror3
-  setBins1 = xform2 c_th3_setbins1
-  setBins2 = xform4 c_th3_setbins2
-  setBins3 = xform6 c_th3_setbins3
-  setMaximum = xform1 c_th3_setmaximum
-  setMinimum = xform1 c_th3_setminimum
-  setXTitle = xform1 c_th3_setxtitle
-  setYTitle = xform1 c_th3_setytitle
-  setZTitle = xform1 c_th3_setztitle
-
-instance ITH1 TH2 where
-  add = xform2 c_th2_add
-  addBinContent = xform2 c_th2_addbincontent
-  chi2Test = xform3 c_th2_chi2test
-  computeIntegral = xform0 c_th2_computeintegral
-  directoryAutoAdd = xform1 c_th2_directoryautoadd
-  distancetoPrimitive = xform2 c_th2_distancetoprimitive
-  divide = xform5 c_th2_divide
-  drawCopy = xform1 c_th2_drawcopy
-  drawNormalized = xform2 c_th2_drawnormalized
-  drawPanel = xform0 c_th2_drawpanel
-  bufferEmpty = xform1 c_th2_bufferempty
-  eval = xform2 c_th2_eval
-  executeEvent = xform3 c_th2_executeevent
-  fFT = xform2 c_th2_fft
-  fill1 = xform1 c_th2_fill1
-  fillN = xform4 c_th2_filln
-  fillRandom = xform2 c_th2_fillrandom
-  findBin = xform3 c_th2_findbin
-  findFixBin = xform3 c_th2_findfixbin
-  findFirstBinAbove = xform2 c_th2_findfirstbinabove
-  findLastBinAbove = xform2 c_th2_findlastbinabove
-  fitPanel = xform0 c_th2_fitpanel
-  getNdivisions = xform1 c_th2_getndivisions
-  getAxisColor = xform1 c_th2_getaxiscolor
-  getLabelColor = xform1 c_th2_getlabelcolor
-  getLabelFont = xform1 c_th2_getlabelfont
-  getLabelOffset = xform1 c_th2_getlabeloffset
-  getLabelSize = xform1 c_th2_getlabelsize
-  getTitleFont = xform1 c_th2_gettitlefont
-  getTitleOffset = xform1 c_th2_gettitleoffset
-  getTitleSize = xform1 c_th2_gettitlesize
-  getTickLength = xform1 c_th2_getticklength
-  getBarOffset = xform0 c_th2_getbaroffset
-  getBarWidth = xform0 c_th2_getbarwidth
-  getContour = xform1 c_th2_getcontour
-  getContourLevel = xform1 c_th2_getcontourlevel
-  getContourLevelPad = xform1 c_th2_getcontourlevelpad
-  getBin = xform3 c_th2_getbin
-  getBinCenter = xform1 c_th2_getbincenter
-  getBinContent1 = xform1 c_th2_getbincontent1
-  getBinContent2 = xform2 c_th2_getbincontent2
-  getBinContent3 = xform3 c_th2_getbincontent3
-  getBinError1 = xform1 c_th2_getbinerror1
-  getBinError2 = xform2 c_th2_getbinerror2
-  getBinError3 = xform3 c_th2_getbinerror3
-  getBinLowEdge = xform1 c_th2_getbinlowedge
-  getBinWidth = xform1 c_th2_getbinwidth
-  getCellContent = xform2 c_th2_getcellcontent
-  getCellError = xform2 c_th2_getcellerror
-  scale = xform2 c_th2_scale
-  setAxisColor = xform2 c_th2_setaxiscolor
-  setAxisRange = xform3 c_th2_setaxisrange
-  setBarOffset = xform1 c_th2_setbaroffset
-  setBarWidth = xform1 c_th2_setbarwidth
-  setBinContent1 = xform2 c_th2_setbincontent1
-  setBinContent2 = xform3 c_th2_setbincontent2
-  setBinContent3 = xform4 c_th2_setbincontent3
-  setBinError1 = xform2 c_th2_setbinerror1
-  setBinError2 = xform3 c_th2_setbinerror2
-  setBinError3 = xform4 c_th2_setbinerror3
-  setBins1 = xform2 c_th2_setbins1
-  setBins2 = xform4 c_th2_setbins2
-  setBins3 = xform6 c_th2_setbins3
-  setMaximum = xform1 c_th2_setmaximum
-  setMinimum = xform1 c_th2_setminimum
-  setXTitle = xform1 c_th2_setxtitle
-  setYTitle = xform1 c_th2_setytitle
-  setZTitle = xform1 c_th2_setztitle
-
-instance ITH2 TH2S where
-  fill2 = xform2 c_th2s_fill2
-  fillRandom2 = xform2 c_th2s_fillrandom2
-  findFirstBinAbove2 = xform2 c_th2s_findfirstbinabove2
-  findLastBinAbove2 = xform2 c_th2s_findlastbinabove2
-  fitSlicesX = xform6 c_th2s_fitslicesx
-  fitSlicesY = xform6 c_th2s_fitslicesy
-  getCorrelationFactor = xform2 c_th2s_getcorrelationfactor
-  getCovariance = xform2 c_th2s_getcovariance
-  getStats = xform1 c_th2s_getstats
-  integral = xform5 c_th2s_integral
-  interpolate = xform3 c_th2s_interpolate
-  kolmogorovTest = xform2 c_th2s_kolmogorovtest
-  rebinX = xform2 c_th2s_rebinx
-  rebinY = xform2 c_th2s_rebiny
-  rebin2D = xform3 c_th2s_rebin2d
-  putStats = xform1 c_th2s_putstats
-  reset = xform1 c_th2s_reset
-  setShowProjectionX = xform1 c_th2s_setshowprojectionx
-  setShowProjectionY = xform1 c_th2s_setshowprojectiony
-  showBackground = xform2 c_th2s_showbackground
-  showPeaks = xform3 c_th2s_showpeaks
-  smooth = xform2 c_th2s_smooth
-
-instance ITH2 TH2Poly where
-  fill2 = xform2 c_th2poly_fill2
-  fillRandom2 = xform2 c_th2poly_fillrandom2
-  findFirstBinAbove2 = xform2 c_th2poly_findfirstbinabove2
-  findLastBinAbove2 = xform2 c_th2poly_findlastbinabove2
-  fitSlicesX = xform6 c_th2poly_fitslicesx
-  fitSlicesY = xform6 c_th2poly_fitslicesy
-  getCorrelationFactor = xform2 c_th2poly_getcorrelationfactor
-  getCovariance = xform2 c_th2poly_getcovariance
-  getStats = xform1 c_th2poly_getstats
-  integral = xform5 c_th2poly_integral
-  interpolate = xform3 c_th2poly_interpolate
-  kolmogorovTest = xform2 c_th2poly_kolmogorovtest
-  rebinX = xform2 c_th2poly_rebinx
-  rebinY = xform2 c_th2poly_rebiny
-  rebin2D = xform3 c_th2poly_rebin2d
-  putStats = xform1 c_th2poly_putstats
-  reset = xform1 c_th2poly_reset
-  setShowProjectionX = xform1 c_th2poly_setshowprojectionx
-  setShowProjectionY = xform1 c_th2poly_setshowprojectiony
-  showBackground = xform2 c_th2poly_showbackground
-  showPeaks = xform3 c_th2poly_showpeaks
-  smooth = xform2 c_th2poly_smooth
-
-instance ITH2 TH2I where
-  fill2 = xform2 c_th2i_fill2
-  fillRandom2 = xform2 c_th2i_fillrandom2
-  findFirstBinAbove2 = xform2 c_th2i_findfirstbinabove2
-  findLastBinAbove2 = xform2 c_th2i_findlastbinabove2
-  fitSlicesX = xform6 c_th2i_fitslicesx
-  fitSlicesY = xform6 c_th2i_fitslicesy
-  getCorrelationFactor = xform2 c_th2i_getcorrelationfactor
-  getCovariance = xform2 c_th2i_getcovariance
-  getStats = xform1 c_th2i_getstats
-  integral = xform5 c_th2i_integral
-  interpolate = xform3 c_th2i_interpolate
-  kolmogorovTest = xform2 c_th2i_kolmogorovtest
-  rebinX = xform2 c_th2i_rebinx
-  rebinY = xform2 c_th2i_rebiny
-  rebin2D = xform3 c_th2i_rebin2d
-  putStats = xform1 c_th2i_putstats
-  reset = xform1 c_th2i_reset
-  setShowProjectionX = xform1 c_th2i_setshowprojectionx
-  setShowProjectionY = xform1 c_th2i_setshowprojectiony
-  showBackground = xform2 c_th2i_showbackground
-  showPeaks = xform3 c_th2i_showpeaks
-  smooth = xform2 c_th2i_smooth
-
-instance ITH2 TH2F where
-  fill2 = xform2 c_th2f_fill2
-  fillRandom2 = xform2 c_th2f_fillrandom2
-  findFirstBinAbove2 = xform2 c_th2f_findfirstbinabove2
-  findLastBinAbove2 = xform2 c_th2f_findlastbinabove2
-  fitSlicesX = xform6 c_th2f_fitslicesx
-  fitSlicesY = xform6 c_th2f_fitslicesy
-  getCorrelationFactor = xform2 c_th2f_getcorrelationfactor
-  getCovariance = xform2 c_th2f_getcovariance
-  getStats = xform1 c_th2f_getstats
-  integral = xform5 c_th2f_integral
-  interpolate = xform3 c_th2f_interpolate
-  kolmogorovTest = xform2 c_th2f_kolmogorovtest
-  rebinX = xform2 c_th2f_rebinx
-  rebinY = xform2 c_th2f_rebiny
-  rebin2D = xform3 c_th2f_rebin2d
-  putStats = xform1 c_th2f_putstats
-  reset = xform1 c_th2f_reset
-  setShowProjectionX = xform1 c_th2f_setshowprojectionx
-  setShowProjectionY = xform1 c_th2f_setshowprojectiony
-  showBackground = xform2 c_th2f_showbackground
-  showPeaks = xform3 c_th2f_showpeaks
-  smooth = xform2 c_th2f_smooth
-
-instance ITH2 TH2D where
-  fill2 = xform2 c_th2d_fill2
-  fillRandom2 = xform2 c_th2d_fillrandom2
-  findFirstBinAbove2 = xform2 c_th2d_findfirstbinabove2
-  findLastBinAbove2 = xform2 c_th2d_findlastbinabove2
-  fitSlicesX = xform6 c_th2d_fitslicesx
-  fitSlicesY = xform6 c_th2d_fitslicesy
-  getCorrelationFactor = xform2 c_th2d_getcorrelationfactor
-  getCovariance = xform2 c_th2d_getcovariance
-  getStats = xform1 c_th2d_getstats
-  integral = xform5 c_th2d_integral
-  interpolate = xform3 c_th2d_interpolate
-  kolmogorovTest = xform2 c_th2d_kolmogorovtest
-  rebinX = xform2 c_th2d_rebinx
-  rebinY = xform2 c_th2d_rebiny
-  rebin2D = xform3 c_th2d_rebin2d
-  putStats = xform1 c_th2d_putstats
-  reset = xform1 c_th2d_reset
-  setShowProjectionX = xform1 c_th2d_setshowprojectionx
-  setShowProjectionY = xform1 c_th2d_setshowprojectiony
-  showBackground = xform2 c_th2d_showbackground
-  showPeaks = xform3 c_th2d_showpeaks
-  smooth = xform2 c_th2d_smooth
-
-instance ITH2 TH2C where
-  fill2 = xform2 c_th2c_fill2
-  fillRandom2 = xform2 c_th2c_fillrandom2
-  findFirstBinAbove2 = xform2 c_th2c_findfirstbinabove2
-  findLastBinAbove2 = xform2 c_th2c_findlastbinabove2
-  fitSlicesX = xform6 c_th2c_fitslicesx
-  fitSlicesY = xform6 c_th2c_fitslicesy
-  getCorrelationFactor = xform2 c_th2c_getcorrelationfactor
-  getCovariance = xform2 c_th2c_getcovariance
-  getStats = xform1 c_th2c_getstats
-  integral = xform5 c_th2c_integral
-  interpolate = xform3 c_th2c_interpolate
-  kolmogorovTest = xform2 c_th2c_kolmogorovtest
-  rebinX = xform2 c_th2c_rebinx
-  rebinY = xform2 c_th2c_rebiny
-  rebin2D = xform3 c_th2c_rebin2d
-  putStats = xform1 c_th2c_putstats
-  reset = xform1 c_th2c_reset
-  setShowProjectionX = xform1 c_th2c_setshowprojectionx
-  setShowProjectionY = xform1 c_th2c_setshowprojectiony
-  showBackground = xform2 c_th2c_showbackground
-  showPeaks = xform3 c_th2c_showpeaks
-  smooth = xform2 c_th2c_smooth
-
-instance ITH3 TH3S where
-
-instance ITH3 TH3I where
-
-instance ITH3 TH3F where
-
-instance ITH3 TH3D where
-
-instance ITH3 TH3C where
-
-instance ITLine TGaxis where
-
-instance ITLine TArrow where
-
-instance ITNamed TKey where
-  setTitle = xform1 c_tkey_settitle
-
-instance ITNamed TRandom where
-  setTitle = xform1 c_trandom_settitle
-
-instance ITNamed TH3S where
-  setTitle = xform1 c_th3s_settitle
-
-instance ITNamed TH3I where
-  setTitle = xform1 c_th3i_settitle
-
-instance ITNamed TH3F where
-  setTitle = xform1 c_th3f_settitle
-
-instance ITNamed TH3D where
-  setTitle = xform1 c_th3d_settitle
-
-instance ITNamed TH3C where
-  setTitle = xform1 c_th3c_settitle
-
-instance ITNamed TH2S where
-  setTitle = xform1 c_th2s_settitle
-
-instance ITNamed TH2Poly where
-  setTitle = xform1 c_th2poly_settitle
-
-instance ITNamed TH2I where
-  setTitle = xform1 c_th2i_settitle
-
-instance ITNamed TH2F where
-  setTitle = xform1 c_th2f_settitle
-
-instance ITNamed TH2D where
-  setTitle = xform1 c_th2d_settitle
-
-instance ITNamed TH2C where
-  setTitle = xform1 c_th2c_settitle
-
-instance ITNamed TH1S where
-  setTitle = xform1 c_th1s_settitle
-
-instance ITNamed TH1I where
-  setTitle = xform1 c_th1i_settitle
-
-instance ITNamed TH1F where
-  setTitle = xform1 c_th1f_settitle
-
-instance ITNamed TH1D where
-  setTitle = xform1 c_th1d_settitle
-
-instance ITNamed TH1C where
-  setTitle = xform1 c_th1c_settitle
-
-instance ITNamed TH3 where
-  setTitle = xform1 c_th3_settitle
-
-instance ITNamed TH2 where
-  setTitle = xform1 c_th2_settitle
-
-instance ITNamed TH1 where
-  setTitle = xform1 c_th1_settitle
-
-instance ITNamed TBranch where
-  setTitle = xform1 c_tbranch_settitle
-
-instance ITNamed TFile where
-  setTitle = xform1 c_tfile_settitle
-
-instance ITNamed TDirectoryFile where
-  setTitle = xform1 c_tdirectoryfile_settitle
-
-instance ITNamed TDirectory where
-  setTitle = xform1 c_tdirectory_settitle
-
-instance ITNamed TText where
-  setTitle = xform1 c_ttext_settitle
-
-instance ITNamed TLatex where
-  setTitle = xform1 c_tlatex_settitle
-
-instance ITNamed TAxis where
-  setTitle = xform1 c_taxis_settitle
-
-instance ITNamed TEfficiency where
-  setTitle = xform1 c_tefficiency_settitle
-
-instance ITNamed TTreeSQL where
-  setTitle = xform1 c_ttreesql_settitle
-
-instance ITNamed TNtupleD where
-  setTitle = xform1 c_tntupled_settitle
-
-instance ITNamed TNtuple where
-  setTitle = xform1 c_tntuple_settitle
-
-instance ITNamed TChain where
-  setTitle = xform1 c_tchain_settitle
-
-instance ITNamed TTree where
-  setTitle = xform1 c_ttree_settitle
-
-instance ITNamed TXTRU where
-  setTitle = xform1 c_txtru_settitle
-
-instance ITNamed TSPHE where
-  setTitle = xform1 c_tsphe_settitle
-
-instance ITNamed TPCON where
-  setTitle = xform1 c_tpcon_settitle
-
-instance ITNamed TTUBE where
-  setTitle = xform1 c_ttube_settitle
-
-instance ITNamed TBRIK where
-  setTitle = xform1 c_tbrik_settitle
-
-instance ITNamed TShape where
-  setTitle = xform1 c_tshape_settitle
-
-instance ITNamed TGraphQQ where
-  setTitle = xform1 c_tgraphqq_settitle
-
-instance ITNamed TGraphPolar where
-  setTitle = xform1 c_tgraphpolar_settitle
-
-instance ITNamed TGraphErrors where
-  setTitle = xform1 c_tgrapherrors_settitle
-
-instance ITNamed TGraphBentErrors where
-  setTitle = xform1 c_tgraphbenterrors_settitle
-
-instance ITNamed TCutG where
-  setTitle = xform1 c_tcutg_settitle
-
-instance ITNamed TGraphAsymmErrors where
-  setTitle = xform1 c_tgraphasymmerrors_settitle
-
-instance ITNamed TGraph where
-  setTitle = xform1 c_tgraph_settitle
-
-instance ITNamed TF1 where
-  setTitle = xform1 c_tf1_settitle
-
-instance ITNamed THStack where
-  setTitle = xform1 c_thstack_settitle
-
-instance ITNamed TAttParticle where
-  setTitle = xform1 c_tattparticle_settitle
-
-instance ITNamed TFormula where
-  setTitle = xform1 c_tformula_settitle
-
-instance ITNamed TClass where
-  setTitle = xform1 c_tclass_settitle
-
-
-
-instance ITObject TKey where
-  getName = xform0 c_tkey_getname
-  draw = xform1 c_tkey_draw
-  findObject = xform1 c_tkey_findobject
-  saveAs = xform2 c_tkey_saveas
-  write = xform3 c_tkey_write
-  isA = xform0 c_tkey_isa
-  printObj = xform1 c_tkey_printobj
-
-instance ITObject TList where
-  getName = xform0 c_tlist_getname
-  draw = xform1 c_tlist_draw
-  findObject = xform1 c_tlist_findobject
-  saveAs = xform2 c_tlist_saveas
-  write = xform3 c_tlist_write
-  isA = xform0 c_tlist_isa
-  printObj = xform1 c_tlist_printobj
-
-instance ITObject TObjArray where
-  getName = xform0 c_tobjarray_getname
-  draw = xform1 c_tobjarray_draw
-  findObject = xform1 c_tobjarray_findobject
-  saveAs = xform2 c_tobjarray_saveas
-  write = xform3 c_tobjarray_write
-  isA = xform0 c_tobjarray_isa
-  printObj = xform1 c_tobjarray_printobj
-
-instance ITObject TSeqCollection where
-  getName = xform0 c_tseqcollection_getname
-  draw = xform1 c_tseqcollection_draw
-  findObject = xform1 c_tseqcollection_findobject
-  saveAs = xform2 c_tseqcollection_saveas
-  write = xform3 c_tseqcollection_write
-  isA = xform0 c_tseqcollection_isa
-  printObj = xform1 c_tseqcollection_printobj
-
-instance ITObject TCollection where
-  getName = xform0 c_tcollection_getname
-  draw = xform1 c_tcollection_draw
-  findObject = xform1 c_tcollection_findobject
-  saveAs = xform2 c_tcollection_saveas
-  write = xform3 c_tcollection_write
-  isA = xform0 c_tcollection_isa
-  printObj = xform1 c_tcollection_printobj
-
-instance ITObject TRandom where
-  getName = xform0 c_trandom_getname
-  draw = xform1 c_trandom_draw
-  findObject = xform1 c_trandom_findobject
-  saveAs = xform2 c_trandom_saveas
-  write = xform3 c_trandom_write
-  isA = xform0 c_trandom_isa
-  printObj = xform1 c_trandom_printobj
-
-instance ITObject TRint where
-  getName = xform0 c_trint_getname
-  draw = xform1 c_trint_draw
-  findObject = xform1 c_trint_findobject
-  saveAs = xform2 c_trint_saveas
-  write = xform3 c_trint_write
-  isA = xform0 c_trint_isa
-  printObj = xform1 c_trint_printobj
-
-instance ITObject TApplication where
-  getName = xform0 c_tapplication_getname
-  draw = xform1 c_tapplication_draw
-  findObject = xform1 c_tapplication_findobject
-  saveAs = xform2 c_tapplication_saveas
-  write = xform3 c_tapplication_write
-  isA = xform0 c_tapplication_isa
-  printObj = xform1 c_tapplication_printobj
-
-instance ITObject TSlider where
-  getName = xform0 c_tslider_getname
-  draw = xform1 c_tslider_draw
-  findObject = xform1 c_tslider_findobject
-  saveAs = xform2 c_tslider_saveas
-  write = xform3 c_tslider_write
-  isA = xform0 c_tslider_isa
-  printObj = xform1 c_tslider_printobj
-
-instance ITObject TEvePad where
-  getName = xform0 c_tevepad_getname
-  draw = xform1 c_tevepad_draw
-  findObject = xform1 c_tevepad_findobject
-  saveAs = xform2 c_tevepad_saveas
-  write = xform3 c_tevepad_write
-  isA = xform0 c_tevepad_isa
-  printObj = xform1 c_tevepad_printobj
-
-instance ITObject TInspectCanvas where
-  getName = xform0 c_tinspectcanvas_getname
-  draw = xform1 c_tinspectcanvas_draw
-  findObject = xform1 c_tinspectcanvas_findobject
-  saveAs = xform2 c_tinspectcanvas_saveas
-  write = xform3 c_tinspectcanvas_write
-  isA = xform0 c_tinspectcanvas_isa
-  printObj = xform1 c_tinspectcanvas_printobj
-
-instance ITObject TDialogCanvas where
-  getName = xform0 c_tdialogcanvas_getname
-  draw = xform1 c_tdialogcanvas_draw
-  findObject = xform1 c_tdialogcanvas_findobject
-  saveAs = xform2 c_tdialogcanvas_saveas
-  write = xform3 c_tdialogcanvas_write
-  isA = xform0 c_tdialogcanvas_isa
-  printObj = xform1 c_tdialogcanvas_printobj
-
-instance ITObject TCanvas where
-  getName = xform0 c_tcanvas_getname
-  draw = xform1 c_tcanvas_draw
-  findObject = xform1 c_tcanvas_findobject
-  saveAs = xform2 c_tcanvas_saveas
-  write = xform3 c_tcanvas_write
-  isA = xform0 c_tcanvas_isa
-  printObj = xform1 c_tcanvas_printobj
-
-instance ITObject TGroupButton where
-  getName = xform0 c_tgroupbutton_getname
-  draw = xform1 c_tgroupbutton_draw
-  findObject = xform1 c_tgroupbutton_findobject
-  saveAs = xform2 c_tgroupbutton_saveas
-  write = xform3 c_tgroupbutton_write
-  isA = xform0 c_tgroupbutton_isa
-  printObj = xform1 c_tgroupbutton_printobj
-
-instance ITObject TButton where
-  getName = xform0 c_tbutton_getname
-  draw = xform1 c_tbutton_draw
-  findObject = xform1 c_tbutton_findobject
-  saveAs = xform2 c_tbutton_saveas
-  write = xform3 c_tbutton_write
-  isA = xform0 c_tbutton_isa
-  printObj = xform1 c_tbutton_printobj
-
-instance ITObject TPad where
-  getName = xform0 c_tpad_getname
-  draw = xform1 c_tpad_draw
-  findObject = xform1 c_tpad_findobject
-  saveAs = xform2 c_tpad_saveas
-  write = xform3 c_tpad_write
-  isA = xform0 c_tpad_isa
-  printObj = xform1 c_tpad_printobj
-
-instance ITObject TVirtualPad where
-  getName = xform0 c_tvirtualpad_getname
-  draw = xform1 c_tvirtualpad_draw
-  findObject = xform1 c_tvirtualpad_findobject
-  saveAs = xform2 c_tvirtualpad_saveas
-  write = xform3 c_tvirtualpad_write
-  isA = xform0 c_tvirtualpad_isa
-  printObj = xform1 c_tvirtualpad_printobj
-
-instance ITObject TH3S where
-  getName = xform0 c_th3s_getname
-  draw = xform1 c_th3s_draw
-  findObject = xform1 c_th3s_findobject
-  saveAs = xform2 c_th3s_saveas
-  write = xform3 c_th3s_write
-  isA = xform0 c_th3s_isa
-  printObj = xform1 c_th3s_printobj
-
-instance ITObject TH3I where
-  getName = xform0 c_th3i_getname
-  draw = xform1 c_th3i_draw
-  findObject = xform1 c_th3i_findobject
-  saveAs = xform2 c_th3i_saveas
-  write = xform3 c_th3i_write
-  isA = xform0 c_th3i_isa
-  printObj = xform1 c_th3i_printobj
-
-instance ITObject TH3F where
-  getName = xform0 c_th3f_getname
-  draw = xform1 c_th3f_draw
-  findObject = xform1 c_th3f_findobject
-  saveAs = xform2 c_th3f_saveas
-  write = xform3 c_th3f_write
-  isA = xform0 c_th3f_isa
-  printObj = xform1 c_th3f_printobj
-
-instance ITObject TH3D where
-  getName = xform0 c_th3d_getname
-  draw = xform1 c_th3d_draw
-  findObject = xform1 c_th3d_findobject
-  saveAs = xform2 c_th3d_saveas
-  write = xform3 c_th3d_write
-  isA = xform0 c_th3d_isa
-  printObj = xform1 c_th3d_printobj
-
-instance ITObject TH3C where
-  getName = xform0 c_th3c_getname
-  draw = xform1 c_th3c_draw
-  findObject = xform1 c_th3c_findobject
-  saveAs = xform2 c_th3c_saveas
-  write = xform3 c_th3c_write
-  isA = xform0 c_th3c_isa
-  printObj = xform1 c_th3c_printobj
-
-instance ITObject TH2S where
-  getName = xform0 c_th2s_getname
-  draw = xform1 c_th2s_draw
-  findObject = xform1 c_th2s_findobject
-  saveAs = xform2 c_th2s_saveas
-  write = xform3 c_th2s_write
-  isA = xform0 c_th2s_isa
-  printObj = xform1 c_th2s_printobj
-
-instance ITObject TH2Poly where
-  getName = xform0 c_th2poly_getname
-  draw = xform1 c_th2poly_draw
-  findObject = xform1 c_th2poly_findobject
-  saveAs = xform2 c_th2poly_saveas
-  write = xform3 c_th2poly_write
-  isA = xform0 c_th2poly_isa
-  printObj = xform1 c_th2poly_printobj
-
-instance ITObject TH2I where
-  getName = xform0 c_th2i_getname
-  draw = xform1 c_th2i_draw
-  findObject = xform1 c_th2i_findobject
-  saveAs = xform2 c_th2i_saveas
-  write = xform3 c_th2i_write
-  isA = xform0 c_th2i_isa
-  printObj = xform1 c_th2i_printobj
-
-instance ITObject TH2F where
-  getName = xform0 c_th2f_getname
-  draw = xform1 c_th2f_draw
-  findObject = xform1 c_th2f_findobject
-  saveAs = xform2 c_th2f_saveas
-  write = xform3 c_th2f_write
-  isA = xform0 c_th2f_isa
-  printObj = xform1 c_th2f_printobj
-
-instance ITObject TH2D where
-  getName = xform0 c_th2d_getname
-  draw = xform1 c_th2d_draw
-  findObject = xform1 c_th2d_findobject
-  saveAs = xform2 c_th2d_saveas
-  write = xform3 c_th2d_write
-  isA = xform0 c_th2d_isa
-  printObj = xform1 c_th2d_printobj
-
-instance ITObject TH2C where
-  getName = xform0 c_th2c_getname
-  draw = xform1 c_th2c_draw
-  findObject = xform1 c_th2c_findobject
-  saveAs = xform2 c_th2c_saveas
-  write = xform3 c_th2c_write
-  isA = xform0 c_th2c_isa
-  printObj = xform1 c_th2c_printobj
-
-instance ITObject TH1S where
-  getName = xform0 c_th1s_getname
-  draw = xform1 c_th1s_draw
-  findObject = xform1 c_th1s_findobject
-  saveAs = xform2 c_th1s_saveas
-  write = xform3 c_th1s_write
-  isA = xform0 c_th1s_isa
-  printObj = xform1 c_th1s_printobj
-
-instance ITObject TH1I where
-  getName = xform0 c_th1i_getname
-  draw = xform1 c_th1i_draw
-  findObject = xform1 c_th1i_findobject
-  saveAs = xform2 c_th1i_saveas
-  write = xform3 c_th1i_write
-  isA = xform0 c_th1i_isa
-  printObj = xform1 c_th1i_printobj
-
-instance ITObject TH1F where
-  getName = xform0 c_th1f_getname
-  draw = xform1 c_th1f_draw
-  findObject = xform1 c_th1f_findobject
-  saveAs = xform2 c_th1f_saveas
-  write = xform3 c_th1f_write
-  isA = xform0 c_th1f_isa
-  printObj = xform1 c_th1f_printobj
-
-instance ITObject TH1D where
-  getName = xform0 c_th1d_getname
-  draw = xform1 c_th1d_draw
-  findObject = xform1 c_th1d_findobject
-  saveAs = xform2 c_th1d_saveas
-  write = xform3 c_th1d_write
-  isA = xform0 c_th1d_isa
-  printObj = xform1 c_th1d_printobj
-
-instance ITObject TH1C where
-  getName = xform0 c_th1c_getname
-  draw = xform1 c_th1c_draw
-  findObject = xform1 c_th1c_findobject
-  saveAs = xform2 c_th1c_saveas
-  write = xform3 c_th1c_write
-  isA = xform0 c_th1c_isa
-  printObj = xform1 c_th1c_printobj
-
-instance ITObject TH3 where
-  getName = xform0 c_th3_getname
-  draw = xform1 c_th3_draw
-  findObject = xform1 c_th3_findobject
-  saveAs = xform2 c_th3_saveas
-  write = xform3 c_th3_write
-  isA = xform0 c_th3_isa
-  printObj = xform1 c_th3_printobj
-
-instance ITObject TH2 where
-  getName = xform0 c_th2_getname
-  draw = xform1 c_th2_draw
-  findObject = xform1 c_th2_findobject
-  saveAs = xform2 c_th2_saveas
-  write = xform3 c_th2_write
-  isA = xform0 c_th2_isa
-  printObj = xform1 c_th2_printobj
-
-instance ITObject TH1 where
-  getName = xform0 c_th1_getname
-  draw = xform1 c_th1_draw
-  findObject = xform1 c_th1_findobject
-  saveAs = xform2 c_th1_saveas
-  write = xform3 c_th1_write
-  isA = xform0 c_th1_isa
-  printObj = xform1 c_th1_printobj
-
-instance ITObject TTreePlayer where
-  getName = xform0 c_ttreeplayer_getname
-  draw = xform1 c_ttreeplayer_draw
-  findObject = xform1 c_ttreeplayer_findobject
-  saveAs = xform2 c_ttreeplayer_saveas
-  write = xform3 c_ttreeplayer_write
-  isA = xform0 c_ttreeplayer_isa
-  printObj = xform1 c_ttreeplayer_printobj
-
-instance ITObject TVirtualTreePlayer where
-  getName = xform0 c_tvirtualtreeplayer_getname
-  draw = xform1 c_tvirtualtreeplayer_draw
-  findObject = xform1 c_tvirtualtreeplayer_findobject
-  saveAs = xform2 c_tvirtualtreeplayer_saveas
-  write = xform3 c_tvirtualtreeplayer_write
-  isA = xform0 c_tvirtualtreeplayer_isa
-  printObj = xform1 c_tvirtualtreeplayer_printobj
-
-instance ITObject TBranch where
-  getName = xform0 c_tbranch_getname
-  draw = xform1 c_tbranch_draw
-  findObject = xform1 c_tbranch_findobject
-  saveAs = xform2 c_tbranch_saveas
-  write = xform3 c_tbranch_write
-  isA = xform0 c_tbranch_isa
-  printObj = xform1 c_tbranch_printobj
-
-instance ITObject TFile where
-  getName = xform0 c_tfile_getname
-  draw = xform1 c_tfile_draw
-  findObject = xform1 c_tfile_findobject
-  saveAs = xform2 c_tfile_saveas
-  write = xform3 c_tfile_write
-  isA = xform0 c_tfile_isa
-  printObj = xform1 c_tfile_printobj
-
-instance ITObject TDirectoryFile where
-  getName = xform0 c_tdirectoryfile_getname
-  draw = xform1 c_tdirectoryfile_draw
-  findObject = xform1 c_tdirectoryfile_findobject
-  saveAs = xform2 c_tdirectoryfile_saveas
-  write = xform3 c_tdirectoryfile_write
-  isA = xform0 c_tdirectoryfile_isa
-  printObj = xform1 c_tdirectoryfile_printobj
-
-instance ITObject TDirectory where
-  getName = xform0 c_tdirectory_getname
-  draw = xform1 c_tdirectory_draw
-  findObject = xform1 c_tdirectory_findobject
-  saveAs = xform2 c_tdirectory_saveas
-  write = xform3 c_tdirectory_write
-  isA = xform0 c_tdirectory_isa
-  printObj = xform1 c_tdirectory_printobj
-
-instance ITObject TText where
-  getName = xform0 c_ttext_getname
-  draw = xform1 c_ttext_draw
-  findObject = xform1 c_ttext_findobject
-  saveAs = xform2 c_ttext_saveas
-  write = xform3 c_ttext_write
-  isA = xform0 c_ttext_isa
-  printObj = xform1 c_ttext_printobj
-
-instance ITObject TLatex where
-  getName = xform0 c_tlatex_getname
-  draw = xform1 c_tlatex_draw
-  findObject = xform1 c_tlatex_findobject
-  saveAs = xform2 c_tlatex_saveas
-  write = xform3 c_tlatex_write
-  isA = xform0 c_tlatex_isa
-  printObj = xform1 c_tlatex_printobj
-
-instance ITObject TAxis where
-  getName = xform0 c_taxis_getname
-  draw = xform1 c_taxis_draw
-  findObject = xform1 c_taxis_findobject
-  saveAs = xform2 c_taxis_saveas
-  write = xform3 c_taxis_write
-  isA = xform0 c_taxis_isa
-  printObj = xform1 c_taxis_printobj
-
-instance ITObject TEfficiency where
-  getName = xform0 c_tefficiency_getname
-  draw = xform1 c_tefficiency_draw
-  findObject = xform1 c_tefficiency_findobject
-  saveAs = xform2 c_tefficiency_saveas
-  write = xform3 c_tefficiency_write
-  isA = xform0 c_tefficiency_isa
-  printObj = xform1 c_tefficiency_printobj
-
-instance ITObject TCurlyArc where
-  getName = xform0 c_tcurlyarc_getname
-  draw = xform1 c_tcurlyarc_draw
-  findObject = xform1 c_tcurlyarc_findobject
-  saveAs = xform2 c_tcurlyarc_saveas
-  write = xform3 c_tcurlyarc_write
-  isA = xform0 c_tcurlyarc_isa
-  printObj = xform1 c_tcurlyarc_printobj
-
-instance ITObject TCurlyLine where
-  getName = xform0 c_tcurlyline_getname
-  draw = xform1 c_tcurlyline_draw
-  findObject = xform1 c_tcurlyline_findobject
-  saveAs = xform2 c_tcurlyline_saveas
-  write = xform3 c_tcurlyline_write
-  isA = xform0 c_tcurlyline_isa
-  printObj = xform1 c_tcurlyline_printobj
-
-instance ITObject TPolyLine where
-  getName = xform0 c_tpolyline_getname
-  draw = xform1 c_tpolyline_draw
-  findObject = xform1 c_tpolyline_findobject
-  saveAs = xform2 c_tpolyline_saveas
-  write = xform3 c_tpolyline_write
-  isA = xform0 c_tpolyline_isa
-  printObj = xform1 c_tpolyline_printobj
-
-instance ITObject TTreeSQL where
-  getName = xform0 c_ttreesql_getname
-  draw = xform1 c_ttreesql_draw
-  findObject = xform1 c_ttreesql_findobject
-  saveAs = xform2 c_ttreesql_saveas
-  write = xform3 c_ttreesql_write
-  isA = xform0 c_ttreesql_isa
-  printObj = xform1 c_ttreesql_printobj
-
-instance ITObject TNtupleD where
-  getName = xform0 c_tntupled_getname
-  draw = xform1 c_tntupled_draw
-  findObject = xform1 c_tntupled_findobject
-  saveAs = xform2 c_tntupled_saveas
-  write = xform3 c_tntupled_write
-  isA = xform0 c_tntupled_isa
-  printObj = xform1 c_tntupled_printobj
-
-instance ITObject TNtuple where
-  getName = xform0 c_tntuple_getname
-  draw = xform1 c_tntuple_draw
-  findObject = xform1 c_tntuple_findobject
-  saveAs = xform2 c_tntuple_saveas
-  write = xform3 c_tntuple_write
-  isA = xform0 c_tntuple_isa
-  printObj = xform1 c_tntuple_printobj
-
-instance ITObject TChain where
-  getName = xform0 c_tchain_getname
-  draw = xform1 c_tchain_draw
-  findObject = xform1 c_tchain_findobject
-  saveAs = xform2 c_tchain_saveas
-  write = xform3 c_tchain_write
-  isA = xform0 c_tchain_isa
-  printObj = xform1 c_tchain_printobj
-
-instance ITObject TTree where
-  getName = xform0 c_ttree_getname
-  draw = xform1 c_ttree_draw
-  findObject = xform1 c_ttree_findobject
-  saveAs = xform2 c_ttree_saveas
-  write = xform3 c_ttree_write
-  isA = xform0 c_ttree_isa
-  printObj = xform1 c_ttree_printobj
-
-instance ITObject TSliderBox where
-  getName = xform0 c_tsliderbox_getname
-  draw = xform1 c_tsliderbox_draw
-  findObject = xform1 c_tsliderbox_findobject
-  saveAs = xform2 c_tsliderbox_saveas
-  write = xform3 c_tsliderbox_write
-  isA = xform0 c_tsliderbox_isa
-  printObj = xform1 c_tsliderbox_printobj
-
-instance ITObject TFrame where
-  getName = xform0 c_tframe_getname
-  draw = xform1 c_tframe_draw
-  findObject = xform1 c_tframe_findobject
-  saveAs = xform2 c_tframe_saveas
-  write = xform3 c_tframe_write
-  isA = xform0 c_tframe_isa
-  printObj = xform1 c_tframe_printobj
-
-instance ITObject TWbox where
-  getName = xform0 c_twbox_getname
-  draw = xform1 c_twbox_draw
-  findObject = xform1 c_twbox_findobject
-  saveAs = xform2 c_twbox_saveas
-  write = xform3 c_twbox_write
-  isA = xform0 c_twbox_isa
-  printObj = xform1 c_twbox_printobj
-
-instance ITObject TPaveClass where
-  getName = xform0 c_tpaveclass_getname
-  draw = xform1 c_tpaveclass_draw
-  findObject = xform1 c_tpaveclass_findobject
-  saveAs = xform2 c_tpaveclass_saveas
-  write = xform3 c_tpaveclass_write
-  isA = xform0 c_tpaveclass_isa
-  printObj = xform1 c_tpaveclass_printobj
-
-instance ITObject TPaveLabel where
-  getName = xform0 c_tpavelabel_getname
-  draw = xform1 c_tpavelabel_draw
-  findObject = xform1 c_tpavelabel_findobject
-  saveAs = xform2 c_tpavelabel_saveas
-  write = xform3 c_tpavelabel_write
-  isA = xform0 c_tpavelabel_isa
-  printObj = xform1 c_tpavelabel_printobj
-
-instance ITObject TLegendEntry where
-  getName = xform0 c_tlegendentry_getname
-  draw = xform1 c_tlegendentry_draw
-  findObject = xform1 c_tlegendentry_findobject
-  saveAs = xform2 c_tlegendentry_saveas
-  write = xform3 c_tlegendentry_write
-  isA = xform0 c_tlegendentry_isa
-  printObj = xform1 c_tlegendentry_printobj
-
-instance ITObject TLegend where
-  getName = xform0 c_tlegend_getname
-  draw = xform1 c_tlegend_draw
-  findObject = xform1 c_tlegend_findobject
-  saveAs = xform2 c_tlegend_saveas
-  write = xform3 c_tlegend_write
-  isA = xform0 c_tlegend_isa
-  printObj = xform1 c_tlegend_printobj
-
-instance ITObject TPavesText where
-  getName = xform0 c_tpavestext_getname
-  draw = xform1 c_tpavestext_draw
-  findObject = xform1 c_tpavestext_findobject
-  saveAs = xform2 c_tpavestext_saveas
-  write = xform3 c_tpavestext_write
-  isA = xform0 c_tpavestext_isa
-  printObj = xform1 c_tpavestext_printobj
-
-instance ITObject TPaveStats where
-  getName = xform0 c_tpavestats_getname
-  draw = xform1 c_tpavestats_draw
-  findObject = xform1 c_tpavestats_findobject
-  saveAs = xform2 c_tpavestats_saveas
-  write = xform3 c_tpavestats_write
-  isA = xform0 c_tpavestats_isa
-  printObj = xform1 c_tpavestats_printobj
-
-instance ITObject TDiamond where
-  getName = xform0 c_tdiamond_getname
-  draw = xform1 c_tdiamond_draw
-  findObject = xform1 c_tdiamond_findobject
-  saveAs = xform2 c_tdiamond_saveas
-  write = xform3 c_tdiamond_write
-  isA = xform0 c_tdiamond_isa
-  printObj = xform1 c_tdiamond_printobj
-
-instance ITObject TPaveText where
-  getName = xform0 c_tpavetext_getname
-  draw = xform1 c_tpavetext_draw
-  findObject = xform1 c_tpavetext_findobject
-  saveAs = xform2 c_tpavetext_saveas
-  write = xform3 c_tpavetext_write
-  isA = xform0 c_tpavetext_isa
-  printObj = xform1 c_tpavetext_printobj
-
-instance ITObject TPave where
-  getName = xform0 c_tpave_getname
-  draw = xform1 c_tpave_draw
-  findObject = xform1 c_tpave_findobject
-  saveAs = xform2 c_tpave_saveas
-  write = xform3 c_tpave_write
-  isA = xform0 c_tpave_isa
-  printObj = xform1 c_tpave_printobj
-
-instance ITObject TBox where
-  getName = xform0 c_tbox_getname
-  draw = xform1 c_tbox_draw
-  findObject = xform1 c_tbox_findobject
-  saveAs = xform2 c_tbox_saveas
-  write = xform3 c_tbox_write
-  isA = xform0 c_tbox_isa
-  printObj = xform1 c_tbox_printobj
-
-instance ITObject TXTRU where
-  getName = xform0 c_txtru_getname
-  draw = xform1 c_txtru_draw
-  findObject = xform1 c_txtru_findobject
-  saveAs = xform2 c_txtru_saveas
-  write = xform3 c_txtru_write
-  isA = xform0 c_txtru_isa
-  printObj = xform1 c_txtru_printobj
-
-instance ITObject TSPHE where
-  getName = xform0 c_tsphe_getname
-  draw = xform1 c_tsphe_draw
-  findObject = xform1 c_tsphe_findobject
-  saveAs = xform2 c_tsphe_saveas
-  write = xform3 c_tsphe_write
-  isA = xform0 c_tsphe_isa
-  printObj = xform1 c_tsphe_printobj
-
-instance ITObject TPCON where
-  getName = xform0 c_tpcon_getname
-  draw = xform1 c_tpcon_draw
-  findObject = xform1 c_tpcon_findobject
-  saveAs = xform2 c_tpcon_saveas
-  write = xform3 c_tpcon_write
-  isA = xform0 c_tpcon_isa
-  printObj = xform1 c_tpcon_printobj
-
-instance ITObject TTUBE where
-  getName = xform0 c_ttube_getname
-  draw = xform1 c_ttube_draw
-  findObject = xform1 c_ttube_findobject
-  saveAs = xform2 c_ttube_saveas
-  write = xform3 c_ttube_write
-  isA = xform0 c_ttube_isa
-  printObj = xform1 c_ttube_printobj
-
-instance ITObject TBRIK where
-  getName = xform0 c_tbrik_getname
-  draw = xform1 c_tbrik_draw
-  findObject = xform1 c_tbrik_findobject
-  saveAs = xform2 c_tbrik_saveas
-  write = xform3 c_tbrik_write
-  isA = xform0 c_tbrik_isa
-  printObj = xform1 c_tbrik_printobj
-
-instance ITObject TShape where
-  getName = xform0 c_tshape_getname
-  draw = xform1 c_tshape_draw
-  findObject = xform1 c_tshape_findobject
-  saveAs = xform2 c_tshape_saveas
-  write = xform3 c_tshape_write
-  isA = xform0 c_tshape_isa
-  printObj = xform1 c_tshape_printobj
-
-instance ITObject TGaxis where
-  getName = xform0 c_tgaxis_getname
-  draw = xform1 c_tgaxis_draw
-  findObject = xform1 c_tgaxis_findobject
-  saveAs = xform2 c_tgaxis_saveas
-  write = xform3 c_tgaxis_write
-  isA = xform0 c_tgaxis_isa
-  printObj = xform1 c_tgaxis_printobj
-
-instance ITObject TArrow where
-  getName = xform0 c_tarrow_getname
-  draw = xform1 c_tarrow_draw
-  findObject = xform1 c_tarrow_findobject
-  saveAs = xform2 c_tarrow_saveas
-  write = xform3 c_tarrow_write
-  isA = xform0 c_tarrow_isa
-  printObj = xform1 c_tarrow_printobj
-
-instance ITObject TLine where
-  getName = xform0 c_tline_getname
-  draw = xform1 c_tline_draw
-  findObject = xform1 c_tline_findobject
-  saveAs = xform2 c_tline_saveas
-  write = xform3 c_tline_write
-  isA = xform0 c_tline_isa
-  printObj = xform1 c_tline_printobj
-
-instance ITObject TCrown where
-  getName = xform0 c_tcrown_getname
-  draw = xform1 c_tcrown_draw
-  findObject = xform1 c_tcrown_findobject
-  saveAs = xform2 c_tcrown_saveas
-  write = xform3 c_tcrown_write
-  isA = xform0 c_tcrown_isa
-  printObj = xform1 c_tcrown_printobj
-
-instance ITObject TArc where
-  getName = xform0 c_tarc_getname
-  draw = xform1 c_tarc_draw
-  findObject = xform1 c_tarc_findobject
-  saveAs = xform2 c_tarc_saveas
-  write = xform3 c_tarc_write
-  isA = xform0 c_tarc_isa
-  printObj = xform1 c_tarc_printobj
-
-instance ITObject TEllipse where
-  getName = xform0 c_tellipse_getname
-  draw = xform1 c_tellipse_draw
-  findObject = xform1 c_tellipse_findobject
-  saveAs = xform2 c_tellipse_saveas
-  write = xform3 c_tellipse_write
-  isA = xform0 c_tellipse_isa
-  printObj = xform1 c_tellipse_printobj
-
-instance ITObject TGraphQQ where
-  getName = xform0 c_tgraphqq_getname
-  draw = xform1 c_tgraphqq_draw
-  findObject = xform1 c_tgraphqq_findobject
-  saveAs = xform2 c_tgraphqq_saveas
-  write = xform3 c_tgraphqq_write
-  isA = xform0 c_tgraphqq_isa
-  printObj = xform1 c_tgraphqq_printobj
-
-instance ITObject TGraphPolar where
-  getName = xform0 c_tgraphpolar_getname
-  draw = xform1 c_tgraphpolar_draw
-  findObject = xform1 c_tgraphpolar_findobject
-  saveAs = xform2 c_tgraphpolar_saveas
-  write = xform3 c_tgraphpolar_write
-  isA = xform0 c_tgraphpolar_isa
-  printObj = xform1 c_tgraphpolar_printobj
-
-instance ITObject TGraphErrors where
-  getName = xform0 c_tgrapherrors_getname
-  draw = xform1 c_tgrapherrors_draw
-  findObject = xform1 c_tgrapherrors_findobject
-  saveAs = xform2 c_tgrapherrors_saveas
-  write = xform3 c_tgrapherrors_write
-  isA = xform0 c_tgrapherrors_isa
-  printObj = xform1 c_tgrapherrors_printobj
-
-instance ITObject TGraphBentErrors where
-  getName = xform0 c_tgraphbenterrors_getname
-  draw = xform1 c_tgraphbenterrors_draw
-  findObject = xform1 c_tgraphbenterrors_findobject
-  saveAs = xform2 c_tgraphbenterrors_saveas
-  write = xform3 c_tgraphbenterrors_write
-  isA = xform0 c_tgraphbenterrors_isa
-  printObj = xform1 c_tgraphbenterrors_printobj
-
-instance ITObject TCutG where
-  getName = xform0 c_tcutg_getname
-  draw = xform1 c_tcutg_draw
-  findObject = xform1 c_tcutg_findobject
-  saveAs = xform2 c_tcutg_saveas
-  write = xform3 c_tcutg_write
-  isA = xform0 c_tcutg_isa
-  printObj = xform1 c_tcutg_printobj
-
-instance ITObject TGraphAsymmErrors where
-  getName = xform0 c_tgraphasymmerrors_getname
-  draw = xform1 c_tgraphasymmerrors_draw
-  findObject = xform1 c_tgraphasymmerrors_findobject
-  saveAs = xform2 c_tgraphasymmerrors_saveas
-  write = xform3 c_tgraphasymmerrors_write
-  isA = xform0 c_tgraphasymmerrors_isa
-  printObj = xform1 c_tgraphasymmerrors_printobj
-
-instance ITObject TGraph where
-  getName = xform0 c_tgraph_getname
-  draw = xform1 c_tgraph_draw
-  findObject = xform1 c_tgraph_findobject
-  saveAs = xform2 c_tgraph_saveas
-  write = xform3 c_tgraph_write
-  isA = xform0 c_tgraph_isa
-  printObj = xform1 c_tgraph_printobj
-
-instance ITObject TF1 where
-  getName = xform0 c_tf1_getname
-  draw = xform1 c_tf1_draw
-  findObject = xform1 c_tf1_findobject
-  saveAs = xform2 c_tf1_saveas
-  write = xform3 c_tf1_write
-  isA = xform0 c_tf1_isa
-  printObj = xform1 c_tf1_printobj
-
-instance ITObject THStack where
-  getName = xform0 c_thstack_getname
-  draw = xform1 c_thstack_draw
-  findObject = xform1 c_thstack_findobject
-  saveAs = xform2 c_thstack_saveas
-  write = xform3 c_thstack_write
-  isA = xform0 c_thstack_isa
-  printObj = xform1 c_thstack_printobj
-
-instance ITObject TAttParticle where
-  getName = xform0 c_tattparticle_getname
-  draw = xform1 c_tattparticle_draw
-  findObject = xform1 c_tattparticle_findobject
-  saveAs = xform2 c_tattparticle_saveas
-  write = xform3 c_tattparticle_write
-  isA = xform0 c_tattparticle_isa
-  printObj = xform1 c_tattparticle_printobj
-
-instance ITObject TFormula where
-  getName = xform0 c_tformula_getname
-  draw = xform1 c_tformula_draw
-  findObject = xform1 c_tformula_findobject
-  saveAs = xform2 c_tformula_saveas
-  write = xform3 c_tformula_write
-  isA = xform0 c_tformula_isa
-  printObj = xform1 c_tformula_printobj
-
-instance ITObject TClass where
-  getName = xform0 c_tclass_getname
-  draw = xform1 c_tclass_draw
-  findObject = xform1 c_tclass_findobject
-  saveAs = xform2 c_tclass_saveas
-  write = xform3 c_tclass_write
-  isA = xform0 c_tclass_isa
-  printObj = xform1 c_tclass_printobj
-
-
-
-instance ITObject TNamed where
-  getName = xform0 c_tnamed_getname
-  draw = xform1 c_tnamed_draw
-  findObject = xform1 c_tnamed_findobject
-  saveAs = xform2 c_tnamed_saveas
-  write = xform3 c_tnamed_write
-  isA = xform0 c_tnamed_isa
-  printObj = xform1 c_tnamed_printobj
-
-instance ITPad TSlider where
-
-instance ITPad TEvePad where
-
-instance ITPad TInspectCanvas where
-
-instance ITPad TDialogCanvas where
-
-instance ITPad TCanvas where
-
-instance ITPad TGroupButton where
-
-instance ITPad TButton where
-
-instance ITPave TPaveClass where
-
-instance ITPave TPaveLabel where
-
-instance ITPave TLegend where
-
-instance ITPave TPavesText where
-
-instance ITPave TPaveStats where
-
-instance ITPave TDiamond where
-
-instance ITPave TPaveText where
-
-instance ITPaveLabel TPaveClass where
-
-instance ITPaveText TPavesText where
-
-instance ITPaveText TPaveStats where
-
-instance ITPaveText TDiamond where
-
-instance ITPolyLine TCurlyArc where
-
-instance ITPolyLine TCurlyLine where
-
-instance ITQObject TRint where
-
-instance ITQObject TApplication where
-
-instance ITQObject TSlider where
-
-instance ITQObject TEvePad where
-
-instance ITQObject TInspectCanvas where
-
-instance ITQObject TDialogCanvas where
-
-instance ITQObject TCanvas where
-
-instance ITQObject TGroupButton where
-
-instance ITQObject TButton where
-
-instance ITQObject TPad where
-
-instance ITQObject TVirtualPad where
-
-instance ITSeqCollection TList where
-
-instance ITSeqCollection TObjArray where
-
-instance ITShape TXTRU where
-
-instance ITShape TSPHE where
-
-instance ITShape TPCON where
-
-instance ITShape TTUBE where
-
-instance ITShape TBRIK where
-
-instance ITText TLatex where
-
-instance ITTree TTreeSQL where
-
-instance ITTree TNtupleD where
-
-instance ITTree TNtuple where
-
-instance ITTree TChain where
-
-instance ITVirtualPad TSlider where
-  getFrame = xform0 c_tslider_getframe
-  range = xform4 c_tslider_range
-
-instance ITVirtualPad TEvePad where
-  getFrame = xform0 c_tevepad_getframe
-  range = xform4 c_tevepad_range
-
-instance ITVirtualPad TInspectCanvas where
-  getFrame = xform0 c_tinspectcanvas_getframe
-  range = xform4 c_tinspectcanvas_range
-
-instance ITVirtualPad TDialogCanvas where
-  getFrame = xform0 c_tdialogcanvas_getframe
-  range = xform4 c_tdialogcanvas_range
-
-instance ITVirtualPad TCanvas where
-  getFrame = xform0 c_tcanvas_getframe
-  range = xform4 c_tcanvas_range
-
-instance ITVirtualPad TGroupButton where
-  getFrame = xform0 c_tgroupbutton_getframe
-  range = xform4 c_tgroupbutton_range
-
-instance ITVirtualPad TButton where
-  getFrame = xform0 c_tbutton_getframe
-  range = xform4 c_tbutton_range
-
-instance ITVirtualPad TPad where
-  getFrame = xform0 c_tpad_getframe
-  range = xform4 c_tpad_range
-
-instance ITVirtualTreePlayer TTreePlayer where
-
-instance ITWbox TSliderBox where
-  setBorderMode = xform1 c_tsliderbox_setbordermode
-
-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
-
-
-newTH1D :: String -> String -> Int -> Double -> Double -> IO TH1D
-newTH1D = xform4 c_th1d_newth1d
-
-
-newTH1F :: String -> String -> Int -> Double -> Double -> IO TH1F
-newTH1F = xform4 c_th1f_newth1f
-
-
-newTH2D :: String -> String -> Int -> Double -> Double -> Int -> Double -> Double -> IO TH2D
-newTH2D = xform7 c_th2d_newth2d
-
-
-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
-
-
-newTKey :: String -> String -> TClass -> Int -> TDirectory -> IO TKey
-newTKey = xform4 c_tkey_newtkey
-
-
-newTDatime :: Int -> Int -> Int -> Int -> Int -> Int -> IO TDatime
-newTDatime = xform5 c_tdatime_newtdatime
-
-tLatexDrawLatex :: TLatex -> Double -> Double -> String -> IO TLatex
-tLatexDrawLatex = xform3 c_tlatex_tlatexdrawlatex
-
-tH1GetAsymmetry :: TH1 -> TH1 -> Double -> Double -> IO TH1
-tH1GetAsymmetry = xform3 c_th1_th1getasymmetry
-
-tH1GetBufferLength :: TH1 -> IO Int
-tH1GetBufferLength = xform0 c_th1_th1getbufferlength
-
-tH1GetBufferSize :: TH1 -> IO Int
-tH1GetBufferSize = xform0 c_th1_th1getbuffersize
-
-tH1GetDirectory :: TH1 -> IO TDirectory
-tH1GetDirectory = xform0 c_th1_th1getdirectory
-
-tH1GetXaxis :: TH1 -> IO TAxis
-tH1GetXaxis = xform0 c_th1_th1getxaxis
-
-tH1GetYaxis :: TH1 -> IO TAxis
-tH1GetYaxis = xform0 c_th1_th1getyaxis
-
-tH1GetZaxis :: TH1 -> IO TAxis
-tH1GetZaxis = xform0 c_th1_th1getzaxis
+
+
+instance FPtr (Exist TObject) where
+  type Raw (Exist TObject) = RawTObject
+  get_fptr (ETObject obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETObject (cast_fptr_to_obj (fptr :: ForeignPtr RawTObject) :: TObject)
+
+instance FPtr (Exist TNamed) where
+  type Raw (Exist TNamed) = RawTNamed
+  get_fptr (ETNamed obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETNamed (cast_fptr_to_obj (fptr :: ForeignPtr RawTNamed) :: TNamed)
+
+instance FPtr (Exist TClass) where
+  type Raw (Exist TClass) = RawTClass
+  get_fptr (ETClass obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETClass (cast_fptr_to_obj (fptr :: ForeignPtr RawTClass) :: TClass)
+
+instance FPtr (Exist TFormula) where
+  type Raw (Exist TFormula) = RawTFormula
+  get_fptr (ETFormula obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETFormula (cast_fptr_to_obj (fptr :: ForeignPtr RawTFormula) :: TFormula)
+
+instance FPtr (Exist TAtt3D) where
+  type Raw (Exist TAtt3D) = RawTAtt3D
+  get_fptr (ETAtt3D obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAtt3D (cast_fptr_to_obj (fptr :: ForeignPtr RawTAtt3D) :: TAtt3D)
+
+instance FPtr (Exist TAttAxis) where
+  type Raw (Exist TAttAxis) = RawTAttAxis
+  get_fptr (ETAttAxis obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttAxis (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttAxis) :: TAttAxis)
+
+instance FPtr (Exist TAttBBox) where
+  type Raw (Exist TAttBBox) = RawTAttBBox
+  get_fptr (ETAttBBox obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttBBox (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttBBox) :: TAttBBox)
+
+instance FPtr (Exist TAttCanvas) where
+  type Raw (Exist TAttCanvas) = RawTAttCanvas
+  get_fptr (ETAttCanvas obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttCanvas (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttCanvas) :: TAttCanvas)
+
+instance FPtr (Exist TAttFill) where
+  type Raw (Exist TAttFill) = RawTAttFill
+  get_fptr (ETAttFill obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttFill (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttFill) :: TAttFill)
+
+instance FPtr (Exist TAttImage) where
+  type Raw (Exist TAttImage) = RawTAttImage
+  get_fptr (ETAttImage obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttImage (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttImage) :: TAttImage)
+
+instance FPtr (Exist TAttLine) where
+  type Raw (Exist TAttLine) = RawTAttLine
+  get_fptr (ETAttLine obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttLine (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttLine) :: TAttLine)
+
+instance FPtr (Exist TAttMarker) where
+  type Raw (Exist TAttMarker) = RawTAttMarker
+  get_fptr (ETAttMarker obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttMarker (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttMarker) :: TAttMarker)
+
+instance FPtr (Exist TAttPad) where
+  type Raw (Exist TAttPad) = RawTAttPad
+  get_fptr (ETAttPad obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttPad (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttPad) :: TAttPad)
+
+instance FPtr (Exist TAttParticle) where
+  type Raw (Exist TAttParticle) = RawTAttParticle
+  get_fptr (ETAttParticle obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttParticle (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttParticle) :: TAttParticle)
+
+instance FPtr (Exist TAttText) where
+  type Raw (Exist TAttText) = RawTAttText
+  get_fptr (ETAttText obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAttText (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttText) :: TAttText)
+
+instance FPtr (Exist THStack) where
+  type Raw (Exist THStack) = RawTHStack
+  get_fptr (ETHStack obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETHStack (cast_fptr_to_obj (fptr :: ForeignPtr RawTHStack) :: THStack)
+
+instance FPtr (Exist TF1) where
+  type Raw (Exist TF1) = RawTF1
+  get_fptr (ETF1 obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETF1 (cast_fptr_to_obj (fptr :: ForeignPtr RawTF1) :: TF1)
+
+instance FPtr (Exist TGraph) where
+  type Raw (Exist TGraph) = RawTGraph
+  get_fptr (ETGraph obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETGraph (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraph) :: TGraph)
+
+instance FPtr (Exist TGraphAsymmErrors) where
+  type Raw (Exist TGraphAsymmErrors) = RawTGraphAsymmErrors
+  get_fptr (ETGraphAsymmErrors obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETGraphAsymmErrors (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphAsymmErrors) :: TGraphAsymmErrors)
+
+instance FPtr (Exist TCutG) where
+  type Raw (Exist TCutG) = RawTCutG
+  get_fptr (ETCutG obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETCutG (cast_fptr_to_obj (fptr :: ForeignPtr RawTCutG) :: TCutG)
+
+instance FPtr (Exist TGraphBentErrors) where
+  type Raw (Exist TGraphBentErrors) = RawTGraphBentErrors
+  get_fptr (ETGraphBentErrors obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETGraphBentErrors (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphBentErrors) :: TGraphBentErrors)
+
+instance FPtr (Exist TGraphErrors) where
+  type Raw (Exist TGraphErrors) = RawTGraphErrors
+  get_fptr (ETGraphErrors obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETGraphErrors (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphErrors) :: TGraphErrors)
+
+instance FPtr (Exist TGraphPolar) where
+  type Raw (Exist TGraphPolar) = RawTGraphPolar
+  get_fptr (ETGraphPolar obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETGraphPolar (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphPolar) :: TGraphPolar)
+
+instance FPtr (Exist TGraphQQ) where
+  type Raw (Exist TGraphQQ) = RawTGraphQQ
+  get_fptr (ETGraphQQ obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETGraphQQ (cast_fptr_to_obj (fptr :: ForeignPtr RawTGraphQQ) :: TGraphQQ)
+
+instance FPtr (Exist TEllipse) where
+  type Raw (Exist TEllipse) = RawTEllipse
+  get_fptr (ETEllipse obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETEllipse (cast_fptr_to_obj (fptr :: ForeignPtr RawTEllipse) :: TEllipse)
+
+instance FPtr (Exist TArc) where
+  type Raw (Exist TArc) = RawTArc
+  get_fptr (ETArc obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArc (cast_fptr_to_obj (fptr :: ForeignPtr RawTArc) :: TArc)
+
+instance FPtr (Exist TCrown) where
+  type Raw (Exist TCrown) = RawTCrown
+  get_fptr (ETCrown obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETCrown (cast_fptr_to_obj (fptr :: ForeignPtr RawTCrown) :: TCrown)
+
+instance FPtr (Exist TLine) where
+  type Raw (Exist TLine) = RawTLine
+  get_fptr (ETLine obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETLine (cast_fptr_to_obj (fptr :: ForeignPtr RawTLine) :: TLine)
+
+instance FPtr (Exist TArrow) where
+  type Raw (Exist TArrow) = RawTArrow
+  get_fptr (ETArrow obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArrow (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrow) :: TArrow)
+
+instance FPtr (Exist TGaxis) where
+  type Raw (Exist TGaxis) = RawTGaxis
+  get_fptr (ETGaxis obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETGaxis (cast_fptr_to_obj (fptr :: ForeignPtr RawTGaxis) :: TGaxis)
+
+instance FPtr (Exist TShape) where
+  type Raw (Exist TShape) = RawTShape
+  get_fptr (ETShape obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETShape (cast_fptr_to_obj (fptr :: ForeignPtr RawTShape) :: TShape)
+
+instance FPtr (Exist TBRIK) where
+  type Raw (Exist TBRIK) = RawTBRIK
+  get_fptr (ETBRIK obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETBRIK (cast_fptr_to_obj (fptr :: ForeignPtr RawTBRIK) :: TBRIK)
+
+instance FPtr (Exist TTUBE) where
+  type Raw (Exist TTUBE) = RawTTUBE
+  get_fptr (ETTUBE obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETTUBE (cast_fptr_to_obj (fptr :: ForeignPtr RawTTUBE) :: TTUBE)
+
+instance FPtr (Exist TPCON) where
+  type Raw (Exist TPCON) = RawTPCON
+  get_fptr (ETPCON obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPCON (cast_fptr_to_obj (fptr :: ForeignPtr RawTPCON) :: TPCON)
+
+instance FPtr (Exist TSPHE) where
+  type Raw (Exist TSPHE) = RawTSPHE
+  get_fptr (ETSPHE obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETSPHE (cast_fptr_to_obj (fptr :: ForeignPtr RawTSPHE) :: TSPHE)
+
+instance FPtr (Exist TXTRU) where
+  type Raw (Exist TXTRU) = RawTXTRU
+  get_fptr (ETXTRU obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETXTRU (cast_fptr_to_obj (fptr :: ForeignPtr RawTXTRU) :: TXTRU)
+
+instance FPtr (Exist TBox) where
+  type Raw (Exist TBox) = RawTBox
+  get_fptr (ETBox obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETBox (cast_fptr_to_obj (fptr :: ForeignPtr RawTBox) :: TBox)
+
+instance FPtr (Exist TPave) where
+  type Raw (Exist TPave) = RawTPave
+  get_fptr (ETPave obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPave (cast_fptr_to_obj (fptr :: ForeignPtr RawTPave) :: TPave)
+
+instance FPtr (Exist TPaveText) where
+  type Raw (Exist TPaveText) = RawTPaveText
+  get_fptr (ETPaveText obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPaveText (cast_fptr_to_obj (fptr :: ForeignPtr RawTPaveText) :: TPaveText)
+
+instance FPtr (Exist TDiamond) where
+  type Raw (Exist TDiamond) = RawTDiamond
+  get_fptr (ETDiamond obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETDiamond (cast_fptr_to_obj (fptr :: ForeignPtr RawTDiamond) :: TDiamond)
+
+instance FPtr (Exist TPaveStats) where
+  type Raw (Exist TPaveStats) = RawTPaveStats
+  get_fptr (ETPaveStats obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPaveStats (cast_fptr_to_obj (fptr :: ForeignPtr RawTPaveStats) :: TPaveStats)
+
+instance FPtr (Exist TPavesText) where
+  type Raw (Exist TPavesText) = RawTPavesText
+  get_fptr (ETPavesText obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPavesText (cast_fptr_to_obj (fptr :: ForeignPtr RawTPavesText) :: TPavesText)
+
+instance FPtr (Exist TLegend) where
+  type Raw (Exist TLegend) = RawTLegend
+  get_fptr (ETLegend obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETLegend (cast_fptr_to_obj (fptr :: ForeignPtr RawTLegend) :: TLegend)
+
+instance FPtr (Exist TLegendEntry) where
+  type Raw (Exist TLegendEntry) = RawTLegendEntry
+  get_fptr (ETLegendEntry obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETLegendEntry (cast_fptr_to_obj (fptr :: ForeignPtr RawTLegendEntry) :: TLegendEntry)
+
+instance FPtr (Exist TPaveLabel) where
+  type Raw (Exist TPaveLabel) = RawTPaveLabel
+  get_fptr (ETPaveLabel obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPaveLabel (cast_fptr_to_obj (fptr :: ForeignPtr RawTPaveLabel) :: TPaveLabel)
+
+instance FPtr (Exist TPaveClass) where
+  type Raw (Exist TPaveClass) = RawTPaveClass
+  get_fptr (ETPaveClass obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPaveClass (cast_fptr_to_obj (fptr :: ForeignPtr RawTPaveClass) :: TPaveClass)
+
+instance FPtr (Exist TWbox) where
+  type Raw (Exist TWbox) = RawTWbox
+  get_fptr (ETWbox obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETWbox (cast_fptr_to_obj (fptr :: ForeignPtr RawTWbox) :: TWbox)
+
+instance FPtr (Exist TFrame) where
+  type Raw (Exist TFrame) = RawTFrame
+  get_fptr (ETFrame obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETFrame (cast_fptr_to_obj (fptr :: ForeignPtr RawTFrame) :: TFrame)
+
+instance FPtr (Exist TSliderBox) where
+  type Raw (Exist TSliderBox) = RawTSliderBox
+  get_fptr (ETSliderBox obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETSliderBox (cast_fptr_to_obj (fptr :: ForeignPtr RawTSliderBox) :: TSliderBox)
+
+instance FPtr (Exist TTree) where
+  type Raw (Exist TTree) = RawTTree
+  get_fptr (ETTree obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETTree (cast_fptr_to_obj (fptr :: ForeignPtr RawTTree) :: TTree)
+
+instance FPtr (Exist TChain) where
+  type Raw (Exist TChain) = RawTChain
+  get_fptr (ETChain obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETChain (cast_fptr_to_obj (fptr :: ForeignPtr RawTChain) :: TChain)
+
+instance FPtr (Exist TNtuple) where
+  type Raw (Exist TNtuple) = RawTNtuple
+  get_fptr (ETNtuple obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETNtuple (cast_fptr_to_obj (fptr :: ForeignPtr RawTNtuple) :: TNtuple)
+
+instance FPtr (Exist TNtupleD) where
+  type Raw (Exist TNtupleD) = RawTNtupleD
+  get_fptr (ETNtupleD obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETNtupleD (cast_fptr_to_obj (fptr :: ForeignPtr RawTNtupleD) :: TNtupleD)
+
+instance FPtr (Exist TTreeSQL) where
+  type Raw (Exist TTreeSQL) = RawTTreeSQL
+  get_fptr (ETTreeSQL obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETTreeSQL (cast_fptr_to_obj (fptr :: ForeignPtr RawTTreeSQL) :: TTreeSQL)
+
+instance FPtr (Exist TPolyLine) where
+  type Raw (Exist TPolyLine) = RawTPolyLine
+  get_fptr (ETPolyLine obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPolyLine (cast_fptr_to_obj (fptr :: ForeignPtr RawTPolyLine) :: TPolyLine)
+
+instance FPtr (Exist TCurlyLine) where
+  type Raw (Exist TCurlyLine) = RawTCurlyLine
+  get_fptr (ETCurlyLine obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETCurlyLine (cast_fptr_to_obj (fptr :: ForeignPtr RawTCurlyLine) :: TCurlyLine)
+
+instance FPtr (Exist TCurlyArc) where
+  type Raw (Exist TCurlyArc) = RawTCurlyArc
+  get_fptr (ETCurlyArc obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETCurlyArc (cast_fptr_to_obj (fptr :: ForeignPtr RawTCurlyArc) :: TCurlyArc)
+
+instance FPtr (Exist TEfficiency) where
+  type Raw (Exist TEfficiency) = RawTEfficiency
+  get_fptr (ETEfficiency obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETEfficiency (cast_fptr_to_obj (fptr :: ForeignPtr RawTEfficiency) :: TEfficiency)
+
+instance FPtr (Exist TAxis) where
+  type Raw (Exist TAxis) = RawTAxis
+  get_fptr (ETAxis obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETAxis (cast_fptr_to_obj (fptr :: ForeignPtr RawTAxis) :: TAxis)
+
+instance FPtr (Exist TLatex) where
+  type Raw (Exist TLatex) = RawTLatex
+  get_fptr (ETLatex obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETLatex (cast_fptr_to_obj (fptr :: ForeignPtr RawTLatex) :: TLatex)
+
+instance FPtr (Exist TText) where
+  type Raw (Exist TText) = RawTText
+  get_fptr (ETText obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETText (cast_fptr_to_obj (fptr :: ForeignPtr RawTText) :: TText)
+
+instance FPtr (Exist TDirectory) where
+  type Raw (Exist TDirectory) = RawTDirectory
+  get_fptr (ETDirectory obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETDirectory (cast_fptr_to_obj (fptr :: ForeignPtr RawTDirectory) :: TDirectory)
+
+instance FPtr (Exist TDirectoryFile) where
+  type Raw (Exist TDirectoryFile) = RawTDirectoryFile
+  get_fptr (ETDirectoryFile obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETDirectoryFile (cast_fptr_to_obj (fptr :: ForeignPtr RawTDirectoryFile) :: TDirectoryFile)
+
+instance FPtr (Exist TFile) where
+  type Raw (Exist TFile) = RawTFile
+  get_fptr (ETFile obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETFile (cast_fptr_to_obj (fptr :: ForeignPtr RawTFile) :: TFile)
+
+instance FPtr (Exist TBranch) where
+  type Raw (Exist TBranch) = RawTBranch
+  get_fptr (ETBranch obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETBranch (cast_fptr_to_obj (fptr :: ForeignPtr RawTBranch) :: TBranch)
+
+instance FPtr (Exist TVirtualTreePlayer) where
+  type Raw (Exist TVirtualTreePlayer) = RawTVirtualTreePlayer
+  get_fptr (ETVirtualTreePlayer obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETVirtualTreePlayer (cast_fptr_to_obj (fptr :: ForeignPtr RawTVirtualTreePlayer) :: TVirtualTreePlayer)
+
+instance FPtr (Exist TTreePlayer) where
+  type Raw (Exist TTreePlayer) = RawTTreePlayer
+  get_fptr (ETTreePlayer obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETTreePlayer (cast_fptr_to_obj (fptr :: ForeignPtr RawTTreePlayer) :: TTreePlayer)
+
+instance FPtr (Exist TArray) where
+  type Raw (Exist TArray) = RawTArray
+  get_fptr (ETArray obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArray (cast_fptr_to_obj (fptr :: ForeignPtr RawTArray) :: TArray)
+
+instance FPtr (Exist TArrayC) where
+  type Raw (Exist TArrayC) = RawTArrayC
+  get_fptr (ETArrayC obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArrayC (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayC) :: TArrayC)
+
+instance FPtr (Exist TArrayD) where
+  type Raw (Exist TArrayD) = RawTArrayD
+  get_fptr (ETArrayD obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArrayD (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayD) :: TArrayD)
+
+instance FPtr (Exist TArrayF) where
+  type Raw (Exist TArrayF) = RawTArrayF
+  get_fptr (ETArrayF obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArrayF (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayF) :: TArrayF)
+
+instance FPtr (Exist TArrayI) where
+  type Raw (Exist TArrayI) = RawTArrayI
+  get_fptr (ETArrayI obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArrayI (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayI) :: TArrayI)
+
+instance FPtr (Exist TArrayL) where
+  type Raw (Exist TArrayL) = RawTArrayL
+  get_fptr (ETArrayL obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArrayL (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayL) :: TArrayL)
+
+instance FPtr (Exist TArrayL64) where
+  type Raw (Exist TArrayL64) = RawTArrayL64
+  get_fptr (ETArrayL64 obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArrayL64 (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayL64) :: TArrayL64)
+
+instance FPtr (Exist TArrayS) where
+  type Raw (Exist TArrayS) = RawTArrayS
+  get_fptr (ETArrayS obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETArrayS (cast_fptr_to_obj (fptr :: ForeignPtr RawTArrayS) :: TArrayS)
+
+instance FPtr (Exist TH1) where
+  type Raw (Exist TH1) = RawTH1
+  get_fptr (ETH1 obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH1 (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1) :: TH1)
+
+instance FPtr (Exist TH2) where
+  type Raw (Exist TH2) = RawTH2
+  get_fptr (ETH2 obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH2 (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2) :: TH2)
+
+instance FPtr (Exist TH3) where
+  type Raw (Exist TH3) = RawTH3
+  get_fptr (ETH3 obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH3 (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3) :: TH3)
+
+instance FPtr (Exist TH1C) where
+  type Raw (Exist TH1C) = RawTH1C
+  get_fptr (ETH1C obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH1C (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1C) :: TH1C)
+
+instance FPtr (Exist TH1D) where
+  type Raw (Exist TH1D) = RawTH1D
+  get_fptr (ETH1D obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH1D (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1D) :: TH1D)
+
+instance FPtr (Exist TH1F) where
+  type Raw (Exist TH1F) = RawTH1F
+  get_fptr (ETH1F obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH1F (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1F) :: TH1F)
+
+instance FPtr (Exist TH1I) where
+  type Raw (Exist TH1I) = RawTH1I
+  get_fptr (ETH1I obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH1I (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1I) :: TH1I)
+
+instance FPtr (Exist TH1S) where
+  type Raw (Exist TH1S) = RawTH1S
+  get_fptr (ETH1S obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH1S (cast_fptr_to_obj (fptr :: ForeignPtr RawTH1S) :: TH1S)
+
+instance FPtr (Exist TH2C) where
+  type Raw (Exist TH2C) = RawTH2C
+  get_fptr (ETH2C obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH2C (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2C) :: TH2C)
+
+instance FPtr (Exist TH2D) where
+  type Raw (Exist TH2D) = RawTH2D
+  get_fptr (ETH2D obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH2D (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2D) :: TH2D)
+
+instance FPtr (Exist TH2F) where
+  type Raw (Exist TH2F) = RawTH2F
+  get_fptr (ETH2F obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH2F (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2F) :: TH2F)
+
+instance FPtr (Exist TH2I) where
+  type Raw (Exist TH2I) = RawTH2I
+  get_fptr (ETH2I obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH2I (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2I) :: TH2I)
+
+instance FPtr (Exist TH2Poly) where
+  type Raw (Exist TH2Poly) = RawTH2Poly
+  get_fptr (ETH2Poly obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH2Poly (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2Poly) :: TH2Poly)
+
+instance FPtr (Exist TH2S) where
+  type Raw (Exist TH2S) = RawTH2S
+  get_fptr (ETH2S obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH2S (cast_fptr_to_obj (fptr :: ForeignPtr RawTH2S) :: TH2S)
+
+instance FPtr (Exist TH3C) where
+  type Raw (Exist TH3C) = RawTH3C
+  get_fptr (ETH3C obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH3C (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3C) :: TH3C)
+
+instance FPtr (Exist TH3D) where
+  type Raw (Exist TH3D) = RawTH3D
+  get_fptr (ETH3D obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH3D (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3D) :: TH3D)
+
+instance FPtr (Exist TH3F) where
+  type Raw (Exist TH3F) = RawTH3F
+  get_fptr (ETH3F obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH3F (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3F) :: TH3F)
+
+instance FPtr (Exist TH3I) where
+  type Raw (Exist TH3I) = RawTH3I
+  get_fptr (ETH3I obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH3I (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3I) :: TH3I)
+
+instance FPtr (Exist TH3S) where
+  type Raw (Exist TH3S) = RawTH3S
+  get_fptr (ETH3S obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETH3S (cast_fptr_to_obj (fptr :: ForeignPtr RawTH3S) :: TH3S)
+
+instance FPtr (Exist TQObject) where
+  type Raw (Exist TQObject) = RawTQObject
+  get_fptr (ETQObject obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETQObject (cast_fptr_to_obj (fptr :: ForeignPtr RawTQObject) :: TQObject)
+
+instance FPtr (Exist TVirtualPad) where
+  type Raw (Exist TVirtualPad) = RawTVirtualPad
+  get_fptr (ETVirtualPad obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETVirtualPad (cast_fptr_to_obj (fptr :: ForeignPtr RawTVirtualPad) :: TVirtualPad)
+
+instance FPtr (Exist TPad) where
+  type Raw (Exist TPad) = RawTPad
+  get_fptr (ETPad obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETPad (cast_fptr_to_obj (fptr :: ForeignPtr RawTPad) :: TPad)
+
+instance FPtr (Exist TButton) where
+  type Raw (Exist TButton) = RawTButton
+  get_fptr (ETButton obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETButton (cast_fptr_to_obj (fptr :: ForeignPtr RawTButton) :: TButton)
+
+instance FPtr (Exist TGroupButton) where
+  type Raw (Exist TGroupButton) = RawTGroupButton
+  get_fptr (ETGroupButton obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETGroupButton (cast_fptr_to_obj (fptr :: ForeignPtr RawTGroupButton) :: TGroupButton)
+
+instance FPtr (Exist TCanvas) where
+  type Raw (Exist TCanvas) = RawTCanvas
+  get_fptr (ETCanvas obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETCanvas (cast_fptr_to_obj (fptr :: ForeignPtr RawTCanvas) :: TCanvas)
+
+instance FPtr (Exist TDialogCanvas) where
+  type Raw (Exist TDialogCanvas) = RawTDialogCanvas
+  get_fptr (ETDialogCanvas obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETDialogCanvas (cast_fptr_to_obj (fptr :: ForeignPtr RawTDialogCanvas) :: TDialogCanvas)
+
+instance FPtr (Exist TInspectCanvas) where
+  type Raw (Exist TInspectCanvas) = RawTInspectCanvas
+  get_fptr (ETInspectCanvas obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETInspectCanvas (cast_fptr_to_obj (fptr :: ForeignPtr RawTInspectCanvas) :: TInspectCanvas)
+
+instance FPtr (Exist TEvePad) where
+  type Raw (Exist TEvePad) = RawTEvePad
+  get_fptr (ETEvePad obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETEvePad (cast_fptr_to_obj (fptr :: ForeignPtr RawTEvePad) :: TEvePad)
+
+instance FPtr (Exist TSlider) where
+  type Raw (Exist TSlider) = RawTSlider
+  get_fptr (ETSlider obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETSlider (cast_fptr_to_obj (fptr :: ForeignPtr RawTSlider) :: TSlider)
+
+instance FPtr (Exist TApplication) where
+  type Raw (Exist TApplication) = RawTApplication
+  get_fptr (ETApplication obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETApplication (cast_fptr_to_obj (fptr :: ForeignPtr RawTApplication) :: TApplication)
+
+instance FPtr (Exist TRint) where
+  type Raw (Exist TRint) = RawTRint
+  get_fptr (ETRint obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETRint (cast_fptr_to_obj (fptr :: ForeignPtr RawTRint) :: TRint)
+
+instance FPtr (Exist TRandom) where
+  type Raw (Exist TRandom) = RawTRandom
+  get_fptr (ETRandom obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETRandom (cast_fptr_to_obj (fptr :: ForeignPtr RawTRandom) :: TRandom)
+
+instance FPtr (Exist TCollection) where
+  type Raw (Exist TCollection) = RawTCollection
+  get_fptr (ETCollection obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETCollection (cast_fptr_to_obj (fptr :: ForeignPtr RawTCollection) :: TCollection)
+
+instance FPtr (Exist TSeqCollection) where
+  type Raw (Exist TSeqCollection) = RawTSeqCollection
+  get_fptr (ETSeqCollection obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETSeqCollection (cast_fptr_to_obj (fptr :: ForeignPtr RawTSeqCollection) :: TSeqCollection)
+
+instance FPtr (Exist TObjArray) where
+  type Raw (Exist TObjArray) = RawTObjArray
+  get_fptr (ETObjArray obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETObjArray (cast_fptr_to_obj (fptr :: ForeignPtr RawTObjArray) :: TObjArray)
+
+instance FPtr (Exist TList) where
+  type Raw (Exist TList) = RawTList
+  get_fptr (ETList obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETList (cast_fptr_to_obj (fptr :: ForeignPtr RawTList) :: TList)
+
+instance FPtr (Exist TKey) where
+  type Raw (Exist TKey) = RawTKey
+  get_fptr (ETKey obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETKey (cast_fptr_to_obj (fptr :: ForeignPtr RawTKey) :: TKey)
+
+instance FPtr (Exist TDatime) where
+  type Raw (Exist TDatime) = RawTDatime
+  get_fptr (ETDatime obj) = castForeignPtr (get_fptr obj)
+  cast_fptr_to_obj fptr = ETDatime (cast_fptr_to_obj (fptr :: ForeignPtr RawTDatime) :: TDatime)
+
+instance ITObject (Exist TObject) where
+  getName (ETObject x) = getName x
+  draw (ETObject x) = draw x
+  findObject (ETObject x) = findObject x
+  saveAs (ETObject x) = saveAs x
+  write (ETObject x) = write x
+  isA (ETObject x) = isA x
+  printObj (ETObject x) = printObj x
+
+instance IDeletable (Exist TObject) where
+  delete (ETObject x) = delete x
+
+instance ITNamed (Exist TNamed) where
+  setName (ETNamed x) = setName x
+  setNameTitle (ETNamed x) = setNameTitle x
+  setTitle (ETNamed x) = setTitle x
+
+instance ITObject (Exist TNamed) where
+  getName (ETNamed x) = getName x
+  draw (ETNamed x) = draw x
+  findObject (ETNamed x) = findObject x
+  saveAs (ETNamed x) = saveAs x
+  write (ETNamed x) = write x
+  isA (ETNamed x) = isA x
+  printObj (ETNamed x) = printObj x
+
+instance IDeletable (Exist TNamed) where
+  delete (ETNamed x) = delete x
+
+instance ITClass (Exist TClass) where
+
+
+instance ITDictionary (Exist TClass) where
+
+
+instance ITNamed (Exist TClass) where
+  setName (ETClass x) = setName x
+  setNameTitle (ETClass x) = setNameTitle x
+  setTitle (ETClass x) = setTitle x
+
+instance ITObject (Exist TClass) where
+  getName (ETClass x) = getName x
+  draw (ETClass x) = draw x
+  findObject (ETClass x) = findObject x
+  saveAs (ETClass x) = saveAs x
+  write (ETClass x) = write x
+  isA (ETClass x) = isA x
+  printObj (ETClass x) = printObj x
+
+instance IDeletable (Exist TClass) where
+  delete (ETClass x) = delete x
+
+instance ITFormula (Exist TFormula) where
+  getParameter (ETFormula x) = getParameter x
+  setParameter (ETFormula x) = setParameter x
+
+instance ITNamed (Exist TFormula) where
+  setName (ETFormula x) = setName x
+  setNameTitle (ETFormula x) = setNameTitle x
+  setTitle (ETFormula x) = setTitle x
+
+instance ITObject (Exist TFormula) where
+  getName (ETFormula x) = getName x
+  draw (ETFormula x) = draw x
+  findObject (ETFormula x) = findObject x
+  saveAs (ETFormula x) = saveAs x
+  write (ETFormula x) = write x
+  isA (ETFormula x) = isA x
+  printObj (ETFormula x) = printObj x
+
+instance IDeletable (Exist TFormula) where
+  delete (ETFormula x) = delete x
+
+instance ITAtt3D (Exist TAtt3D) where
+
+
+instance IDeletable (Exist TAtt3D) where
+  delete (ETAtt3D x) = delete x
+
+instance ITAttAxis (Exist TAttAxis) where
+  getNdivisions (ETAttAxis x) = getNdivisions x
+  getAxisColor (ETAttAxis x) = getAxisColor x
+  getLabelColor (ETAttAxis x) = getLabelColor x
+  getLabelFont (ETAttAxis x) = getLabelFont x
+  getLabelOffset (ETAttAxis x) = getLabelOffset x
+  getLabelSize (ETAttAxis x) = getLabelSize x
+  getTitleOffset (ETAttAxis x) = getTitleOffset x
+  getTitleSize (ETAttAxis x) = getTitleSize x
+  getTickLength (ETAttAxis x) = getTickLength x
+  getTitleFont (ETAttAxis x) = getTitleFont x
+  setNdivisions (ETAttAxis x) = setNdivisions x
+  setAxisColor (ETAttAxis x) = setAxisColor x
+  setLabelColor (ETAttAxis x) = setLabelColor x
+  setLabelFont (ETAttAxis x) = setLabelFont x
+  setLabelOffset (ETAttAxis x) = setLabelOffset x
+  setLabelSize (ETAttAxis x) = setLabelSize x
+  setTickLength (ETAttAxis x) = setTickLength x
+  setTitleOffset (ETAttAxis x) = setTitleOffset x
+  setTitleSize (ETAttAxis x) = setTitleSize x
+  setTitleColor (ETAttAxis x) = setTitleColor x
+  setTitleFont (ETAttAxis x) = setTitleFont x
+
+instance IDeletable (Exist TAttAxis) where
+  delete (ETAttAxis x) = delete x
+
+instance ITAttBBox (Exist TAttBBox) where
+
+
+instance IDeletable (Exist TAttBBox) where
+  delete (ETAttBBox x) = delete x
+
+instance ITAttCanvas (Exist TAttCanvas) where
+
+
+instance IDeletable (Exist TAttCanvas) where
+  delete (ETAttCanvas x) = delete x
+
+instance ITAttFill (Exist TAttFill) where
+  setFillColor (ETAttFill x) = setFillColor x
+  setFillStyle (ETAttFill x) = setFillStyle x
+
+instance IDeletable (Exist TAttFill) where
+  delete (ETAttFill x) = delete x
+
+instance ITAttImage (Exist TAttImage) where
+
+
+instance IDeletable (Exist TAttImage) where
+  delete (ETAttImage x) = delete x
+
+instance ITAttLine (Exist TAttLine) where
+  setLineColor (ETAttLine x) = setLineColor x
+
+instance IDeletable (Exist TAttLine) where
+  delete (ETAttLine x) = delete x
+
+instance ITAttMarker (Exist TAttMarker) where
+
+
+instance IDeletable (Exist TAttMarker) where
+  delete (ETAttMarker x) = delete x
+
+instance ITAttPad (Exist TAttPad) where
+
+
+instance IDeletable (Exist TAttPad) where
+  delete (ETAttPad x) = delete x
+
+instance ITAttParticle (Exist TAttParticle) where
+
+
+instance ITNamed (Exist TAttParticle) where
+  setName (ETAttParticle x) = setName x
+  setNameTitle (ETAttParticle x) = setNameTitle x
+  setTitle (ETAttParticle x) = setTitle x
+
+instance ITObject (Exist TAttParticle) where
+  getName (ETAttParticle x) = getName x
+  draw (ETAttParticle x) = draw x
+  findObject (ETAttParticle x) = findObject x
+  saveAs (ETAttParticle x) = saveAs x
+  write (ETAttParticle x) = write x
+  isA (ETAttParticle x) = isA x
+  printObj (ETAttParticle x) = printObj x
+
+instance IDeletable (Exist TAttParticle) where
+  delete (ETAttParticle x) = delete x
+
+instance ITAttText (Exist TAttText) where
+  setTextColor (ETAttText x) = setTextColor x
+  setTextAlign (ETAttText x) = setTextAlign x
+  setTextSize (ETAttText x) = setTextSize x
+
+instance IDeletable (Exist TAttText) where
+  delete (ETAttText x) = delete x
+
+instance ITHStack (Exist THStack) where
+
+
+instance ITNamed (Exist THStack) where
+  setName (ETHStack x) = setName x
+  setNameTitle (ETHStack x) = setNameTitle x
+  setTitle (ETHStack x) = setTitle x
+
+instance ITObject (Exist THStack) where
+  getName (ETHStack x) = getName x
+  draw (ETHStack x) = draw x
+  findObject (ETHStack x) = findObject x
+  saveAs (ETHStack x) = saveAs x
+  write (ETHStack x) = write x
+  isA (ETHStack x) = isA x
+  printObj (ETHStack x) = printObj x
+
+instance IDeletable (Exist THStack) where
+  delete (ETHStack x) = delete x
+
+instance ITF1 (Exist TF1) where
+
+
+instance ITFormula (Exist TF1) where
+  getParameter (ETF1 x) = getParameter x
+  setParameter (ETF1 x) = setParameter x
+
+instance ITAttLine (Exist TF1) where
+  setLineColor (ETF1 x) = setLineColor x
+
+instance ITAttFill (Exist TF1) where
+  setFillColor (ETF1 x) = setFillColor x
+  setFillStyle (ETF1 x) = setFillStyle x
+
+instance ITNamed (Exist TF1) where
+  setName (ETF1 x) = setName x
+  setNameTitle (ETF1 x) = setNameTitle x
+  setTitle (ETF1 x) = setTitle x
+
+instance ITObject (Exist TF1) where
+  getName (ETF1 x) = getName x
+  draw (ETF1 x) = draw x
+  findObject (ETF1 x) = findObject x
+  saveAs (ETF1 x) = saveAs x
+  write (ETF1 x) = write x
+  isA (ETF1 x) = isA x
+  printObj (ETF1 x) = printObj x
+
+instance IDeletable (Exist TF1) where
+  delete (ETF1 x) = delete x
+
+instance ITGraph (Exist TGraph) where
+
+
+instance ITNamed (Exist TGraph) where
+  setName (ETGraph x) = setName x
+  setNameTitle (ETGraph x) = setNameTitle x
+  setTitle (ETGraph x) = setTitle x
+
+instance ITAttLine (Exist TGraph) where
+  setLineColor (ETGraph x) = setLineColor x
+
+instance ITAttFill (Exist TGraph) where
+  setFillColor (ETGraph x) = setFillColor x
+  setFillStyle (ETGraph x) = setFillStyle x
+
+instance ITAttMarker (Exist TGraph) where
+
+
+instance ITObject (Exist TGraph) where
+  getName (ETGraph x) = getName x
+  draw (ETGraph x) = draw x
+  findObject (ETGraph x) = findObject x
+  saveAs (ETGraph x) = saveAs x
+  write (ETGraph x) = write x
+  isA (ETGraph x) = isA x
+  printObj (ETGraph x) = printObj x
+
+instance IDeletable (Exist TGraph) where
+  delete (ETGraph x) = delete x
+
+instance ITGraphAsymmErrors (Exist TGraphAsymmErrors) where
+
+
+instance ITGraph (Exist TGraphAsymmErrors) where
+
+
+instance ITNamed (Exist TGraphAsymmErrors) where
+  setName (ETGraphAsymmErrors x) = setName x
+  setNameTitle (ETGraphAsymmErrors x) = setNameTitle x
+  setTitle (ETGraphAsymmErrors x) = setTitle x
+
+instance ITAttLine (Exist TGraphAsymmErrors) where
+  setLineColor (ETGraphAsymmErrors x) = setLineColor x
+
+instance ITAttFill (Exist TGraphAsymmErrors) where
+  setFillColor (ETGraphAsymmErrors x) = setFillColor x
+  setFillStyle (ETGraphAsymmErrors x) = setFillStyle x
+
+instance ITAttMarker (Exist TGraphAsymmErrors) where
+
+
+instance ITObject (Exist TGraphAsymmErrors) where
+  getName (ETGraphAsymmErrors x) = getName x
+  draw (ETGraphAsymmErrors x) = draw x
+  findObject (ETGraphAsymmErrors x) = findObject x
+  saveAs (ETGraphAsymmErrors x) = saveAs x
+  write (ETGraphAsymmErrors x) = write x
+  isA (ETGraphAsymmErrors x) = isA x
+  printObj (ETGraphAsymmErrors x) = printObj x
+
+instance IDeletable (Exist TGraphAsymmErrors) where
+  delete (ETGraphAsymmErrors x) = delete x
+
+instance ITCutG (Exist TCutG) where
+
+
+instance ITGraph (Exist TCutG) where
+
+
+instance ITNamed (Exist TCutG) where
+  setName (ETCutG x) = setName x
+  setNameTitle (ETCutG x) = setNameTitle x
+  setTitle (ETCutG x) = setTitle x
+
+instance ITAttLine (Exist TCutG) where
+  setLineColor (ETCutG x) = setLineColor x
+
+instance ITAttFill (Exist TCutG) where
+  setFillColor (ETCutG x) = setFillColor x
+  setFillStyle (ETCutG x) = setFillStyle x
+
+instance ITAttMarker (Exist TCutG) where
+
+
+instance ITObject (Exist TCutG) where
+  getName (ETCutG x) = getName x
+  draw (ETCutG x) = draw x
+  findObject (ETCutG x) = findObject x
+  saveAs (ETCutG x) = saveAs x
+  write (ETCutG x) = write x
+  isA (ETCutG x) = isA x
+  printObj (ETCutG x) = printObj x
+
+instance IDeletable (Exist TCutG) where
+  delete (ETCutG x) = delete x
+
+instance ITGraphBentErrors (Exist TGraphBentErrors) where
+
+
+instance ITGraph (Exist TGraphBentErrors) where
+
+
+instance ITNamed (Exist TGraphBentErrors) where
+  setName (ETGraphBentErrors x) = setName x
+  setNameTitle (ETGraphBentErrors x) = setNameTitle x
+  setTitle (ETGraphBentErrors x) = setTitle x
+
+instance ITAttLine (Exist TGraphBentErrors) where
+  setLineColor (ETGraphBentErrors x) = setLineColor x
+
+instance ITAttFill (Exist TGraphBentErrors) where
+  setFillColor (ETGraphBentErrors x) = setFillColor x
+  setFillStyle (ETGraphBentErrors x) = setFillStyle x
+
+instance ITAttMarker (Exist TGraphBentErrors) where
+
+
+instance ITObject (Exist TGraphBentErrors) where
+  getName (ETGraphBentErrors x) = getName x
+  draw (ETGraphBentErrors x) = draw x
+  findObject (ETGraphBentErrors x) = findObject x
+  saveAs (ETGraphBentErrors x) = saveAs x
+  write (ETGraphBentErrors x) = write x
+  isA (ETGraphBentErrors x) = isA x
+  printObj (ETGraphBentErrors x) = printObj x
+
+instance IDeletable (Exist TGraphBentErrors) where
+  delete (ETGraphBentErrors x) = delete x
+
+instance ITGraphErrors (Exist TGraphErrors) where
+
+
+instance ITGraph (Exist TGraphErrors) where
+
+
+instance ITNamed (Exist TGraphErrors) where
+  setName (ETGraphErrors x) = setName x
+  setNameTitle (ETGraphErrors x) = setNameTitle x
+  setTitle (ETGraphErrors x) = setTitle x
+
+instance ITAttLine (Exist TGraphErrors) where
+  setLineColor (ETGraphErrors x) = setLineColor x
+
+instance ITAttFill (Exist TGraphErrors) where
+  setFillColor (ETGraphErrors x) = setFillColor x
+  setFillStyle (ETGraphErrors x) = setFillStyle x
+
+instance ITAttMarker (Exist TGraphErrors) where
+
+
+instance ITObject (Exist TGraphErrors) where
+  getName (ETGraphErrors x) = getName x
+  draw (ETGraphErrors x) = draw x
+  findObject (ETGraphErrors x) = findObject x
+  saveAs (ETGraphErrors x) = saveAs x
+  write (ETGraphErrors x) = write x
+  isA (ETGraphErrors x) = isA x
+  printObj (ETGraphErrors x) = printObj x
+
+instance IDeletable (Exist TGraphErrors) where
+  delete (ETGraphErrors x) = delete x
+
+instance ITGraphPolar (Exist TGraphPolar) where
+
+
+instance ITGraphErrors (Exist TGraphPolar) where
+
+
+instance ITGraph (Exist TGraphPolar) where
+
+
+instance ITNamed (Exist TGraphPolar) where
+  setName (ETGraphPolar x) = setName x
+  setNameTitle (ETGraphPolar x) = setNameTitle x
+  setTitle (ETGraphPolar x) = setTitle x
+
+instance ITAttLine (Exist TGraphPolar) where
+  setLineColor (ETGraphPolar x) = setLineColor x
+
+instance ITAttFill (Exist TGraphPolar) where
+  setFillColor (ETGraphPolar x) = setFillColor x
+  setFillStyle (ETGraphPolar x) = setFillStyle x
+
+instance ITAttMarker (Exist TGraphPolar) where
+
+
+instance ITObject (Exist TGraphPolar) where
+  getName (ETGraphPolar x) = getName x
+  draw (ETGraphPolar x) = draw x
+  findObject (ETGraphPolar x) = findObject x
+  saveAs (ETGraphPolar x) = saveAs x
+  write (ETGraphPolar x) = write x
+  isA (ETGraphPolar x) = isA x
+  printObj (ETGraphPolar x) = printObj x
+
+instance IDeletable (Exist TGraphPolar) where
+  delete (ETGraphPolar x) = delete x
+
+instance ITGraphQQ (Exist TGraphQQ) where
+
+
+instance ITGraph (Exist TGraphQQ) where
+
+
+instance ITNamed (Exist TGraphQQ) where
+  setName (ETGraphQQ x) = setName x
+  setNameTitle (ETGraphQQ x) = setNameTitle x
+  setTitle (ETGraphQQ x) = setTitle x
+
+instance ITAttLine (Exist TGraphQQ) where
+  setLineColor (ETGraphQQ x) = setLineColor x
+
+instance ITAttFill (Exist TGraphQQ) where
+  setFillColor (ETGraphQQ x) = setFillColor x
+  setFillStyle (ETGraphQQ x) = setFillStyle x
+
+instance ITAttMarker (Exist TGraphQQ) where
+
+
+instance ITObject (Exist TGraphQQ) where
+  getName (ETGraphQQ x) = getName x
+  draw (ETGraphQQ x) = draw x
+  findObject (ETGraphQQ x) = findObject x
+  saveAs (ETGraphQQ x) = saveAs x
+  write (ETGraphQQ x) = write x
+  isA (ETGraphQQ x) = isA x
+  printObj (ETGraphQQ x) = printObj x
+
+instance IDeletable (Exist TGraphQQ) where
+  delete (ETGraphQQ x) = delete x
+
+instance ITEllipse (Exist TEllipse) where
+
+
+instance ITObject (Exist TEllipse) where
+  getName (ETEllipse x) = getName x
+  draw (ETEllipse x) = draw x
+  findObject (ETEllipse x) = findObject x
+  saveAs (ETEllipse x) = saveAs x
+  write (ETEllipse x) = write x
+  isA (ETEllipse x) = isA x
+  printObj (ETEllipse x) = printObj x
+
+instance ITAttLine (Exist TEllipse) where
+  setLineColor (ETEllipse x) = setLineColor x
+
+instance ITAttFill (Exist TEllipse) where
+  setFillColor (ETEllipse x) = setFillColor x
+  setFillStyle (ETEllipse x) = setFillStyle x
+
+instance IDeletable (Exist TEllipse) where
+  delete (ETEllipse x) = delete x
+
+instance ITArc (Exist TArc) where
+
+
+instance ITEllipse (Exist TArc) where
+
+
+instance ITObject (Exist TArc) where
+  getName (ETArc x) = getName x
+  draw (ETArc x) = draw x
+  findObject (ETArc x) = findObject x
+  saveAs (ETArc x) = saveAs x
+  write (ETArc x) = write x
+  isA (ETArc x) = isA x
+  printObj (ETArc x) = printObj x
+
+instance ITAttLine (Exist TArc) where
+  setLineColor (ETArc x) = setLineColor x
+
+instance ITAttFill (Exist TArc) where
+  setFillColor (ETArc x) = setFillColor x
+  setFillStyle (ETArc x) = setFillStyle x
+
+instance IDeletable (Exist TArc) where
+  delete (ETArc x) = delete x
+
+instance ITCrown (Exist TCrown) where
+
+
+instance ITEllipse (Exist TCrown) where
+
+
+instance ITObject (Exist TCrown) where
+  getName (ETCrown x) = getName x
+  draw (ETCrown x) = draw x
+  findObject (ETCrown x) = findObject x
+  saveAs (ETCrown x) = saveAs x
+  write (ETCrown x) = write x
+  isA (ETCrown x) = isA x
+  printObj (ETCrown x) = printObj x
+
+instance ITAttLine (Exist TCrown) where
+  setLineColor (ETCrown x) = setLineColor x
+
+instance ITAttFill (Exist TCrown) where
+  setFillColor (ETCrown x) = setFillColor x
+  setFillStyle (ETCrown x) = setFillStyle x
+
+instance IDeletable (Exist TCrown) where
+  delete (ETCrown x) = delete x
+
+instance ITLine (Exist TLine) where
+
+
+instance ITObject (Exist TLine) where
+  getName (ETLine x) = getName x
+  draw (ETLine x) = draw x
+  findObject (ETLine x) = findObject x
+  saveAs (ETLine x) = saveAs x
+  write (ETLine x) = write x
+  isA (ETLine x) = isA x
+  printObj (ETLine x) = printObj x
+
+instance ITAttLine (Exist TLine) where
+  setLineColor (ETLine x) = setLineColor x
+
+instance IDeletable (Exist TLine) where
+  delete (ETLine x) = delete x
+
+instance ITArrow (Exist TArrow) where
+
+
+instance ITLine (Exist TArrow) where
+
+
+instance ITAttFill (Exist TArrow) where
+  setFillColor (ETArrow x) = setFillColor x
+  setFillStyle (ETArrow x) = setFillStyle x
+
+instance ITObject (Exist TArrow) where
+  getName (ETArrow x) = getName x
+  draw (ETArrow x) = draw x
+  findObject (ETArrow x) = findObject x
+  saveAs (ETArrow x) = saveAs x
+  write (ETArrow x) = write x
+  isA (ETArrow x) = isA x
+  printObj (ETArrow x) = printObj x
+
+instance ITAttLine (Exist TArrow) where
+  setLineColor (ETArrow x) = setLineColor x
+
+instance IDeletable (Exist TArrow) where
+  delete (ETArrow x) = delete x
+
+instance ITGaxis (Exist TGaxis) where
+
+
+instance ITLine (Exist TGaxis) where
+
+
+instance ITAttText (Exist TGaxis) where
+  setTextColor (ETGaxis x) = setTextColor x
+  setTextAlign (ETGaxis x) = setTextAlign x
+  setTextSize (ETGaxis x) = setTextSize x
+
+instance ITObject (Exist TGaxis) where
+  getName (ETGaxis x) = getName x
+  draw (ETGaxis x) = draw x
+  findObject (ETGaxis x) = findObject x
+  saveAs (ETGaxis x) = saveAs x
+  write (ETGaxis x) = write x
+  isA (ETGaxis x) = isA x
+  printObj (ETGaxis x) = printObj x
+
+instance ITAttLine (Exist TGaxis) where
+  setLineColor (ETGaxis x) = setLineColor x
+
+instance IDeletable (Exist TGaxis) where
+  delete (ETGaxis x) = delete x
+
+instance ITShape (Exist TShape) where
+
+
+instance ITNamed (Exist TShape) where
+  setName (ETShape x) = setName x
+  setNameTitle (ETShape x) = setNameTitle x
+  setTitle (ETShape x) = setTitle x
+
+instance ITAttLine (Exist TShape) where
+  setLineColor (ETShape x) = setLineColor x
+
+instance ITAttFill (Exist TShape) where
+  setFillColor (ETShape x) = setFillColor x
+  setFillStyle (ETShape x) = setFillStyle x
+
+instance ITAtt3D (Exist TShape) where
+
+
+instance ITObject (Exist TShape) where
+  getName (ETShape x) = getName x
+  draw (ETShape x) = draw x
+  findObject (ETShape x) = findObject x
+  saveAs (ETShape x) = saveAs x
+  write (ETShape x) = write x
+  isA (ETShape x) = isA x
+  printObj (ETShape x) = printObj x
+
+instance IDeletable (Exist TShape) where
+  delete (ETShape x) = delete x
+
+instance ITBRIK (Exist TBRIK) where
+
+
+instance ITShape (Exist TBRIK) where
+
+
+instance ITNamed (Exist TBRIK) where
+  setName (ETBRIK x) = setName x
+  setNameTitle (ETBRIK x) = setNameTitle x
+  setTitle (ETBRIK x) = setTitle x
+
+instance ITAttLine (Exist TBRIK) where
+  setLineColor (ETBRIK x) = setLineColor x
+
+instance ITAttFill (Exist TBRIK) where
+  setFillColor (ETBRIK x) = setFillColor x
+  setFillStyle (ETBRIK x) = setFillStyle x
+
+instance ITAtt3D (Exist TBRIK) where
+
+
+instance ITObject (Exist TBRIK) where
+  getName (ETBRIK x) = getName x
+  draw (ETBRIK x) = draw x
+  findObject (ETBRIK x) = findObject x
+  saveAs (ETBRIK x) = saveAs x
+  write (ETBRIK x) = write x
+  isA (ETBRIK x) = isA x
+  printObj (ETBRIK x) = printObj x
+
+instance IDeletable (Exist TBRIK) where
+  delete (ETBRIK x) = delete x
+
+instance ITTUBE (Exist TTUBE) where
+
+
+instance ITShape (Exist TTUBE) where
+
+
+instance ITNamed (Exist TTUBE) where
+  setName (ETTUBE x) = setName x
+  setNameTitle (ETTUBE x) = setNameTitle x
+  setTitle (ETTUBE x) = setTitle x
+
+instance ITAttLine (Exist TTUBE) where
+  setLineColor (ETTUBE x) = setLineColor x
+
+instance ITAttFill (Exist TTUBE) where
+  setFillColor (ETTUBE x) = setFillColor x
+  setFillStyle (ETTUBE x) = setFillStyle x
+
+instance ITAtt3D (Exist TTUBE) where
+
+
+instance ITObject (Exist TTUBE) where
+  getName (ETTUBE x) = getName x
+  draw (ETTUBE x) = draw x
+  findObject (ETTUBE x) = findObject x
+  saveAs (ETTUBE x) = saveAs x
+  write (ETTUBE x) = write x
+  isA (ETTUBE x) = isA x
+  printObj (ETTUBE x) = printObj x
+
+instance IDeletable (Exist TTUBE) where
+  delete (ETTUBE x) = delete x
+
+instance ITPCON (Exist TPCON) where
+
+
+instance ITShape (Exist TPCON) where
+
+
+instance ITNamed (Exist TPCON) where
+  setName (ETPCON x) = setName x
+  setNameTitle (ETPCON x) = setNameTitle x
+  setTitle (ETPCON x) = setTitle x
+
+instance ITAttLine (Exist TPCON) where
+  setLineColor (ETPCON x) = setLineColor x
+
+instance ITAttFill (Exist TPCON) where
+  setFillColor (ETPCON x) = setFillColor x
+  setFillStyle (ETPCON x) = setFillStyle x
+
+instance ITAtt3D (Exist TPCON) where
+
+
+instance ITObject (Exist TPCON) where
+  getName (ETPCON x) = getName x
+  draw (ETPCON x) = draw x
+  findObject (ETPCON x) = findObject x
+  saveAs (ETPCON x) = saveAs x
+  write (ETPCON x) = write x
+  isA (ETPCON x) = isA x
+  printObj (ETPCON x) = printObj x
+
+instance IDeletable (Exist TPCON) where
+  delete (ETPCON x) = delete x
+
+instance ITSPHE (Exist TSPHE) where
+
+
+instance ITShape (Exist TSPHE) where
+
+
+instance ITNamed (Exist TSPHE) where
+  setName (ETSPHE x) = setName x
+  setNameTitle (ETSPHE x) = setNameTitle x
+  setTitle (ETSPHE x) = setTitle x
+
+instance ITAttLine (Exist TSPHE) where
+  setLineColor (ETSPHE x) = setLineColor x
+
+instance ITAttFill (Exist TSPHE) where
+  setFillColor (ETSPHE x) = setFillColor x
+  setFillStyle (ETSPHE x) = setFillStyle x
+
+instance ITAtt3D (Exist TSPHE) where
+
+
+instance ITObject (Exist TSPHE) where
+  getName (ETSPHE x) = getName x
+  draw (ETSPHE x) = draw x
+  findObject (ETSPHE x) = findObject x
+  saveAs (ETSPHE x) = saveAs x
+  write (ETSPHE x) = write x
+  isA (ETSPHE x) = isA x
+  printObj (ETSPHE x) = printObj x
+
+instance IDeletable (Exist TSPHE) where
+  delete (ETSPHE x) = delete x
+
+instance ITXTRU (Exist TXTRU) where
+
+
+instance ITShape (Exist TXTRU) where
+
+
+instance ITNamed (Exist TXTRU) where
+  setName (ETXTRU x) = setName x
+  setNameTitle (ETXTRU x) = setNameTitle x
+  setTitle (ETXTRU x) = setTitle x
+
+instance ITAttLine (Exist TXTRU) where
+  setLineColor (ETXTRU x) = setLineColor x
+
+instance ITAttFill (Exist TXTRU) where
+  setFillColor (ETXTRU x) = setFillColor x
+  setFillStyle (ETXTRU x) = setFillStyle x
+
+instance ITAtt3D (Exist TXTRU) where
+
+
+instance ITObject (Exist TXTRU) where
+  getName (ETXTRU x) = getName x
+  draw (ETXTRU x) = draw x
+  findObject (ETXTRU x) = findObject x
+  saveAs (ETXTRU x) = saveAs x
+  write (ETXTRU x) = write x
+  isA (ETXTRU x) = isA x
+  printObj (ETXTRU x) = printObj x
+
+instance IDeletable (Exist TXTRU) where
+  delete (ETXTRU x) = delete x
+
+instance ITBox (Exist TBox) where
+
+
+instance ITObject (Exist TBox) where
+  getName (ETBox x) = getName x
+  draw (ETBox x) = draw x
+  findObject (ETBox x) = findObject x
+  saveAs (ETBox x) = saveAs x
+  write (ETBox x) = write x
+  isA (ETBox x) = isA x
+  printObj (ETBox x) = printObj x
+
+instance ITAttLine (Exist TBox) where
+  setLineColor (ETBox x) = setLineColor x
+
+instance ITAttFill (Exist TBox) where
+  setFillColor (ETBox x) = setFillColor x
+  setFillStyle (ETBox x) = setFillStyle x
+
+instance IDeletable (Exist TBox) where
+  delete (ETBox x) = delete x
+
+instance ITPave (Exist TPave) where
+
+
+instance ITBox (Exist TPave) where
+
+
+instance ITObject (Exist TPave) where
+  getName (ETPave x) = getName x
+  draw (ETPave x) = draw x
+  findObject (ETPave x) = findObject x
+  saveAs (ETPave x) = saveAs x
+  write (ETPave x) = write x
+  isA (ETPave x) = isA x
+  printObj (ETPave x) = printObj x
+
+instance ITAttLine (Exist TPave) where
+  setLineColor (ETPave x) = setLineColor x
+
+instance ITAttFill (Exist TPave) where
+  setFillColor (ETPave x) = setFillColor x
+  setFillStyle (ETPave x) = setFillStyle x
+
+instance IDeletable (Exist TPave) where
+  delete (ETPave x) = delete x
+
+instance ITPaveText (Exist TPaveText) where
+
+
+instance ITPave (Exist TPaveText) where
+
+
+instance ITAttText (Exist TPaveText) where
+  setTextColor (ETPaveText x) = setTextColor x
+  setTextAlign (ETPaveText x) = setTextAlign x
+  setTextSize (ETPaveText x) = setTextSize x
+
+instance ITBox (Exist TPaveText) where
+
+
+instance ITObject (Exist TPaveText) where
+  getName (ETPaveText x) = getName x
+  draw (ETPaveText x) = draw x
+  findObject (ETPaveText x) = findObject x
+  saveAs (ETPaveText x) = saveAs x
+  write (ETPaveText x) = write x
+  isA (ETPaveText x) = isA x
+  printObj (ETPaveText x) = printObj x
+
+instance ITAttLine (Exist TPaveText) where
+  setLineColor (ETPaveText x) = setLineColor x
+
+instance ITAttFill (Exist TPaveText) where
+  setFillColor (ETPaveText x) = setFillColor x
+  setFillStyle (ETPaveText x) = setFillStyle x
+
+instance IDeletable (Exist TPaveText) where
+  delete (ETPaveText x) = delete x
+
+instance ITDiamond (Exist TDiamond) where
+
+
+instance ITPaveText (Exist TDiamond) where
+
+
+instance ITPave (Exist TDiamond) where
+
+
+instance ITAttText (Exist TDiamond) where
+  setTextColor (ETDiamond x) = setTextColor x
+  setTextAlign (ETDiamond x) = setTextAlign x
+  setTextSize (ETDiamond x) = setTextSize x
+
+instance ITBox (Exist TDiamond) where
+
+
+instance ITObject (Exist TDiamond) where
+  getName (ETDiamond x) = getName x
+  draw (ETDiamond x) = draw x
+  findObject (ETDiamond x) = findObject x
+  saveAs (ETDiamond x) = saveAs x
+  write (ETDiamond x) = write x
+  isA (ETDiamond x) = isA x
+  printObj (ETDiamond x) = printObj x
+
+instance ITAttLine (Exist TDiamond) where
+  setLineColor (ETDiamond x) = setLineColor x
+
+instance ITAttFill (Exist TDiamond) where
+  setFillColor (ETDiamond x) = setFillColor x
+  setFillStyle (ETDiamond x) = setFillStyle x
+
+instance IDeletable (Exist TDiamond) where
+  delete (ETDiamond x) = delete x
+
+instance ITPaveStats (Exist TPaveStats) where
+
+
+instance ITPaveText (Exist TPaveStats) where
+
+
+instance ITPave (Exist TPaveStats) where
+
+
+instance ITAttText (Exist TPaveStats) where
+  setTextColor (ETPaveStats x) = setTextColor x
+  setTextAlign (ETPaveStats x) = setTextAlign x
+  setTextSize (ETPaveStats x) = setTextSize x
+
+instance ITBox (Exist TPaveStats) where
+
+
+instance ITObject (Exist TPaveStats) where
+  getName (ETPaveStats x) = getName x
+  draw (ETPaveStats x) = draw x
+  findObject (ETPaveStats x) = findObject x
+  saveAs (ETPaveStats x) = saveAs x
+  write (ETPaveStats x) = write x
+  isA (ETPaveStats x) = isA x
+  printObj (ETPaveStats x) = printObj x
+
+instance ITAttLine (Exist TPaveStats) where
+  setLineColor (ETPaveStats x) = setLineColor x
+
+instance ITAttFill (Exist TPaveStats) where
+  setFillColor (ETPaveStats x) = setFillColor x
+  setFillStyle (ETPaveStats x) = setFillStyle x
+
+instance IDeletable (Exist TPaveStats) where
+  delete (ETPaveStats x) = delete x
+
+instance ITPavesText (Exist TPavesText) where
+
+
+instance ITPaveText (Exist TPavesText) where
+
+
+instance ITPave (Exist TPavesText) where
+
+
+instance ITAttText (Exist TPavesText) where
+  setTextColor (ETPavesText x) = setTextColor x
+  setTextAlign (ETPavesText x) = setTextAlign x
+  setTextSize (ETPavesText x) = setTextSize x
+
+instance ITBox (Exist TPavesText) where
+
+
+instance ITObject (Exist TPavesText) where
+  getName (ETPavesText x) = getName x
+  draw (ETPavesText x) = draw x
+  findObject (ETPavesText x) = findObject x
+  saveAs (ETPavesText x) = saveAs x
+  write (ETPavesText x) = write x
+  isA (ETPavesText x) = isA x
+  printObj (ETPavesText x) = printObj x
+
+instance ITAttLine (Exist TPavesText) where
+  setLineColor (ETPavesText x) = setLineColor x
+
+instance ITAttFill (Exist TPavesText) where
+  setFillColor (ETPavesText x) = setFillColor x
+  setFillStyle (ETPavesText x) = setFillStyle x
+
+instance IDeletable (Exist TPavesText) where
+  delete (ETPavesText x) = delete x
+
+instance ITLegend (Exist TLegend) where
+  addEntry (ETLegend x) = addEntry x
+
+instance ITPave (Exist TLegend) where
+
+
+instance ITAttText (Exist TLegend) where
+  setTextColor (ETLegend x) = setTextColor x
+  setTextAlign (ETLegend x) = setTextAlign x
+  setTextSize (ETLegend x) = setTextSize x
+
+instance ITBox (Exist TLegend) where
+
+
+instance ITObject (Exist TLegend) where
+  getName (ETLegend x) = getName x
+  draw (ETLegend x) = draw x
+  findObject (ETLegend x) = findObject x
+  saveAs (ETLegend x) = saveAs x
+  write (ETLegend x) = write x
+  isA (ETLegend x) = isA x
+  printObj (ETLegend x) = printObj x
+
+instance ITAttLine (Exist TLegend) where
+  setLineColor (ETLegend x) = setLineColor x
+
+instance ITAttFill (Exist TLegend) where
+  setFillColor (ETLegend x) = setFillColor x
+  setFillStyle (ETLegend x) = setFillStyle x
+
+instance IDeletable (Exist TLegend) where
+  delete (ETLegend x) = delete x
+
+instance ITLegendEntry (Exist TLegendEntry) where
+
+
+instance ITObject (Exist TLegendEntry) where
+  getName (ETLegendEntry x) = getName x
+  draw (ETLegendEntry x) = draw x
+  findObject (ETLegendEntry x) = findObject x
+  saveAs (ETLegendEntry x) = saveAs x
+  write (ETLegendEntry x) = write x
+  isA (ETLegendEntry x) = isA x
+  printObj (ETLegendEntry x) = printObj x
+
+instance ITAttText (Exist TLegendEntry) where
+  setTextColor (ETLegendEntry x) = setTextColor x
+  setTextAlign (ETLegendEntry x) = setTextAlign x
+  setTextSize (ETLegendEntry x) = setTextSize x
+
+instance ITAttLine (Exist TLegendEntry) where
+  setLineColor (ETLegendEntry x) = setLineColor x
+
+instance ITAttFill (Exist TLegendEntry) where
+  setFillColor (ETLegendEntry x) = setFillColor x
+  setFillStyle (ETLegendEntry x) = setFillStyle x
+
+instance ITAttMarker (Exist TLegendEntry) where
+
+
+instance IDeletable (Exist TLegendEntry) where
+  delete (ETLegendEntry x) = delete x
+
+instance ITPaveLabel (Exist TPaveLabel) where
+
+
+instance ITPave (Exist TPaveLabel) where
+
+
+instance ITAttText (Exist TPaveLabel) where
+  setTextColor (ETPaveLabel x) = setTextColor x
+  setTextAlign (ETPaveLabel x) = setTextAlign x
+  setTextSize (ETPaveLabel x) = setTextSize x
+
+instance ITBox (Exist TPaveLabel) where
+
+
+instance ITObject (Exist TPaveLabel) where
+  getName (ETPaveLabel x) = getName x
+  draw (ETPaveLabel x) = draw x
+  findObject (ETPaveLabel x) = findObject x
+  saveAs (ETPaveLabel x) = saveAs x
+  write (ETPaveLabel x) = write x
+  isA (ETPaveLabel x) = isA x
+  printObj (ETPaveLabel x) = printObj x
+
+instance ITAttLine (Exist TPaveLabel) where
+  setLineColor (ETPaveLabel x) = setLineColor x
+
+instance ITAttFill (Exist TPaveLabel) where
+  setFillColor (ETPaveLabel x) = setFillColor x
+  setFillStyle (ETPaveLabel x) = setFillStyle x
+
+instance IDeletable (Exist TPaveLabel) where
+  delete (ETPaveLabel x) = delete x
+
+instance ITPaveClass (Exist TPaveClass) where
+
+
+instance ITPaveLabel (Exist TPaveClass) where
+
+
+instance ITPave (Exist TPaveClass) where
+
+
+instance ITAttText (Exist TPaveClass) where
+  setTextColor (ETPaveClass x) = setTextColor x
+  setTextAlign (ETPaveClass x) = setTextAlign x
+  setTextSize (ETPaveClass x) = setTextSize x
+
+instance ITBox (Exist TPaveClass) where
+
+
+instance ITObject (Exist TPaveClass) where
+  getName (ETPaveClass x) = getName x
+  draw (ETPaveClass x) = draw x
+  findObject (ETPaveClass x) = findObject x
+  saveAs (ETPaveClass x) = saveAs x
+  write (ETPaveClass x) = write x
+  isA (ETPaveClass x) = isA x
+  printObj (ETPaveClass x) = printObj x
+
+instance ITAttLine (Exist TPaveClass) where
+  setLineColor (ETPaveClass x) = setLineColor x
+
+instance ITAttFill (Exist TPaveClass) where
+  setFillColor (ETPaveClass x) = setFillColor x
+  setFillStyle (ETPaveClass x) = setFillStyle x
+
+instance IDeletable (Exist TPaveClass) where
+  delete (ETPaveClass x) = delete x
+
+instance ITWbox (Exist TWbox) where
+  setBorderMode (ETWbox x) = setBorderMode x
+
+instance ITBox (Exist TWbox) where
+
+
+instance ITObject (Exist TWbox) where
+  getName (ETWbox x) = getName x
+  draw (ETWbox x) = draw x
+  findObject (ETWbox x) = findObject x
+  saveAs (ETWbox x) = saveAs x
+  write (ETWbox x) = write x
+  isA (ETWbox x) = isA x
+  printObj (ETWbox x) = printObj x
+
+instance ITAttLine (Exist TWbox) where
+  setLineColor (ETWbox x) = setLineColor x
+
+instance ITAttFill (Exist TWbox) where
+  setFillColor (ETWbox x) = setFillColor x
+  setFillStyle (ETWbox x) = setFillStyle x
+
+instance IDeletable (Exist TWbox) where
+  delete (ETWbox x) = delete x
+
+instance ITFrame (Exist TFrame) where
+
+
+instance ITWbox (Exist TFrame) where
+  setBorderMode (ETFrame x) = setBorderMode x
+
+instance ITBox (Exist TFrame) where
+
+
+instance ITObject (Exist TFrame) where
+  getName (ETFrame x) = getName x
+  draw (ETFrame x) = draw x
+  findObject (ETFrame x) = findObject x
+  saveAs (ETFrame x) = saveAs x
+  write (ETFrame x) = write x
+  isA (ETFrame x) = isA x
+  printObj (ETFrame x) = printObj x
+
+instance ITAttLine (Exist TFrame) where
+  setLineColor (ETFrame x) = setLineColor x
+
+instance ITAttFill (Exist TFrame) where
+  setFillColor (ETFrame x) = setFillColor x
+  setFillStyle (ETFrame x) = setFillStyle x
+
+instance IDeletable (Exist TFrame) where
+  delete (ETFrame x) = delete x
+
+instance ITSliderBox (Exist TSliderBox) where
+
+
+instance ITWbox (Exist TSliderBox) where
+  setBorderMode (ETSliderBox x) = setBorderMode x
+
+instance ITBox (Exist TSliderBox) where
+
+
+instance ITObject (Exist TSliderBox) where
+  getName (ETSliderBox x) = getName x
+  draw (ETSliderBox x) = draw x
+  findObject (ETSliderBox x) = findObject x
+  saveAs (ETSliderBox x) = saveAs x
+  write (ETSliderBox x) = write x
+  isA (ETSliderBox x) = isA x
+  printObj (ETSliderBox x) = printObj x
+
+instance ITAttLine (Exist TSliderBox) where
+  setLineColor (ETSliderBox x) = setLineColor x
+
+instance ITAttFill (Exist TSliderBox) where
+  setFillColor (ETSliderBox x) = setFillColor x
+  setFillStyle (ETSliderBox x) = setFillStyle x
+
+instance IDeletable (Exist TSliderBox) where
+  delete (ETSliderBox x) = delete x
+
+instance ITTree (Exist TTree) where
+
+
+instance ITNamed (Exist TTree) where
+  setName (ETTree x) = setName x
+  setNameTitle (ETTree x) = setNameTitle x
+  setTitle (ETTree x) = setTitle x
+
+instance ITAttLine (Exist TTree) where
+  setLineColor (ETTree x) = setLineColor x
+
+instance ITAttFill (Exist TTree) where
+  setFillColor (ETTree x) = setFillColor x
+  setFillStyle (ETTree x) = setFillStyle x
+
+instance ITAttMarker (Exist TTree) where
+
+
+instance ITObject (Exist TTree) where
+  getName (ETTree x) = getName x
+  draw (ETTree x) = draw x
+  findObject (ETTree x) = findObject x
+  saveAs (ETTree x) = saveAs x
+  write (ETTree x) = write x
+  isA (ETTree x) = isA x
+  printObj (ETTree x) = printObj x
+
+instance IDeletable (Exist TTree) where
+  delete (ETTree x) = delete x
+
+instance ITChain (Exist TChain) where
+
+
+instance ITTree (Exist TChain) where
+
+
+instance ITNamed (Exist TChain) where
+  setName (ETChain x) = setName x
+  setNameTitle (ETChain x) = setNameTitle x
+  setTitle (ETChain x) = setTitle x
+
+instance ITAttLine (Exist TChain) where
+  setLineColor (ETChain x) = setLineColor x
+
+instance ITAttFill (Exist TChain) where
+  setFillColor (ETChain x) = setFillColor x
+  setFillStyle (ETChain x) = setFillStyle x
+
+instance ITAttMarker (Exist TChain) where
+
+
+instance ITObject (Exist TChain) where
+  getName (ETChain x) = getName x
+  draw (ETChain x) = draw x
+  findObject (ETChain x) = findObject x
+  saveAs (ETChain x) = saveAs x
+  write (ETChain x) = write x
+  isA (ETChain x) = isA x
+  printObj (ETChain x) = printObj x
+
+instance IDeletable (Exist TChain) where
+  delete (ETChain x) = delete x
+
+instance ITNtuple (Exist TNtuple) where
+
+
+instance ITTree (Exist TNtuple) where
+
+
+instance ITNamed (Exist TNtuple) where
+  setName (ETNtuple x) = setName x
+  setNameTitle (ETNtuple x) = setNameTitle x
+  setTitle (ETNtuple x) = setTitle x
+
+instance ITAttLine (Exist TNtuple) where
+  setLineColor (ETNtuple x) = setLineColor x
+
+instance ITAttFill (Exist TNtuple) where
+  setFillColor (ETNtuple x) = setFillColor x
+  setFillStyle (ETNtuple x) = setFillStyle x
+
+instance ITAttMarker (Exist TNtuple) where
+
+
+instance ITObject (Exist TNtuple) where
+  getName (ETNtuple x) = getName x
+  draw (ETNtuple x) = draw x
+  findObject (ETNtuple x) = findObject x
+  saveAs (ETNtuple x) = saveAs x
+  write (ETNtuple x) = write x
+  isA (ETNtuple x) = isA x
+  printObj (ETNtuple x) = printObj x
+
+instance IDeletable (Exist TNtuple) where
+  delete (ETNtuple x) = delete x
+
+instance ITNtupleD (Exist TNtupleD) where
+
+
+instance ITTree (Exist TNtupleD) where
+
+
+instance ITNamed (Exist TNtupleD) where
+  setName (ETNtupleD x) = setName x
+  setNameTitle (ETNtupleD x) = setNameTitle x
+  setTitle (ETNtupleD x) = setTitle x
+
+instance ITAttLine (Exist TNtupleD) where
+  setLineColor (ETNtupleD x) = setLineColor x
+
+instance ITAttFill (Exist TNtupleD) where
+  setFillColor (ETNtupleD x) = setFillColor x
+  setFillStyle (ETNtupleD x) = setFillStyle x
+
+instance ITAttMarker (Exist TNtupleD) where
+
+
+instance ITObject (Exist TNtupleD) where
+  getName (ETNtupleD x) = getName x
+  draw (ETNtupleD x) = draw x
+  findObject (ETNtupleD x) = findObject x
+  saveAs (ETNtupleD x) = saveAs x
+  write (ETNtupleD x) = write x
+  isA (ETNtupleD x) = isA x
+  printObj (ETNtupleD x) = printObj x
+
+instance IDeletable (Exist TNtupleD) where
+  delete (ETNtupleD x) = delete x
+
+instance ITTreeSQL (Exist TTreeSQL) where
+
+
+instance ITTree (Exist TTreeSQL) where
+
+
+instance ITNamed (Exist TTreeSQL) where
+  setName (ETTreeSQL x) = setName x
+  setNameTitle (ETTreeSQL x) = setNameTitle x
+  setTitle (ETTreeSQL x) = setTitle x
+
+instance ITAttLine (Exist TTreeSQL) where
+  setLineColor (ETTreeSQL x) = setLineColor x
+
+instance ITAttFill (Exist TTreeSQL) where
+  setFillColor (ETTreeSQL x) = setFillColor x
+  setFillStyle (ETTreeSQL x) = setFillStyle x
+
+instance ITAttMarker (Exist TTreeSQL) where
+
+
+instance ITObject (Exist TTreeSQL) where
+  getName (ETTreeSQL x) = getName x
+  draw (ETTreeSQL x) = draw x
+  findObject (ETTreeSQL x) = findObject x
+  saveAs (ETTreeSQL x) = saveAs x
+  write (ETTreeSQL x) = write x
+  isA (ETTreeSQL x) = isA x
+  printObj (ETTreeSQL x) = printObj x
+
+instance IDeletable (Exist TTreeSQL) where
+  delete (ETTreeSQL x) = delete x
+
+instance ITPolyLine (Exist TPolyLine) where
+
+
+instance ITObject (Exist TPolyLine) where
+  getName (ETPolyLine x) = getName x
+  draw (ETPolyLine x) = draw x
+  findObject (ETPolyLine x) = findObject x
+  saveAs (ETPolyLine x) = saveAs x
+  write (ETPolyLine x) = write x
+  isA (ETPolyLine x) = isA x
+  printObj (ETPolyLine x) = printObj x
+
+instance ITAttLine (Exist TPolyLine) where
+  setLineColor (ETPolyLine x) = setLineColor x
+
+instance ITAttFill (Exist TPolyLine) where
+  setFillColor (ETPolyLine x) = setFillColor x
+  setFillStyle (ETPolyLine x) = setFillStyle x
+
+instance IDeletable (Exist TPolyLine) where
+  delete (ETPolyLine x) = delete x
+
+instance ITCurlyLine (Exist TCurlyLine) where
+
+
+instance ITPolyLine (Exist TCurlyLine) where
+
+
+instance ITObject (Exist TCurlyLine) where
+  getName (ETCurlyLine x) = getName x
+  draw (ETCurlyLine x) = draw x
+  findObject (ETCurlyLine x) = findObject x
+  saveAs (ETCurlyLine x) = saveAs x
+  write (ETCurlyLine x) = write x
+  isA (ETCurlyLine x) = isA x
+  printObj (ETCurlyLine x) = printObj x
+
+instance ITAttLine (Exist TCurlyLine) where
+  setLineColor (ETCurlyLine x) = setLineColor x
+
+instance ITAttFill (Exist TCurlyLine) where
+  setFillColor (ETCurlyLine x) = setFillColor x
+  setFillStyle (ETCurlyLine x) = setFillStyle x
+
+instance IDeletable (Exist TCurlyLine) where
+  delete (ETCurlyLine x) = delete x
+
+instance ITCurlyArc (Exist TCurlyArc) where
+
+
+instance ITCurlyLine (Exist TCurlyArc) where
+
+
+instance ITPolyLine (Exist TCurlyArc) where
+
+
+instance ITObject (Exist TCurlyArc) where
+  getName (ETCurlyArc x) = getName x
+  draw (ETCurlyArc x) = draw x
+  findObject (ETCurlyArc x) = findObject x
+  saveAs (ETCurlyArc x) = saveAs x
+  write (ETCurlyArc x) = write x
+  isA (ETCurlyArc x) = isA x
+  printObj (ETCurlyArc x) = printObj x
+
+instance ITAttLine (Exist TCurlyArc) where
+  setLineColor (ETCurlyArc x) = setLineColor x
+
+instance ITAttFill (Exist TCurlyArc) where
+  setFillColor (ETCurlyArc x) = setFillColor x
+  setFillStyle (ETCurlyArc x) = setFillStyle x
+
+instance IDeletable (Exist TCurlyArc) where
+  delete (ETCurlyArc x) = delete x
+
+instance ITEfficiency (Exist TEfficiency) where
+
+
+instance ITNamed (Exist TEfficiency) where
+  setName (ETEfficiency x) = setName x
+  setNameTitle (ETEfficiency x) = setNameTitle x
+  setTitle (ETEfficiency x) = setTitle x
+
+instance ITAttLine (Exist TEfficiency) where
+  setLineColor (ETEfficiency x) = setLineColor x
+
+instance ITAttFill (Exist TEfficiency) where
+  setFillColor (ETEfficiency x) = setFillColor x
+  setFillStyle (ETEfficiency x) = setFillStyle x
+
+instance ITAttMarker (Exist TEfficiency) where
+
+
+instance ITObject (Exist TEfficiency) where
+  getName (ETEfficiency x) = getName x
+  draw (ETEfficiency x) = draw x
+  findObject (ETEfficiency x) = findObject x
+  saveAs (ETEfficiency x) = saveAs x
+  write (ETEfficiency x) = write x
+  isA (ETEfficiency x) = isA x
+  printObj (ETEfficiency x) = printObj x
+
+instance IDeletable (Exist TEfficiency) where
+  delete (ETEfficiency x) = delete x
+
+instance ITAxis (Exist TAxis) where
+  setTimeDisplay (ETAxis x) = setTimeDisplay x
+  setTimeFormat (ETAxis x) = setTimeFormat x
+  setTimeOffset (ETAxis x) = setTimeOffset x
+
+instance ITNamed (Exist TAxis) where
+  setName (ETAxis x) = setName x
+  setNameTitle (ETAxis x) = setNameTitle x
+  setTitle (ETAxis x) = setTitle x
+
+instance ITAttAxis (Exist TAxis) where
+  getNdivisions (ETAxis x) = getNdivisions x
+  getAxisColor (ETAxis x) = getAxisColor x
+  getLabelColor (ETAxis x) = getLabelColor x
+  getLabelFont (ETAxis x) = getLabelFont x
+  getLabelOffset (ETAxis x) = getLabelOffset x
+  getLabelSize (ETAxis x) = getLabelSize x
+  getTitleOffset (ETAxis x) = getTitleOffset x
+  getTitleSize (ETAxis x) = getTitleSize x
+  getTickLength (ETAxis x) = getTickLength x
+  getTitleFont (ETAxis x) = getTitleFont x
+  setNdivisions (ETAxis x) = setNdivisions x
+  setAxisColor (ETAxis x) = setAxisColor x
+  setLabelColor (ETAxis x) = setLabelColor x
+  setLabelFont (ETAxis x) = setLabelFont x
+  setLabelOffset (ETAxis x) = setLabelOffset x
+  setLabelSize (ETAxis x) = setLabelSize x
+  setTickLength (ETAxis x) = setTickLength x
+  setTitleOffset (ETAxis x) = setTitleOffset x
+  setTitleSize (ETAxis x) = setTitleSize x
+  setTitleColor (ETAxis x) = setTitleColor x
+  setTitleFont (ETAxis x) = setTitleFont x
+
+instance ITObject (Exist TAxis) where
+  getName (ETAxis x) = getName x
+  draw (ETAxis x) = draw x
+  findObject (ETAxis x) = findObject x
+  saveAs (ETAxis x) = saveAs x
+  write (ETAxis x) = write x
+  isA (ETAxis x) = isA x
+  printObj (ETAxis x) = printObj x
+
+instance IDeletable (Exist TAxis) where
+  delete (ETAxis x) = delete x
+
+instance ITLatex (Exist TLatex) where
+
+
+instance ITText (Exist TLatex) where
+
+
+instance ITAttLine (Exist TLatex) where
+  setLineColor (ETLatex x) = setLineColor x
+
+instance ITNamed (Exist TLatex) where
+  setName (ETLatex x) = setName x
+  setNameTitle (ETLatex x) = setNameTitle x
+  setTitle (ETLatex x) = setTitle x
+
+instance ITAttText (Exist TLatex) where
+  setTextColor (ETLatex x) = setTextColor x
+  setTextAlign (ETLatex x) = setTextAlign x
+  setTextSize (ETLatex x) = setTextSize x
+
+instance ITObject (Exist TLatex) where
+  getName (ETLatex x) = getName x
+  draw (ETLatex x) = draw x
+  findObject (ETLatex x) = findObject x
+  saveAs (ETLatex x) = saveAs x
+  write (ETLatex x) = write x
+  isA (ETLatex x) = isA x
+  printObj (ETLatex x) = printObj x
+
+instance IDeletable (Exist TLatex) where
+  delete (ETLatex x) = delete x
+
+instance ITText (Exist TText) where
+
+
+instance ITNamed (Exist TText) where
+  setName (ETText x) = setName x
+  setNameTitle (ETText x) = setNameTitle x
+  setTitle (ETText x) = setTitle x
+
+instance ITAttText (Exist TText) where
+  setTextColor (ETText x) = setTextColor x
+  setTextAlign (ETText x) = setTextAlign x
+  setTextSize (ETText x) = setTextSize x
+
+instance ITObject (Exist TText) where
+  getName (ETText x) = getName x
+  draw (ETText x) = draw x
+  findObject (ETText x) = findObject x
+  saveAs (ETText x) = saveAs x
+  write (ETText x) = write x
+  isA (ETText x) = isA x
+  printObj (ETText x) = printObj x
+
+instance IDeletable (Exist TText) where
+  delete (ETText x) = delete x
+
+instance ITDirectory (Exist TDirectory) where
+  append (ETDirectory x) = append x
+  addD (ETDirectory x) = addD x
+  appendKey (ETDirectory x) = appendKey x
+  close (ETDirectory x) = close x
+  get (ETDirectory x) = get x
+
+instance ITNamed (Exist TDirectory) where
+  setName (ETDirectory x) = setName x
+  setNameTitle (ETDirectory x) = setNameTitle x
+  setTitle (ETDirectory x) = setTitle x
+
+instance ITObject (Exist TDirectory) where
+  getName (ETDirectory x) = getName x
+  draw (ETDirectory x) = draw x
+  findObject (ETDirectory x) = findObject x
+  saveAs (ETDirectory x) = saveAs x
+  write (ETDirectory x) = write x
+  isA (ETDirectory x) = isA x
+  printObj (ETDirectory x) = printObj x
+
+instance IDeletable (Exist TDirectory) where
+  delete (ETDirectory x) = delete x
+
+instance ITDirectoryFile (Exist TDirectoryFile) where
+  getListOfKeys (ETDirectoryFile x) = getListOfKeys x
+
+instance ITDirectory (Exist TDirectoryFile) where
+  append (ETDirectoryFile x) = append x
+  addD (ETDirectoryFile x) = addD x
+  appendKey (ETDirectoryFile x) = appendKey x
+  close (ETDirectoryFile x) = close x
+  get (ETDirectoryFile x) = get x
+
+instance ITNamed (Exist TDirectoryFile) where
+  setName (ETDirectoryFile x) = setName x
+  setNameTitle (ETDirectoryFile x) = setNameTitle x
+  setTitle (ETDirectoryFile x) = setTitle x
+
+instance ITObject (Exist TDirectoryFile) where
+  getName (ETDirectoryFile x) = getName x
+  draw (ETDirectoryFile x) = draw x
+  findObject (ETDirectoryFile x) = findObject x
+  saveAs (ETDirectoryFile x) = saveAs x
+  write (ETDirectoryFile x) = write x
+  isA (ETDirectoryFile x) = isA x
+  printObj (ETDirectoryFile x) = printObj x
+
+instance IDeletable (Exist TDirectoryFile) where
+  delete (ETDirectoryFile x) = delete x
+
+instance ITFile (Exist TFile) where
+
+
+instance ITDirectoryFile (Exist TFile) where
+  getListOfKeys (ETFile x) = getListOfKeys x
+
+instance ITDirectory (Exist TFile) where
+  append (ETFile x) = append x
+  addD (ETFile x) = addD x
+  appendKey (ETFile x) = appendKey x
+  close (ETFile x) = close x
+  get (ETFile x) = get x
+
+instance ITNamed (Exist TFile) where
+  setName (ETFile x) = setName x
+  setNameTitle (ETFile x) = setNameTitle x
+  setTitle (ETFile x) = setTitle x
+
+instance ITObject (Exist TFile) where
+  getName (ETFile x) = getName x
+  draw (ETFile x) = draw x
+  findObject (ETFile x) = findObject x
+  saveAs (ETFile x) = saveAs x
+  write (ETFile x) = write x
+  isA (ETFile x) = isA x
+  printObj (ETFile x) = printObj x
+
+instance IDeletable (Exist TFile) where
+  delete (ETFile x) = delete x
+
+instance ITBranch (Exist TBranch) where
+
+
+instance ITNamed (Exist TBranch) where
+  setName (ETBranch x) = setName x
+  setNameTitle (ETBranch x) = setNameTitle x
+  setTitle (ETBranch x) = setTitle x
+
+instance ITAttFill (Exist TBranch) where
+  setFillColor (ETBranch x) = setFillColor x
+  setFillStyle (ETBranch x) = setFillStyle x
+
+instance ITObject (Exist TBranch) where
+  getName (ETBranch x) = getName x
+  draw (ETBranch x) = draw x
+  findObject (ETBranch x) = findObject x
+  saveAs (ETBranch x) = saveAs x
+  write (ETBranch x) = write x
+  isA (ETBranch x) = isA x
+  printObj (ETBranch x) = printObj x
+
+instance IDeletable (Exist TBranch) where
+  delete (ETBranch x) = delete x
+
+instance ITVirtualTreePlayer (Exist TVirtualTreePlayer) where
+
+
+instance ITObject (Exist TVirtualTreePlayer) where
+  getName (ETVirtualTreePlayer x) = getName x
+  draw (ETVirtualTreePlayer x) = draw x
+  findObject (ETVirtualTreePlayer x) = findObject x
+  saveAs (ETVirtualTreePlayer x) = saveAs x
+  write (ETVirtualTreePlayer x) = write x
+  isA (ETVirtualTreePlayer x) = isA x
+  printObj (ETVirtualTreePlayer x) = printObj x
+
+instance IDeletable (Exist TVirtualTreePlayer) where
+  delete (ETVirtualTreePlayer x) = delete x
+
+instance ITTreePlayer (Exist TTreePlayer) where
+
+
+instance ITVirtualTreePlayer (Exist TTreePlayer) where
+
+
+instance ITObject (Exist TTreePlayer) where
+  getName (ETTreePlayer x) = getName x
+  draw (ETTreePlayer x) = draw x
+  findObject (ETTreePlayer x) = findObject x
+  saveAs (ETTreePlayer x) = saveAs x
+  write (ETTreePlayer x) = write x
+  isA (ETTreePlayer x) = isA x
+  printObj (ETTreePlayer x) = printObj x
+
+instance IDeletable (Exist TTreePlayer) where
+  delete (ETTreePlayer x) = delete x
+
+instance ITArray (Exist TArray) where
+
+
+instance IDeletable (Exist TArray) where
+  delete (ETArray x) = delete x
+
+instance ITArrayC (Exist TArrayC) where
+
+
+instance ITArray (Exist TArrayC) where
+
+
+instance IDeletable (Exist TArrayC) where
+  delete (ETArrayC x) = delete x
+
+instance ITArrayD (Exist TArrayD) where
+
+
+instance ITArray (Exist TArrayD) where
+
+
+instance IDeletable (Exist TArrayD) where
+  delete (ETArrayD x) = delete x
+
+instance ITArrayF (Exist TArrayF) where
+
+
+instance ITArray (Exist TArrayF) where
+
+
+instance IDeletable (Exist TArrayF) where
+  delete (ETArrayF x) = delete x
+
+instance ITArrayI (Exist TArrayI) where
+
+
+instance ITArray (Exist TArrayI) where
+
+
+instance IDeletable (Exist TArrayI) where
+  delete (ETArrayI x) = delete x
+
+instance ITArrayL (Exist TArrayL) where
+
+
+instance ITArray (Exist TArrayL) where
+
+
+instance IDeletable (Exist TArrayL) where
+  delete (ETArrayL x) = delete x
+
+instance ITArrayL64 (Exist TArrayL64) where
+
+
+instance ITArray (Exist TArrayL64) where
+
+
+instance IDeletable (Exist TArrayL64) where
+  delete (ETArrayL64 x) = delete x
+
+instance ITArrayS (Exist TArrayS) where
+
+
+instance ITArray (Exist TArrayS) where
+
+
+instance IDeletable (Exist TArrayS) where
+  delete (ETArrayS x) = delete x
+
+instance ITH1 (Exist TH1) where
+  add (ETH1 x) = add x
+  addBinContent (ETH1 x) = addBinContent x
+  chi2Test (ETH1 x) = chi2Test x
+  computeIntegral (ETH1 x) = computeIntegral x
+  directoryAutoAdd (ETH1 x) = directoryAutoAdd x
+  distancetoPrimitive (ETH1 x) = distancetoPrimitive x
+  divide (ETH1 x) = divide x
+  drawCopy (ETH1 x) a1 = return . ETH1 =<< drawCopy x a1
+  drawNormalized (ETH1 x) = drawNormalized x
+  drawPanel (ETH1 x) = drawPanel x
+  bufferEmpty (ETH1 x) = bufferEmpty x
+  eval (ETH1 x) = eval x
+  executeEvent (ETH1 x) = executeEvent x
+  fFT (ETH1 x) = fFT x
+  fill1 (ETH1 x) = fill1 x
+  fillN (ETH1 x) = fillN x
+  fillRandom (ETH1 x) = fillRandom x
+  findBin (ETH1 x) = findBin x
+  findFixBin (ETH1 x) = findFixBin x
+  findFirstBinAbove (ETH1 x) = findFirstBinAbove x
+  findLastBinAbove (ETH1 x) = findLastBinAbove x
+  fitPanel (ETH1 x) = fitPanel x
+  getNdivisionA (ETH1 x) = getNdivisionA x
+  getAxisColorA (ETH1 x) = getAxisColorA x
+  getLabelColorA (ETH1 x) = getLabelColorA x
+  getLabelFontA (ETH1 x) = getLabelFontA x
+  getLabelOffsetA (ETH1 x) = getLabelOffsetA x
+  getLabelSizeA (ETH1 x) = getLabelSizeA x
+  getTitleFontA (ETH1 x) = getTitleFontA x
+  getTitleOffsetA (ETH1 x) = getTitleOffsetA x
+  getTitleSizeA (ETH1 x) = getTitleSizeA x
+  getTickLengthA (ETH1 x) = getTickLengthA x
+  getBarOffset (ETH1 x) = getBarOffset x
+  getBarWidth (ETH1 x) = getBarWidth x
+  getContour (ETH1 x) = getContour x
+  getContourLevel (ETH1 x) = getContourLevel x
+  getContourLevelPad (ETH1 x) = getContourLevelPad x
+  getBin (ETH1 x) = getBin x
+  getBinCenter (ETH1 x) = getBinCenter x
+  getBinContent1 (ETH1 x) = getBinContent1 x
+  getBinContent2 (ETH1 x) = getBinContent2 x
+  getBinContent3 (ETH1 x) = getBinContent3 x
+  getBinError1 (ETH1 x) = getBinError1 x
+  getBinError2 (ETH1 x) = getBinError2 x
+  getBinError3 (ETH1 x) = getBinError3 x
+  getBinLowEdge (ETH1 x) = getBinLowEdge x
+  getBinWidth (ETH1 x) = getBinWidth x
+  getCellContent (ETH1 x) = getCellContent x
+  getCellError (ETH1 x) = getCellError x
+  getEntries (ETH1 x) = getEntries x
+  getEffectiveEntries (ETH1 x) = getEffectiveEntries x
+  getFunction (ETH1 x) = getFunction x
+  getDimension (ETH1 x) = getDimension x
+  getKurtosis (ETH1 x) = getKurtosis x
+  getLowEdge (ETH1 x) = getLowEdge x
+  getMaximum (ETH1 x) = getMaximum x
+  getMaximumBin (ETH1 x) = getMaximumBin x
+  getMaximumStored (ETH1 x) = getMaximumStored x
+  getMinimum (ETH1 x) = getMinimum x
+  getMinimumBin (ETH1 x) = getMinimumBin x
+  getMinimumStored (ETH1 x) = getMinimumStored x
+  getMean (ETH1 x) = getMean x
+  getMeanError (ETH1 x) = getMeanError x
+  getNbinsX (ETH1 x) = getNbinsX x
+  getNbinsY (ETH1 x) = getNbinsY x
+  getNbinsZ (ETH1 x) = getNbinsZ x
+  getQuantiles (ETH1 x) = getQuantiles x
+  getRandom (ETH1 x) = getRandom x
+  getStats (ETH1 x) = getStats x
+  getSumOfWeights (ETH1 x) = getSumOfWeights x
+  getSumw2 (ETH1 x) = getSumw2 x
+  getSumw2N (ETH1 x) = getSumw2N x
+  getRMS (ETH1 x) = getRMS x
+  getRMSError (ETH1 x) = getRMSError x
+  getSkewness (ETH1 x) = getSkewness x
+  integral1 (ETH1 x) = integral1 x
+  interpolate1 (ETH1 x) = interpolate1 x
+  interpolate2 (ETH1 x) = interpolate2 x
+  interpolate3 (ETH1 x) = interpolate3 x
+  kolmogorovTest (ETH1 x) = kolmogorovTest x
+  labelsDeflate (ETH1 x) = labelsDeflate x
+  labelsInflate (ETH1 x) = labelsInflate x
+  labelsOption (ETH1 x) = labelsOption x
+  multiflyF (ETH1 x) = multiflyF x
+  multiply (ETH1 x) = multiply x
+  paint (ETH1 x) = paint x
+  putStats (ETH1 x) = putStats x
+  rebin (ETH1 x) = rebin x
+  rebinAxis (ETH1 x) = rebinAxis x
+  rebuild (ETH1 x) = rebuild x
+  recursiveRemove (ETH1 x) = recursiveRemove x
+  reset (ETH1 x) = reset x
+  resetStats (ETH1 x) = resetStats x
+  scale (ETH1 x) = scale x
+  setAxisColorA (ETH1 x) = setAxisColorA x
+  setAxisRange (ETH1 x) = setAxisRange x
+  setBarOffset (ETH1 x) = setBarOffset x
+  setBarWidth (ETH1 x) = setBarWidth x
+  setBinContent1 (ETH1 x) = setBinContent1 x
+  setBinContent2 (ETH1 x) = setBinContent2 x
+  setBinContent3 (ETH1 x) = setBinContent3 x
+  setBinError1 (ETH1 x) = setBinError1 x
+  setBinError2 (ETH1 x) = setBinError2 x
+  setBinError3 (ETH1 x) = setBinError3 x
+  setBins1 (ETH1 x) = setBins1 x
+  setBins2 (ETH1 x) = setBins2 x
+  setBins3 (ETH1 x) = setBins3 x
+  setBinsLength (ETH1 x) = setBinsLength x
+  setBuffer (ETH1 x) = setBuffer x
+  setCellContent (ETH1 x) = setCellContent x
+  setContent (ETH1 x) = setContent x
+  setContour (ETH1 x) = setContour x
+  setContourLevel (ETH1 x) = setContourLevel x
+  setDirectory (ETH1 x) = setDirectory x
+  setEntries (ETH1 x) = setEntries x
+  setError (ETH1 x) = setError x
+  setLabelColorA (ETH1 x) = setLabelColorA x
+  setLabelSizeA (ETH1 x) = setLabelSizeA x
+  setLabelFontA (ETH1 x) = setLabelFontA x
+  setLabelOffsetA (ETH1 x) = setLabelOffsetA x
+  setMaximum (ETH1 x) = setMaximum x
+  setMinimum (ETH1 x) = setMinimum x
+  setNormFactor (ETH1 x) = setNormFactor x
+  setStats (ETH1 x) = setStats x
+  setOption (ETH1 x) = setOption x
+  setXTitle (ETH1 x) = setXTitle x
+  setYTitle (ETH1 x) = setYTitle x
+  setZTitle (ETH1 x) = setZTitle x
+  showBackground (ETH1 x) = showBackground x
+  showPeaks (ETH1 x) = showPeaks x
+  smooth (ETH1 x) = smooth x
+  sumw2 (ETH1 x) = sumw2 x
+
+instance ITNamed (Exist TH1) where
+  setName (ETH1 x) = setName x
+  setNameTitle (ETH1 x) = setNameTitle x
+  setTitle (ETH1 x) = setTitle x
+
+instance ITAttLine (Exist TH1) where
+  setLineColor (ETH1 x) = setLineColor x
+
+instance ITAttFill (Exist TH1) where
+  setFillColor (ETH1 x) = setFillColor x
+  setFillStyle (ETH1 x) = setFillStyle x
+
+instance ITAttMarker (Exist TH1) where
+
+
+instance ITObject (Exist TH1) where
+  getName (ETH1 x) = getName x
+  draw (ETH1 x) = draw x
+  findObject (ETH1 x) = findObject x
+  saveAs (ETH1 x) = saveAs x
+  write (ETH1 x) = write x
+  isA (ETH1 x) = isA x
+  printObj (ETH1 x) = printObj x
+
+instance IDeletable (Exist TH1) where
+  delete (ETH1 x) = delete x
+
+instance ITH2 (Exist TH2) where
+  fill2 (ETH2 x) = fill2 x
+  fillRandom2 (ETH2 x) = fillRandom2 x
+  findFirstBinAbove2 (ETH2 x) = findFirstBinAbove2 x
+  findLastBinAbove2 (ETH2 x) = findLastBinAbove2 x
+  fitSlicesX (ETH2 x) = fitSlicesX x
+  fitSlicesY (ETH2 x) = fitSlicesY x
+  getCorrelationFactor (ETH2 x) = getCorrelationFactor x
+  getCovariance (ETH2 x) = getCovariance x
+  integral2 (ETH2 x) = integral2 x
+  rebinX (ETH2 x) = rebinX x
+  rebinY (ETH2 x) = rebinY x
+  rebin2D (ETH2 x) = rebin2D x
+  setShowProjectionX (ETH2 x) = setShowProjectionX x
+  setShowProjectionY (ETH2 x) = setShowProjectionY x
+
+instance ITH1 (Exist TH2) where
+  add (ETH2 x) = add x
+  addBinContent (ETH2 x) = addBinContent x
+  chi2Test (ETH2 x) = chi2Test x
+  computeIntegral (ETH2 x) = computeIntegral x
+  directoryAutoAdd (ETH2 x) = directoryAutoAdd x
+  distancetoPrimitive (ETH2 x) = distancetoPrimitive x
+  divide (ETH2 x) = divide x
+  drawCopy (ETH2 x) a1 = return . ETH2 =<< drawCopy x a1
+  drawNormalized (ETH2 x) = drawNormalized x
+  drawPanel (ETH2 x) = drawPanel x
+  bufferEmpty (ETH2 x) = bufferEmpty x
+  eval (ETH2 x) = eval x
+  executeEvent (ETH2 x) = executeEvent x
+  fFT (ETH2 x) = fFT x
+  fill1 (ETH2 x) = fill1 x
+  fillN (ETH2 x) = fillN x
+  fillRandom (ETH2 x) = fillRandom x
+  findBin (ETH2 x) = findBin x
+  findFixBin (ETH2 x) = findFixBin x
+  findFirstBinAbove (ETH2 x) = findFirstBinAbove x
+  findLastBinAbove (ETH2 x) = findLastBinAbove x
+  fitPanel (ETH2 x) = fitPanel x
+  getNdivisionA (ETH2 x) = getNdivisionA x
+  getAxisColorA (ETH2 x) = getAxisColorA x
+  getLabelColorA (ETH2 x) = getLabelColorA x
+  getLabelFontA (ETH2 x) = getLabelFontA x
+  getLabelOffsetA (ETH2 x) = getLabelOffsetA x
+  getLabelSizeA (ETH2 x) = getLabelSizeA x
+  getTitleFontA (ETH2 x) = getTitleFontA x
+  getTitleOffsetA (ETH2 x) = getTitleOffsetA x
+  getTitleSizeA (ETH2 x) = getTitleSizeA x
+  getTickLengthA (ETH2 x) = getTickLengthA x
+  getBarOffset (ETH2 x) = getBarOffset x
+  getBarWidth (ETH2 x) = getBarWidth x
+  getContour (ETH2 x) = getContour x
+  getContourLevel (ETH2 x) = getContourLevel x
+  getContourLevelPad (ETH2 x) = getContourLevelPad x
+  getBin (ETH2 x) = getBin x
+  getBinCenter (ETH2 x) = getBinCenter x
+  getBinContent1 (ETH2 x) = getBinContent1 x
+  getBinContent2 (ETH2 x) = getBinContent2 x
+  getBinContent3 (ETH2 x) = getBinContent3 x
+  getBinError1 (ETH2 x) = getBinError1 x
+  getBinError2 (ETH2 x) = getBinError2 x
+  getBinError3 (ETH2 x) = getBinError3 x
+  getBinLowEdge (ETH2 x) = getBinLowEdge x
+  getBinWidth (ETH2 x) = getBinWidth x
+  getCellContent (ETH2 x) = getCellContent x
+  getCellError (ETH2 x) = getCellError x
+  getEntries (ETH2 x) = getEntries x
+  getEffectiveEntries (ETH2 x) = getEffectiveEntries x
+  getFunction (ETH2 x) = getFunction x
+  getDimension (ETH2 x) = getDimension x
+  getKurtosis (ETH2 x) = getKurtosis x
+  getLowEdge (ETH2 x) = getLowEdge x
+  getMaximum (ETH2 x) = getMaximum x
+  getMaximumBin (ETH2 x) = getMaximumBin x
+  getMaximumStored (ETH2 x) = getMaximumStored x
+  getMinimum (ETH2 x) = getMinimum x
+  getMinimumBin (ETH2 x) = getMinimumBin x
+  getMinimumStored (ETH2 x) = getMinimumStored x
+  getMean (ETH2 x) = getMean x
+  getMeanError (ETH2 x) = getMeanError x
+  getNbinsX (ETH2 x) = getNbinsX x
+  getNbinsY (ETH2 x) = getNbinsY x
+  getNbinsZ (ETH2 x) = getNbinsZ x
+  getQuantiles (ETH2 x) = getQuantiles x
+  getRandom (ETH2 x) = getRandom x
+  getStats (ETH2 x) = getStats x
+  getSumOfWeights (ETH2 x) = getSumOfWeights x
+  getSumw2 (ETH2 x) = getSumw2 x
+  getSumw2N (ETH2 x) = getSumw2N x
+  getRMS (ETH2 x) = getRMS x
+  getRMSError (ETH2 x) = getRMSError x
+  getSkewness (ETH2 x) = getSkewness x
+  integral1 (ETH2 x) = integral1 x
+  interpolate1 (ETH2 x) = interpolate1 x
+  interpolate2 (ETH2 x) = interpolate2 x
+  interpolate3 (ETH2 x) = interpolate3 x
+  kolmogorovTest (ETH2 x) = kolmogorovTest x
+  labelsDeflate (ETH2 x) = labelsDeflate x
+  labelsInflate (ETH2 x) = labelsInflate x
+  labelsOption (ETH2 x) = labelsOption x
+  multiflyF (ETH2 x) = multiflyF x
+  multiply (ETH2 x) = multiply x
+  paint (ETH2 x) = paint x
+  putStats (ETH2 x) = putStats x
+  rebin (ETH2 x) = rebin x
+  rebinAxis (ETH2 x) = rebinAxis x
+  rebuild (ETH2 x) = rebuild x
+  recursiveRemove (ETH2 x) = recursiveRemove x
+  reset (ETH2 x) = reset x
+  resetStats (ETH2 x) = resetStats x
+  scale (ETH2 x) = scale x
+  setAxisColorA (ETH2 x) = setAxisColorA x
+  setAxisRange (ETH2 x) = setAxisRange x
+  setBarOffset (ETH2 x) = setBarOffset x
+  setBarWidth (ETH2 x) = setBarWidth x
+  setBinContent1 (ETH2 x) = setBinContent1 x
+  setBinContent2 (ETH2 x) = setBinContent2 x
+  setBinContent3 (ETH2 x) = setBinContent3 x
+  setBinError1 (ETH2 x) = setBinError1 x
+  setBinError2 (ETH2 x) = setBinError2 x
+  setBinError3 (ETH2 x) = setBinError3 x
+  setBins1 (ETH2 x) = setBins1 x
+  setBins2 (ETH2 x) = setBins2 x
+  setBins3 (ETH2 x) = setBins3 x
+  setBinsLength (ETH2 x) = setBinsLength x
+  setBuffer (ETH2 x) = setBuffer x
+  setCellContent (ETH2 x) = setCellContent x
+  setContent (ETH2 x) = setContent x
+  setContour (ETH2 x) = setContour x
+  setContourLevel (ETH2 x) = setContourLevel x
+  setDirectory (ETH2 x) = setDirectory x
+  setEntries (ETH2 x) = setEntries x
+  setError (ETH2 x) = setError x
+  setLabelColorA (ETH2 x) = setLabelColorA x
+  setLabelSizeA (ETH2 x) = setLabelSizeA x
+  setLabelFontA (ETH2 x) = setLabelFontA x
+  setLabelOffsetA (ETH2 x) = setLabelOffsetA x
+  setMaximum (ETH2 x) = setMaximum x
+  setMinimum (ETH2 x) = setMinimum x
+  setNormFactor (ETH2 x) = setNormFactor x
+  setStats (ETH2 x) = setStats x
+  setOption (ETH2 x) = setOption x
+  setXTitle (ETH2 x) = setXTitle x
+  setYTitle (ETH2 x) = setYTitle x
+  setZTitle (ETH2 x) = setZTitle x
+  showBackground (ETH2 x) = showBackground x
+  showPeaks (ETH2 x) = showPeaks x
+  smooth (ETH2 x) = smooth x
+  sumw2 (ETH2 x) = sumw2 x
+
+instance ITNamed (Exist TH2) where
+  setName (ETH2 x) = setName x
+  setNameTitle (ETH2 x) = setNameTitle x
+  setTitle (ETH2 x) = setTitle x
+
+instance ITAttLine (Exist TH2) where
+  setLineColor (ETH2 x) = setLineColor x
+
+instance ITAttFill (Exist TH2) where
+  setFillColor (ETH2 x) = setFillColor x
+  setFillStyle (ETH2 x) = setFillStyle x
+
+instance ITAttMarker (Exist TH2) where
+
+
+instance ITObject (Exist TH2) where
+  getName (ETH2 x) = getName x
+  draw (ETH2 x) = draw x
+  findObject (ETH2 x) = findObject x
+  saveAs (ETH2 x) = saveAs x
+  write (ETH2 x) = write x
+  isA (ETH2 x) = isA x
+  printObj (ETH2 x) = printObj x
+
+instance IDeletable (Exist TH2) where
+  delete (ETH2 x) = delete x
+
+instance ITH3 (Exist TH3) where
+
+
+instance ITH1 (Exist TH3) where
+  add (ETH3 x) = add x
+  addBinContent (ETH3 x) = addBinContent x
+  chi2Test (ETH3 x) = chi2Test x
+  computeIntegral (ETH3 x) = computeIntegral x
+  directoryAutoAdd (ETH3 x) = directoryAutoAdd x
+  distancetoPrimitive (ETH3 x) = distancetoPrimitive x
+  divide (ETH3 x) = divide x
+  drawCopy (ETH3 x) a1 = return . ETH3 =<< drawCopy x a1
+  drawNormalized (ETH3 x) = drawNormalized x
+  drawPanel (ETH3 x) = drawPanel x
+  bufferEmpty (ETH3 x) = bufferEmpty x
+  eval (ETH3 x) = eval x
+  executeEvent (ETH3 x) = executeEvent x
+  fFT (ETH3 x) = fFT x
+  fill1 (ETH3 x) = fill1 x
+  fillN (ETH3 x) = fillN x
+  fillRandom (ETH3 x) = fillRandom x
+  findBin (ETH3 x) = findBin x
+  findFixBin (ETH3 x) = findFixBin x
+  findFirstBinAbove (ETH3 x) = findFirstBinAbove x
+  findLastBinAbove (ETH3 x) = findLastBinAbove x
+  fitPanel (ETH3 x) = fitPanel x
+  getNdivisionA (ETH3 x) = getNdivisionA x
+  getAxisColorA (ETH3 x) = getAxisColorA x
+  getLabelColorA (ETH3 x) = getLabelColorA x
+  getLabelFontA (ETH3 x) = getLabelFontA x
+  getLabelOffsetA (ETH3 x) = getLabelOffsetA x
+  getLabelSizeA (ETH3 x) = getLabelSizeA x
+  getTitleFontA (ETH3 x) = getTitleFontA x
+  getTitleOffsetA (ETH3 x) = getTitleOffsetA x
+  getTitleSizeA (ETH3 x) = getTitleSizeA x
+  getTickLengthA (ETH3 x) = getTickLengthA x
+  getBarOffset (ETH3 x) = getBarOffset x
+  getBarWidth (ETH3 x) = getBarWidth x
+  getContour (ETH3 x) = getContour x
+  getContourLevel (ETH3 x) = getContourLevel x
+  getContourLevelPad (ETH3 x) = getContourLevelPad x
+  getBin (ETH3 x) = getBin x
+  getBinCenter (ETH3 x) = getBinCenter x
+  getBinContent1 (ETH3 x) = getBinContent1 x
+  getBinContent2 (ETH3 x) = getBinContent2 x
+  getBinContent3 (ETH3 x) = getBinContent3 x
+  getBinError1 (ETH3 x) = getBinError1 x
+  getBinError2 (ETH3 x) = getBinError2 x
+  getBinError3 (ETH3 x) = getBinError3 x
+  getBinLowEdge (ETH3 x) = getBinLowEdge x
+  getBinWidth (ETH3 x) = getBinWidth x
+  getCellContent (ETH3 x) = getCellContent x
+  getCellError (ETH3 x) = getCellError x
+  getEntries (ETH3 x) = getEntries x
+  getEffectiveEntries (ETH3 x) = getEffectiveEntries x
+  getFunction (ETH3 x) = getFunction x
+  getDimension (ETH3 x) = getDimension x
+  getKurtosis (ETH3 x) = getKurtosis x
+  getLowEdge (ETH3 x) = getLowEdge x
+  getMaximum (ETH3 x) = getMaximum x
+  getMaximumBin (ETH3 x) = getMaximumBin x
+  getMaximumStored (ETH3 x) = getMaximumStored x
+  getMinimum (ETH3 x) = getMinimum x
+  getMinimumBin (ETH3 x) = getMinimumBin x
+  getMinimumStored (ETH3 x) = getMinimumStored x
+  getMean (ETH3 x) = getMean x
+  getMeanError (ETH3 x) = getMeanError x
+  getNbinsX (ETH3 x) = getNbinsX x
+  getNbinsY (ETH3 x) = getNbinsY x
+  getNbinsZ (ETH3 x) = getNbinsZ x
+  getQuantiles (ETH3 x) = getQuantiles x
+  getRandom (ETH3 x) = getRandom x
+  getStats (ETH3 x) = getStats x
+  getSumOfWeights (ETH3 x) = getSumOfWeights x
+  getSumw2 (ETH3 x) = getSumw2 x
+  getSumw2N (ETH3 x) = getSumw2N x
+  getRMS (ETH3 x) = getRMS x
+  getRMSError (ETH3 x) = getRMSError x
+  getSkewness (ETH3 x) = getSkewness x
+  integral1 (ETH3 x) = integral1 x
+  interpolate1 (ETH3 x) = interpolate1 x
+  interpolate2 (ETH3 x) = interpolate2 x
+  interpolate3 (ETH3 x) = interpolate3 x
+  kolmogorovTest (ETH3 x) = kolmogorovTest x
+  labelsDeflate (ETH3 x) = labelsDeflate x
+  labelsInflate (ETH3 x) = labelsInflate x
+  labelsOption (ETH3 x) = labelsOption x
+  multiflyF (ETH3 x) = multiflyF x
+  multiply (ETH3 x) = multiply x
+  paint (ETH3 x) = paint x
+  putStats (ETH3 x) = putStats x
+  rebin (ETH3 x) = rebin x
+  rebinAxis (ETH3 x) = rebinAxis x
+  rebuild (ETH3 x) = rebuild x
+  recursiveRemove (ETH3 x) = recursiveRemove x
+  reset (ETH3 x) = reset x
+  resetStats (ETH3 x) = resetStats x
+  scale (ETH3 x) = scale x
+  setAxisColorA (ETH3 x) = setAxisColorA x
+  setAxisRange (ETH3 x) = setAxisRange x
+  setBarOffset (ETH3 x) = setBarOffset x
+  setBarWidth (ETH3 x) = setBarWidth x
+  setBinContent1 (ETH3 x) = setBinContent1 x
+  setBinContent2 (ETH3 x) = setBinContent2 x
+  setBinContent3 (ETH3 x) = setBinContent3 x
+  setBinError1 (ETH3 x) = setBinError1 x
+  setBinError2 (ETH3 x) = setBinError2 x
+  setBinError3 (ETH3 x) = setBinError3 x
+  setBins1 (ETH3 x) = setBins1 x
+  setBins2 (ETH3 x) = setBins2 x
+  setBins3 (ETH3 x) = setBins3 x
+  setBinsLength (ETH3 x) = setBinsLength x
+  setBuffer (ETH3 x) = setBuffer x
+  setCellContent (ETH3 x) = setCellContent x
+  setContent (ETH3 x) = setContent x
+  setContour (ETH3 x) = setContour x
+  setContourLevel (ETH3 x) = setContourLevel x
+  setDirectory (ETH3 x) = setDirectory x
+  setEntries (ETH3 x) = setEntries x
+  setError (ETH3 x) = setError x
+  setLabelColorA (ETH3 x) = setLabelColorA x
+  setLabelSizeA (ETH3 x) = setLabelSizeA x
+  setLabelFontA (ETH3 x) = setLabelFontA x
+  setLabelOffsetA (ETH3 x) = setLabelOffsetA x
+  setMaximum (ETH3 x) = setMaximum x
+  setMinimum (ETH3 x) = setMinimum x
+  setNormFactor (ETH3 x) = setNormFactor x
+  setStats (ETH3 x) = setStats x
+  setOption (ETH3 x) = setOption x
+  setXTitle (ETH3 x) = setXTitle x
+  setYTitle (ETH3 x) = setYTitle x
+  setZTitle (ETH3 x) = setZTitle x
+  showBackground (ETH3 x) = showBackground x
+  showPeaks (ETH3 x) = showPeaks x
+  smooth (ETH3 x) = smooth x
+  sumw2 (ETH3 x) = sumw2 x
+
+instance ITAtt3D (Exist TH3) where
+
+
+instance ITNamed (Exist TH3) where
+  setName (ETH3 x) = setName x
+  setNameTitle (ETH3 x) = setNameTitle x
+  setTitle (ETH3 x) = setTitle x
+
+instance ITAttLine (Exist TH3) where
+  setLineColor (ETH3 x) = setLineColor x
+
+instance ITAttFill (Exist TH3) where
+  setFillColor (ETH3 x) = setFillColor x
+  setFillStyle (ETH3 x) = setFillStyle x
+
+instance ITAttMarker (Exist TH3) where
+
+
+instance ITObject (Exist TH3) where
+  getName (ETH3 x) = getName x
+  draw (ETH3 x) = draw x
+  findObject (ETH3 x) = findObject x
+  saveAs (ETH3 x) = saveAs x
+  write (ETH3 x) = write x
+  isA (ETH3 x) = isA x
+  printObj (ETH3 x) = printObj x
+
+instance IDeletable (Exist TH3) where
+  delete (ETH3 x) = delete x
+
+instance ITH1C (Exist TH1C) where
+
+
+instance ITH1 (Exist TH1C) where
+  add (ETH1C x) = add x
+  addBinContent (ETH1C x) = addBinContent x
+  chi2Test (ETH1C x) = chi2Test x
+  computeIntegral (ETH1C x) = computeIntegral x
+  directoryAutoAdd (ETH1C x) = directoryAutoAdd x
+  distancetoPrimitive (ETH1C x) = distancetoPrimitive x
+  divide (ETH1C x) = divide x
+  drawCopy (ETH1C x) a1 = return . ETH1C =<< drawCopy x a1
+  drawNormalized (ETH1C x) = drawNormalized x
+  drawPanel (ETH1C x) = drawPanel x
+  bufferEmpty (ETH1C x) = bufferEmpty x
+  eval (ETH1C x) = eval x
+  executeEvent (ETH1C x) = executeEvent x
+  fFT (ETH1C x) = fFT x
+  fill1 (ETH1C x) = fill1 x
+  fillN (ETH1C x) = fillN x
+  fillRandom (ETH1C x) = fillRandom x
+  findBin (ETH1C x) = findBin x
+  findFixBin (ETH1C x) = findFixBin x
+  findFirstBinAbove (ETH1C x) = findFirstBinAbove x
+  findLastBinAbove (ETH1C x) = findLastBinAbove x
+  fitPanel (ETH1C x) = fitPanel x
+  getNdivisionA (ETH1C x) = getNdivisionA x
+  getAxisColorA (ETH1C x) = getAxisColorA x
+  getLabelColorA (ETH1C x) = getLabelColorA x
+  getLabelFontA (ETH1C x) = getLabelFontA x
+  getLabelOffsetA (ETH1C x) = getLabelOffsetA x
+  getLabelSizeA (ETH1C x) = getLabelSizeA x
+  getTitleFontA (ETH1C x) = getTitleFontA x
+  getTitleOffsetA (ETH1C x) = getTitleOffsetA x
+  getTitleSizeA (ETH1C x) = getTitleSizeA x
+  getTickLengthA (ETH1C x) = getTickLengthA x
+  getBarOffset (ETH1C x) = getBarOffset x
+  getBarWidth (ETH1C x) = getBarWidth x
+  getContour (ETH1C x) = getContour x
+  getContourLevel (ETH1C x) = getContourLevel x
+  getContourLevelPad (ETH1C x) = getContourLevelPad x
+  getBin (ETH1C x) = getBin x
+  getBinCenter (ETH1C x) = getBinCenter x
+  getBinContent1 (ETH1C x) = getBinContent1 x
+  getBinContent2 (ETH1C x) = getBinContent2 x
+  getBinContent3 (ETH1C x) = getBinContent3 x
+  getBinError1 (ETH1C x) = getBinError1 x
+  getBinError2 (ETH1C x) = getBinError2 x
+  getBinError3 (ETH1C x) = getBinError3 x
+  getBinLowEdge (ETH1C x) = getBinLowEdge x
+  getBinWidth (ETH1C x) = getBinWidth x
+  getCellContent (ETH1C x) = getCellContent x
+  getCellError (ETH1C x) = getCellError x
+  getEntries (ETH1C x) = getEntries x
+  getEffectiveEntries (ETH1C x) = getEffectiveEntries x
+  getFunction (ETH1C x) = getFunction x
+  getDimension (ETH1C x) = getDimension x
+  getKurtosis (ETH1C x) = getKurtosis x
+  getLowEdge (ETH1C x) = getLowEdge x
+  getMaximum (ETH1C x) = getMaximum x
+  getMaximumBin (ETH1C x) = getMaximumBin x
+  getMaximumStored (ETH1C x) = getMaximumStored x
+  getMinimum (ETH1C x) = getMinimum x
+  getMinimumBin (ETH1C x) = getMinimumBin x
+  getMinimumStored (ETH1C x) = getMinimumStored x
+  getMean (ETH1C x) = getMean x
+  getMeanError (ETH1C x) = getMeanError x
+  getNbinsX (ETH1C x) = getNbinsX x
+  getNbinsY (ETH1C x) = getNbinsY x
+  getNbinsZ (ETH1C x) = getNbinsZ x
+  getQuantiles (ETH1C x) = getQuantiles x
+  getRandom (ETH1C x) = getRandom x
+  getStats (ETH1C x) = getStats x
+  getSumOfWeights (ETH1C x) = getSumOfWeights x
+  getSumw2 (ETH1C x) = getSumw2 x
+  getSumw2N (ETH1C x) = getSumw2N x
+  getRMS (ETH1C x) = getRMS x
+  getRMSError (ETH1C x) = getRMSError x
+  getSkewness (ETH1C x) = getSkewness x
+  integral1 (ETH1C x) = integral1 x
+  interpolate1 (ETH1C x) = interpolate1 x
+  interpolate2 (ETH1C x) = interpolate2 x
+  interpolate3 (ETH1C x) = interpolate3 x
+  kolmogorovTest (ETH1C x) = kolmogorovTest x
+  labelsDeflate (ETH1C x) = labelsDeflate x
+  labelsInflate (ETH1C x) = labelsInflate x
+  labelsOption (ETH1C x) = labelsOption x
+  multiflyF (ETH1C x) = multiflyF x
+  multiply (ETH1C x) = multiply x
+  paint (ETH1C x) = paint x
+  putStats (ETH1C x) = putStats x
+  rebin (ETH1C x) = rebin x
+  rebinAxis (ETH1C x) = rebinAxis x
+  rebuild (ETH1C x) = rebuild x
+  recursiveRemove (ETH1C x) = recursiveRemove x
+  reset (ETH1C x) = reset x
+  resetStats (ETH1C x) = resetStats x
+  scale (ETH1C x) = scale x
+  setAxisColorA (ETH1C x) = setAxisColorA x
+  setAxisRange (ETH1C x) = setAxisRange x
+  setBarOffset (ETH1C x) = setBarOffset x
+  setBarWidth (ETH1C x) = setBarWidth x
+  setBinContent1 (ETH1C x) = setBinContent1 x
+  setBinContent2 (ETH1C x) = setBinContent2 x
+  setBinContent3 (ETH1C x) = setBinContent3 x
+  setBinError1 (ETH1C x) = setBinError1 x
+  setBinError2 (ETH1C x) = setBinError2 x
+  setBinError3 (ETH1C x) = setBinError3 x
+  setBins1 (ETH1C x) = setBins1 x
+  setBins2 (ETH1C x) = setBins2 x
+  setBins3 (ETH1C x) = setBins3 x
+  setBinsLength (ETH1C x) = setBinsLength x
+  setBuffer (ETH1C x) = setBuffer x
+  setCellContent (ETH1C x) = setCellContent x
+  setContent (ETH1C x) = setContent x
+  setContour (ETH1C x) = setContour x
+  setContourLevel (ETH1C x) = setContourLevel x
+  setDirectory (ETH1C x) = setDirectory x
+  setEntries (ETH1C x) = setEntries x
+  setError (ETH1C x) = setError x
+  setLabelColorA (ETH1C x) = setLabelColorA x
+  setLabelSizeA (ETH1C x) = setLabelSizeA x
+  setLabelFontA (ETH1C x) = setLabelFontA x
+  setLabelOffsetA (ETH1C x) = setLabelOffsetA x
+  setMaximum (ETH1C x) = setMaximum x
+  setMinimum (ETH1C x) = setMinimum x
+  setNormFactor (ETH1C x) = setNormFactor x
+  setStats (ETH1C x) = setStats x
+  setOption (ETH1C x) = setOption x
+  setXTitle (ETH1C x) = setXTitle x
+  setYTitle (ETH1C x) = setYTitle x
+  setZTitle (ETH1C x) = setZTitle x
+  showBackground (ETH1C x) = showBackground x
+  showPeaks (ETH1C x) = showPeaks x
+  smooth (ETH1C x) = smooth x
+  sumw2 (ETH1C x) = sumw2 x
+
+instance ITArrayC (Exist TH1C) where
+
+
+instance ITNamed (Exist TH1C) where
+  setName (ETH1C x) = setName x
+  setNameTitle (ETH1C x) = setNameTitle x
+  setTitle (ETH1C x) = setTitle x
+
+instance ITAttLine (Exist TH1C) where
+  setLineColor (ETH1C x) = setLineColor x
+
+instance ITAttFill (Exist TH1C) where
+  setFillColor (ETH1C x) = setFillColor x
+  setFillStyle (ETH1C x) = setFillStyle x
+
+instance ITAttMarker (Exist TH1C) where
+
+
+instance ITObject (Exist TH1C) where
+  getName (ETH1C x) = getName x
+  draw (ETH1C x) = draw x
+  findObject (ETH1C x) = findObject x
+  saveAs (ETH1C x) = saveAs x
+  write (ETH1C x) = write x
+  isA (ETH1C x) = isA x
+  printObj (ETH1C x) = printObj x
+
+instance IDeletable (Exist TH1C) where
+  delete (ETH1C x) = delete x
+
+instance ITArray (Exist TH1C) where
+
+
+instance ITH1D (Exist TH1D) where
+
+
+instance ITH1 (Exist TH1D) where
+  add (ETH1D x) = add x
+  addBinContent (ETH1D x) = addBinContent x
+  chi2Test (ETH1D x) = chi2Test x
+  computeIntegral (ETH1D x) = computeIntegral x
+  directoryAutoAdd (ETH1D x) = directoryAutoAdd x
+  distancetoPrimitive (ETH1D x) = distancetoPrimitive x
+  divide (ETH1D x) = divide x
+  drawCopy (ETH1D x) a1 = return . ETH1D =<< drawCopy x a1
+  drawNormalized (ETH1D x) = drawNormalized x
+  drawPanel (ETH1D x) = drawPanel x
+  bufferEmpty (ETH1D x) = bufferEmpty x
+  eval (ETH1D x) = eval x
+  executeEvent (ETH1D x) = executeEvent x
+  fFT (ETH1D x) = fFT x
+  fill1 (ETH1D x) = fill1 x
+  fillN (ETH1D x) = fillN x
+  fillRandom (ETH1D x) = fillRandom x
+  findBin (ETH1D x) = findBin x
+  findFixBin (ETH1D x) = findFixBin x
+  findFirstBinAbove (ETH1D x) = findFirstBinAbove x
+  findLastBinAbove (ETH1D x) = findLastBinAbove x
+  fitPanel (ETH1D x) = fitPanel x
+  getNdivisionA (ETH1D x) = getNdivisionA x
+  getAxisColorA (ETH1D x) = getAxisColorA x
+  getLabelColorA (ETH1D x) = getLabelColorA x
+  getLabelFontA (ETH1D x) = getLabelFontA x
+  getLabelOffsetA (ETH1D x) = getLabelOffsetA x
+  getLabelSizeA (ETH1D x) = getLabelSizeA x
+  getTitleFontA (ETH1D x) = getTitleFontA x
+  getTitleOffsetA (ETH1D x) = getTitleOffsetA x
+  getTitleSizeA (ETH1D x) = getTitleSizeA x
+  getTickLengthA (ETH1D x) = getTickLengthA x
+  getBarOffset (ETH1D x) = getBarOffset x
+  getBarWidth (ETH1D x) = getBarWidth x
+  getContour (ETH1D x) = getContour x
+  getContourLevel (ETH1D x) = getContourLevel x
+  getContourLevelPad (ETH1D x) = getContourLevelPad x
+  getBin (ETH1D x) = getBin x
+  getBinCenter (ETH1D x) = getBinCenter x
+  getBinContent1 (ETH1D x) = getBinContent1 x
+  getBinContent2 (ETH1D x) = getBinContent2 x
+  getBinContent3 (ETH1D x) = getBinContent3 x
+  getBinError1 (ETH1D x) = getBinError1 x
+  getBinError2 (ETH1D x) = getBinError2 x
+  getBinError3 (ETH1D x) = getBinError3 x
+  getBinLowEdge (ETH1D x) = getBinLowEdge x
+  getBinWidth (ETH1D x) = getBinWidth x
+  getCellContent (ETH1D x) = getCellContent x
+  getCellError (ETH1D x) = getCellError x
+  getEntries (ETH1D x) = getEntries x
+  getEffectiveEntries (ETH1D x) = getEffectiveEntries x
+  getFunction (ETH1D x) = getFunction x
+  getDimension (ETH1D x) = getDimension x
+  getKurtosis (ETH1D x) = getKurtosis x
+  getLowEdge (ETH1D x) = getLowEdge x
+  getMaximum (ETH1D x) = getMaximum x
+  getMaximumBin (ETH1D x) = getMaximumBin x
+  getMaximumStored (ETH1D x) = getMaximumStored x
+  getMinimum (ETH1D x) = getMinimum x
+  getMinimumBin (ETH1D x) = getMinimumBin x
+  getMinimumStored (ETH1D x) = getMinimumStored x
+  getMean (ETH1D x) = getMean x
+  getMeanError (ETH1D x) = getMeanError x
+  getNbinsX (ETH1D x) = getNbinsX x
+  getNbinsY (ETH1D x) = getNbinsY x
+  getNbinsZ (ETH1D x) = getNbinsZ x
+  getQuantiles (ETH1D x) = getQuantiles x
+  getRandom (ETH1D x) = getRandom x
+  getStats (ETH1D x) = getStats x
+  getSumOfWeights (ETH1D x) = getSumOfWeights x
+  getSumw2 (ETH1D x) = getSumw2 x
+  getSumw2N (ETH1D x) = getSumw2N x
+  getRMS (ETH1D x) = getRMS x
+  getRMSError (ETH1D x) = getRMSError x
+  getSkewness (ETH1D x) = getSkewness x
+  integral1 (ETH1D x) = integral1 x
+  interpolate1 (ETH1D x) = interpolate1 x
+  interpolate2 (ETH1D x) = interpolate2 x
+  interpolate3 (ETH1D x) = interpolate3 x
+  kolmogorovTest (ETH1D x) = kolmogorovTest x
+  labelsDeflate (ETH1D x) = labelsDeflate x
+  labelsInflate (ETH1D x) = labelsInflate x
+  labelsOption (ETH1D x) = labelsOption x
+  multiflyF (ETH1D x) = multiflyF x
+  multiply (ETH1D x) = multiply x
+  paint (ETH1D x) = paint x
+  putStats (ETH1D x) = putStats x
+  rebin (ETH1D x) = rebin x
+  rebinAxis (ETH1D x) = rebinAxis x
+  rebuild (ETH1D x) = rebuild x
+  recursiveRemove (ETH1D x) = recursiveRemove x
+  reset (ETH1D x) = reset x
+  resetStats (ETH1D x) = resetStats x
+  scale (ETH1D x) = scale x
+  setAxisColorA (ETH1D x) = setAxisColorA x
+  setAxisRange (ETH1D x) = setAxisRange x
+  setBarOffset (ETH1D x) = setBarOffset x
+  setBarWidth (ETH1D x) = setBarWidth x
+  setBinContent1 (ETH1D x) = setBinContent1 x
+  setBinContent2 (ETH1D x) = setBinContent2 x
+  setBinContent3 (ETH1D x) = setBinContent3 x
+  setBinError1 (ETH1D x) = setBinError1 x
+  setBinError2 (ETH1D x) = setBinError2 x
+  setBinError3 (ETH1D x) = setBinError3 x
+  setBins1 (ETH1D x) = setBins1 x
+  setBins2 (ETH1D x) = setBins2 x
+  setBins3 (ETH1D x) = setBins3 x
+  setBinsLength (ETH1D x) = setBinsLength x
+  setBuffer (ETH1D x) = setBuffer x
+  setCellContent (ETH1D x) = setCellContent x
+  setContent (ETH1D x) = setContent x
+  setContour (ETH1D x) = setContour x
+  setContourLevel (ETH1D x) = setContourLevel x
+  setDirectory (ETH1D x) = setDirectory x
+  setEntries (ETH1D x) = setEntries x
+  setError (ETH1D x) = setError x
+  setLabelColorA (ETH1D x) = setLabelColorA x
+  setLabelSizeA (ETH1D x) = setLabelSizeA x
+  setLabelFontA (ETH1D x) = setLabelFontA x
+  setLabelOffsetA (ETH1D x) = setLabelOffsetA x
+  setMaximum (ETH1D x) = setMaximum x
+  setMinimum (ETH1D x) = setMinimum x
+  setNormFactor (ETH1D x) = setNormFactor x
+  setStats (ETH1D x) = setStats x
+  setOption (ETH1D x) = setOption x
+  setXTitle (ETH1D x) = setXTitle x
+  setYTitle (ETH1D x) = setYTitle x
+  setZTitle (ETH1D x) = setZTitle x
+  showBackground (ETH1D x) = showBackground x
+  showPeaks (ETH1D x) = showPeaks x
+  smooth (ETH1D x) = smooth x
+  sumw2 (ETH1D x) = sumw2 x
+
+instance ITArrayD (Exist TH1D) where
+
+
+instance ITNamed (Exist TH1D) where
+  setName (ETH1D x) = setName x
+  setNameTitle (ETH1D x) = setNameTitle x
+  setTitle (ETH1D x) = setTitle x
+
+instance ITAttLine (Exist TH1D) where
+  setLineColor (ETH1D x) = setLineColor x
+
+instance ITAttFill (Exist TH1D) where
+  setFillColor (ETH1D x) = setFillColor x
+  setFillStyle (ETH1D x) = setFillStyle x
+
+instance ITAttMarker (Exist TH1D) where
+
+
+instance ITObject (Exist TH1D) where
+  getName (ETH1D x) = getName x
+  draw (ETH1D x) = draw x
+  findObject (ETH1D x) = findObject x
+  saveAs (ETH1D x) = saveAs x
+  write (ETH1D x) = write x
+  isA (ETH1D x) = isA x
+  printObj (ETH1D x) = printObj x
+
+instance IDeletable (Exist TH1D) where
+  delete (ETH1D x) = delete x
+
+instance ITArray (Exist TH1D) where
+
+
+instance ITH1F (Exist TH1F) where
+
+
+instance ITH1 (Exist TH1F) where
+  add (ETH1F x) = add x
+  addBinContent (ETH1F x) = addBinContent x
+  chi2Test (ETH1F x) = chi2Test x
+  computeIntegral (ETH1F x) = computeIntegral x
+  directoryAutoAdd (ETH1F x) = directoryAutoAdd x
+  distancetoPrimitive (ETH1F x) = distancetoPrimitive x
+  divide (ETH1F x) = divide x
+  drawCopy (ETH1F x) a1 = return . ETH1F =<< drawCopy x a1
+  drawNormalized (ETH1F x) = drawNormalized x
+  drawPanel (ETH1F x) = drawPanel x
+  bufferEmpty (ETH1F x) = bufferEmpty x
+  eval (ETH1F x) = eval x
+  executeEvent (ETH1F x) = executeEvent x
+  fFT (ETH1F x) = fFT x
+  fill1 (ETH1F x) = fill1 x
+  fillN (ETH1F x) = fillN x
+  fillRandom (ETH1F x) = fillRandom x
+  findBin (ETH1F x) = findBin x
+  findFixBin (ETH1F x) = findFixBin x
+  findFirstBinAbove (ETH1F x) = findFirstBinAbove x
+  findLastBinAbove (ETH1F x) = findLastBinAbove x
+  fitPanel (ETH1F x) = fitPanel x
+  getNdivisionA (ETH1F x) = getNdivisionA x
+  getAxisColorA (ETH1F x) = getAxisColorA x
+  getLabelColorA (ETH1F x) = getLabelColorA x
+  getLabelFontA (ETH1F x) = getLabelFontA x
+  getLabelOffsetA (ETH1F x) = getLabelOffsetA x
+  getLabelSizeA (ETH1F x) = getLabelSizeA x
+  getTitleFontA (ETH1F x) = getTitleFontA x
+  getTitleOffsetA (ETH1F x) = getTitleOffsetA x
+  getTitleSizeA (ETH1F x) = getTitleSizeA x
+  getTickLengthA (ETH1F x) = getTickLengthA x
+  getBarOffset (ETH1F x) = getBarOffset x
+  getBarWidth (ETH1F x) = getBarWidth x
+  getContour (ETH1F x) = getContour x
+  getContourLevel (ETH1F x) = getContourLevel x
+  getContourLevelPad (ETH1F x) = getContourLevelPad x
+  getBin (ETH1F x) = getBin x
+  getBinCenter (ETH1F x) = getBinCenter x
+  getBinContent1 (ETH1F x) = getBinContent1 x
+  getBinContent2 (ETH1F x) = getBinContent2 x
+  getBinContent3 (ETH1F x) = getBinContent3 x
+  getBinError1 (ETH1F x) = getBinError1 x
+  getBinError2 (ETH1F x) = getBinError2 x
+  getBinError3 (ETH1F x) = getBinError3 x
+  getBinLowEdge (ETH1F x) = getBinLowEdge x
+  getBinWidth (ETH1F x) = getBinWidth x
+  getCellContent (ETH1F x) = getCellContent x
+  getCellError (ETH1F x) = getCellError x
+  getEntries (ETH1F x) = getEntries x
+  getEffectiveEntries (ETH1F x) = getEffectiveEntries x
+  getFunction (ETH1F x) = getFunction x
+  getDimension (ETH1F x) = getDimension x
+  getKurtosis (ETH1F x) = getKurtosis x
+  getLowEdge (ETH1F x) = getLowEdge x
+  getMaximum (ETH1F x) = getMaximum x
+  getMaximumBin (ETH1F x) = getMaximumBin x
+  getMaximumStored (ETH1F x) = getMaximumStored x
+  getMinimum (ETH1F x) = getMinimum x
+  getMinimumBin (ETH1F x) = getMinimumBin x
+  getMinimumStored (ETH1F x) = getMinimumStored x
+  getMean (ETH1F x) = getMean x
+  getMeanError (ETH1F x) = getMeanError x
+  getNbinsX (ETH1F x) = getNbinsX x
+  getNbinsY (ETH1F x) = getNbinsY x
+  getNbinsZ (ETH1F x) = getNbinsZ x
+  getQuantiles (ETH1F x) = getQuantiles x
+  getRandom (ETH1F x) = getRandom x
+  getStats (ETH1F x) = getStats x
+  getSumOfWeights (ETH1F x) = getSumOfWeights x
+  getSumw2 (ETH1F x) = getSumw2 x
+  getSumw2N (ETH1F x) = getSumw2N x
+  getRMS (ETH1F x) = getRMS x
+  getRMSError (ETH1F x) = getRMSError x
+  getSkewness (ETH1F x) = getSkewness x
+  integral1 (ETH1F x) = integral1 x
+  interpolate1 (ETH1F x) = interpolate1 x
+  interpolate2 (ETH1F x) = interpolate2 x
+  interpolate3 (ETH1F x) = interpolate3 x
+  kolmogorovTest (ETH1F x) = kolmogorovTest x
+  labelsDeflate (ETH1F x) = labelsDeflate x
+  labelsInflate (ETH1F x) = labelsInflate x
+  labelsOption (ETH1F x) = labelsOption x
+  multiflyF (ETH1F x) = multiflyF x
+  multiply (ETH1F x) = multiply x
+  paint (ETH1F x) = paint x
+  putStats (ETH1F x) = putStats x
+  rebin (ETH1F x) = rebin x
+  rebinAxis (ETH1F x) = rebinAxis x
+  rebuild (ETH1F x) = rebuild x
+  recursiveRemove (ETH1F x) = recursiveRemove x
+  reset (ETH1F x) = reset x
+  resetStats (ETH1F x) = resetStats x
+  scale (ETH1F x) = scale x
+  setAxisColorA (ETH1F x) = setAxisColorA x
+  setAxisRange (ETH1F x) = setAxisRange x
+  setBarOffset (ETH1F x) = setBarOffset x
+  setBarWidth (ETH1F x) = setBarWidth x
+  setBinContent1 (ETH1F x) = setBinContent1 x
+  setBinContent2 (ETH1F x) = setBinContent2 x
+  setBinContent3 (ETH1F x) = setBinContent3 x
+  setBinError1 (ETH1F x) = setBinError1 x
+  setBinError2 (ETH1F x) = setBinError2 x
+  setBinError3 (ETH1F x) = setBinError3 x
+  setBins1 (ETH1F x) = setBins1 x
+  setBins2 (ETH1F x) = setBins2 x
+  setBins3 (ETH1F x) = setBins3 x
+  setBinsLength (ETH1F x) = setBinsLength x
+  setBuffer (ETH1F x) = setBuffer x
+  setCellContent (ETH1F x) = setCellContent x
+  setContent (ETH1F x) = setContent x
+  setContour (ETH1F x) = setContour x
+  setContourLevel (ETH1F x) = setContourLevel x
+  setDirectory (ETH1F x) = setDirectory x
+  setEntries (ETH1F x) = setEntries x
+  setError (ETH1F x) = setError x
+  setLabelColorA (ETH1F x) = setLabelColorA x
+  setLabelSizeA (ETH1F x) = setLabelSizeA x
+  setLabelFontA (ETH1F x) = setLabelFontA x
+  setLabelOffsetA (ETH1F x) = setLabelOffsetA x
+  setMaximum (ETH1F x) = setMaximum x
+  setMinimum (ETH1F x) = setMinimum x
+  setNormFactor (ETH1F x) = setNormFactor x
+  setStats (ETH1F x) = setStats x
+  setOption (ETH1F x) = setOption x
+  setXTitle (ETH1F x) = setXTitle x
+  setYTitle (ETH1F x) = setYTitle x
+  setZTitle (ETH1F x) = setZTitle x
+  showBackground (ETH1F x) = showBackground x
+  showPeaks (ETH1F x) = showPeaks x
+  smooth (ETH1F x) = smooth x
+  sumw2 (ETH1F x) = sumw2 x
+
+instance ITArrayF (Exist TH1F) where
+
+
+instance ITNamed (Exist TH1F) where
+  setName (ETH1F x) = setName x
+  setNameTitle (ETH1F x) = setNameTitle x
+  setTitle (ETH1F x) = setTitle x
+
+instance ITAttLine (Exist TH1F) where
+  setLineColor (ETH1F x) = setLineColor x
+
+instance ITAttFill (Exist TH1F) where
+  setFillColor (ETH1F x) = setFillColor x
+  setFillStyle (ETH1F x) = setFillStyle x
+
+instance ITAttMarker (Exist TH1F) where
+
+
+instance ITObject (Exist TH1F) where
+  getName (ETH1F x) = getName x
+  draw (ETH1F x) = draw x
+  findObject (ETH1F x) = findObject x
+  saveAs (ETH1F x) = saveAs x
+  write (ETH1F x) = write x
+  isA (ETH1F x) = isA x
+  printObj (ETH1F x) = printObj x
+
+instance IDeletable (Exist TH1F) where
+  delete (ETH1F x) = delete x
+
+instance ITArray (Exist TH1F) where
+
+
+instance ITH1I (Exist TH1I) where
+
+
+instance ITH1 (Exist TH1I) where
+  add (ETH1I x) = add x
+  addBinContent (ETH1I x) = addBinContent x
+  chi2Test (ETH1I x) = chi2Test x
+  computeIntegral (ETH1I x) = computeIntegral x
+  directoryAutoAdd (ETH1I x) = directoryAutoAdd x
+  distancetoPrimitive (ETH1I x) = distancetoPrimitive x
+  divide (ETH1I x) = divide x
+  drawCopy (ETH1I x) a1 = return . ETH1I =<< drawCopy x a1
+  drawNormalized (ETH1I x) = drawNormalized x
+  drawPanel (ETH1I x) = drawPanel x
+  bufferEmpty (ETH1I x) = bufferEmpty x
+  eval (ETH1I x) = eval x
+  executeEvent (ETH1I x) = executeEvent x
+  fFT (ETH1I x) = fFT x
+  fill1 (ETH1I x) = fill1 x
+  fillN (ETH1I x) = fillN x
+  fillRandom (ETH1I x) = fillRandom x
+  findBin (ETH1I x) = findBin x
+  findFixBin (ETH1I x) = findFixBin x
+  findFirstBinAbove (ETH1I x) = findFirstBinAbove x
+  findLastBinAbove (ETH1I x) = findLastBinAbove x
+  fitPanel (ETH1I x) = fitPanel x
+  getNdivisionA (ETH1I x) = getNdivisionA x
+  getAxisColorA (ETH1I x) = getAxisColorA x
+  getLabelColorA (ETH1I x) = getLabelColorA x
+  getLabelFontA (ETH1I x) = getLabelFontA x
+  getLabelOffsetA (ETH1I x) = getLabelOffsetA x
+  getLabelSizeA (ETH1I x) = getLabelSizeA x
+  getTitleFontA (ETH1I x) = getTitleFontA x
+  getTitleOffsetA (ETH1I x) = getTitleOffsetA x
+  getTitleSizeA (ETH1I x) = getTitleSizeA x
+  getTickLengthA (ETH1I x) = getTickLengthA x
+  getBarOffset (ETH1I x) = getBarOffset x
+  getBarWidth (ETH1I x) = getBarWidth x
+  getContour (ETH1I x) = getContour x
+  getContourLevel (ETH1I x) = getContourLevel x
+  getContourLevelPad (ETH1I x) = getContourLevelPad x
+  getBin (ETH1I x) = getBin x
+  getBinCenter (ETH1I x) = getBinCenter x
+  getBinContent1 (ETH1I x) = getBinContent1 x
+  getBinContent2 (ETH1I x) = getBinContent2 x
+  getBinContent3 (ETH1I x) = getBinContent3 x
+  getBinError1 (ETH1I x) = getBinError1 x
+  getBinError2 (ETH1I x) = getBinError2 x
+  getBinError3 (ETH1I x) = getBinError3 x
+  getBinLowEdge (ETH1I x) = getBinLowEdge x
+  getBinWidth (ETH1I x) = getBinWidth x
+  getCellContent (ETH1I x) = getCellContent x
+  getCellError (ETH1I x) = getCellError x
+  getEntries (ETH1I x) = getEntries x
+  getEffectiveEntries (ETH1I x) = getEffectiveEntries x
+  getFunction (ETH1I x) = getFunction x
+  getDimension (ETH1I x) = getDimension x
+  getKurtosis (ETH1I x) = getKurtosis x
+  getLowEdge (ETH1I x) = getLowEdge x
+  getMaximum (ETH1I x) = getMaximum x
+  getMaximumBin (ETH1I x) = getMaximumBin x
+  getMaximumStored (ETH1I x) = getMaximumStored x
+  getMinimum (ETH1I x) = getMinimum x
+  getMinimumBin (ETH1I x) = getMinimumBin x
+  getMinimumStored (ETH1I x) = getMinimumStored x
+  getMean (ETH1I x) = getMean x
+  getMeanError (ETH1I x) = getMeanError x
+  getNbinsX (ETH1I x) = getNbinsX x
+  getNbinsY (ETH1I x) = getNbinsY x
+  getNbinsZ (ETH1I x) = getNbinsZ x
+  getQuantiles (ETH1I x) = getQuantiles x
+  getRandom (ETH1I x) = getRandom x
+  getStats (ETH1I x) = getStats x
+  getSumOfWeights (ETH1I x) = getSumOfWeights x
+  getSumw2 (ETH1I x) = getSumw2 x
+  getSumw2N (ETH1I x) = getSumw2N x
+  getRMS (ETH1I x) = getRMS x
+  getRMSError (ETH1I x) = getRMSError x
+  getSkewness (ETH1I x) = getSkewness x
+  integral1 (ETH1I x) = integral1 x
+  interpolate1 (ETH1I x) = interpolate1 x
+  interpolate2 (ETH1I x) = interpolate2 x
+  interpolate3 (ETH1I x) = interpolate3 x
+  kolmogorovTest (ETH1I x) = kolmogorovTest x
+  labelsDeflate (ETH1I x) = labelsDeflate x
+  labelsInflate (ETH1I x) = labelsInflate x
+  labelsOption (ETH1I x) = labelsOption x
+  multiflyF (ETH1I x) = multiflyF x
+  multiply (ETH1I x) = multiply x
+  paint (ETH1I x) = paint x
+  putStats (ETH1I x) = putStats x
+  rebin (ETH1I x) = rebin x
+  rebinAxis (ETH1I x) = rebinAxis x
+  rebuild (ETH1I x) = rebuild x
+  recursiveRemove (ETH1I x) = recursiveRemove x
+  reset (ETH1I x) = reset x
+  resetStats (ETH1I x) = resetStats x
+  scale (ETH1I x) = scale x
+  setAxisColorA (ETH1I x) = setAxisColorA x
+  setAxisRange (ETH1I x) = setAxisRange x
+  setBarOffset (ETH1I x) = setBarOffset x
+  setBarWidth (ETH1I x) = setBarWidth x
+  setBinContent1 (ETH1I x) = setBinContent1 x
+  setBinContent2 (ETH1I x) = setBinContent2 x
+  setBinContent3 (ETH1I x) = setBinContent3 x
+  setBinError1 (ETH1I x) = setBinError1 x
+  setBinError2 (ETH1I x) = setBinError2 x
+  setBinError3 (ETH1I x) = setBinError3 x
+  setBins1 (ETH1I x) = setBins1 x
+  setBins2 (ETH1I x) = setBins2 x
+  setBins3 (ETH1I x) = setBins3 x
+  setBinsLength (ETH1I x) = setBinsLength x
+  setBuffer (ETH1I x) = setBuffer x
+  setCellContent (ETH1I x) = setCellContent x
+  setContent (ETH1I x) = setContent x
+  setContour (ETH1I x) = setContour x
+  setContourLevel (ETH1I x) = setContourLevel x
+  setDirectory (ETH1I x) = setDirectory x
+  setEntries (ETH1I x) = setEntries x
+  setError (ETH1I x) = setError x
+  setLabelColorA (ETH1I x) = setLabelColorA x
+  setLabelSizeA (ETH1I x) = setLabelSizeA x
+  setLabelFontA (ETH1I x) = setLabelFontA x
+  setLabelOffsetA (ETH1I x) = setLabelOffsetA x
+  setMaximum (ETH1I x) = setMaximum x
+  setMinimum (ETH1I x) = setMinimum x
+  setNormFactor (ETH1I x) = setNormFactor x
+  setStats (ETH1I x) = setStats x
+  setOption (ETH1I x) = setOption x
+  setXTitle (ETH1I x) = setXTitle x
+  setYTitle (ETH1I x) = setYTitle x
+  setZTitle (ETH1I x) = setZTitle x
+  showBackground (ETH1I x) = showBackground x
+  showPeaks (ETH1I x) = showPeaks x
+  smooth (ETH1I x) = smooth x
+  sumw2 (ETH1I x) = sumw2 x
+
+instance ITArrayI (Exist TH1I) where
+
+
+instance ITNamed (Exist TH1I) where
+  setName (ETH1I x) = setName x
+  setNameTitle (ETH1I x) = setNameTitle x
+  setTitle (ETH1I x) = setTitle x
+
+instance ITAttLine (Exist TH1I) where
+  setLineColor (ETH1I x) = setLineColor x
+
+instance ITAttFill (Exist TH1I) where
+  setFillColor (ETH1I x) = setFillColor x
+  setFillStyle (ETH1I x) = setFillStyle x
+
+instance ITAttMarker (Exist TH1I) where
+
+
+instance ITObject (Exist TH1I) where
+  getName (ETH1I x) = getName x
+  draw (ETH1I x) = draw x
+  findObject (ETH1I x) = findObject x
+  saveAs (ETH1I x) = saveAs x
+  write (ETH1I x) = write x
+  isA (ETH1I x) = isA x
+  printObj (ETH1I x) = printObj x
+
+instance IDeletable (Exist TH1I) where
+  delete (ETH1I x) = delete x
+
+instance ITArray (Exist TH1I) where
+
+
+instance ITH1S (Exist TH1S) where
+
+
+instance ITH1 (Exist TH1S) where
+  add (ETH1S x) = add x
+  addBinContent (ETH1S x) = addBinContent x
+  chi2Test (ETH1S x) = chi2Test x
+  computeIntegral (ETH1S x) = computeIntegral x
+  directoryAutoAdd (ETH1S x) = directoryAutoAdd x
+  distancetoPrimitive (ETH1S x) = distancetoPrimitive x
+  divide (ETH1S x) = divide x
+  drawCopy (ETH1S x) a1 = return . ETH1S =<< drawCopy x a1
+  drawNormalized (ETH1S x) = drawNormalized x
+  drawPanel (ETH1S x) = drawPanel x
+  bufferEmpty (ETH1S x) = bufferEmpty x
+  eval (ETH1S x) = eval x
+  executeEvent (ETH1S x) = executeEvent x
+  fFT (ETH1S x) = fFT x
+  fill1 (ETH1S x) = fill1 x
+  fillN (ETH1S x) = fillN x
+  fillRandom (ETH1S x) = fillRandom x
+  findBin (ETH1S x) = findBin x
+  findFixBin (ETH1S x) = findFixBin x
+  findFirstBinAbove (ETH1S x) = findFirstBinAbove x
+  findLastBinAbove (ETH1S x) = findLastBinAbove x
+  fitPanel (ETH1S x) = fitPanel x
+  getNdivisionA (ETH1S x) = getNdivisionA x
+  getAxisColorA (ETH1S x) = getAxisColorA x
+  getLabelColorA (ETH1S x) = getLabelColorA x
+  getLabelFontA (ETH1S x) = getLabelFontA x
+  getLabelOffsetA (ETH1S x) = getLabelOffsetA x
+  getLabelSizeA (ETH1S x) = getLabelSizeA x
+  getTitleFontA (ETH1S x) = getTitleFontA x
+  getTitleOffsetA (ETH1S x) = getTitleOffsetA x
+  getTitleSizeA (ETH1S x) = getTitleSizeA x
+  getTickLengthA (ETH1S x) = getTickLengthA x
+  getBarOffset (ETH1S x) = getBarOffset x
+  getBarWidth (ETH1S x) = getBarWidth x
+  getContour (ETH1S x) = getContour x
+  getContourLevel (ETH1S x) = getContourLevel x
+  getContourLevelPad (ETH1S x) = getContourLevelPad x
+  getBin (ETH1S x) = getBin x
+  getBinCenter (ETH1S x) = getBinCenter x
+  getBinContent1 (ETH1S x) = getBinContent1 x
+  getBinContent2 (ETH1S x) = getBinContent2 x
+  getBinContent3 (ETH1S x) = getBinContent3 x
+  getBinError1 (ETH1S x) = getBinError1 x
+  getBinError2 (ETH1S x) = getBinError2 x
+  getBinError3 (ETH1S x) = getBinError3 x
+  getBinLowEdge (ETH1S x) = getBinLowEdge x
+  getBinWidth (ETH1S x) = getBinWidth x
+  getCellContent (ETH1S x) = getCellContent x
+  getCellError (ETH1S x) = getCellError x
+  getEntries (ETH1S x) = getEntries x
+  getEffectiveEntries (ETH1S x) = getEffectiveEntries x
+  getFunction (ETH1S x) = getFunction x
+  getDimension (ETH1S x) = getDimension x
+  getKurtosis (ETH1S x) = getKurtosis x
+  getLowEdge (ETH1S x) = getLowEdge x
+  getMaximum (ETH1S x) = getMaximum x
+  getMaximumBin (ETH1S x) = getMaximumBin x
+  getMaximumStored (ETH1S x) = getMaximumStored x
+  getMinimum (ETH1S x) = getMinimum x
+  getMinimumBin (ETH1S x) = getMinimumBin x
+  getMinimumStored (ETH1S x) = getMinimumStored x
+  getMean (ETH1S x) = getMean x
+  getMeanError (ETH1S x) = getMeanError x
+  getNbinsX (ETH1S x) = getNbinsX x
+  getNbinsY (ETH1S x) = getNbinsY x
+  getNbinsZ (ETH1S x) = getNbinsZ x
+  getQuantiles (ETH1S x) = getQuantiles x
+  getRandom (ETH1S x) = getRandom x
+  getStats (ETH1S x) = getStats x
+  getSumOfWeights (ETH1S x) = getSumOfWeights x
+  getSumw2 (ETH1S x) = getSumw2 x
+  getSumw2N (ETH1S x) = getSumw2N x
+  getRMS (ETH1S x) = getRMS x
+  getRMSError (ETH1S x) = getRMSError x
+  getSkewness (ETH1S x) = getSkewness x
+  integral1 (ETH1S x) = integral1 x
+  interpolate1 (ETH1S x) = interpolate1 x
+  interpolate2 (ETH1S x) = interpolate2 x
+  interpolate3 (ETH1S x) = interpolate3 x
+  kolmogorovTest (ETH1S x) = kolmogorovTest x
+  labelsDeflate (ETH1S x) = labelsDeflate x
+  labelsInflate (ETH1S x) = labelsInflate x
+  labelsOption (ETH1S x) = labelsOption x
+  multiflyF (ETH1S x) = multiflyF x
+  multiply (ETH1S x) = multiply x
+  paint (ETH1S x) = paint x
+  putStats (ETH1S x) = putStats x
+  rebin (ETH1S x) = rebin x
+  rebinAxis (ETH1S x) = rebinAxis x
+  rebuild (ETH1S x) = rebuild x
+  recursiveRemove (ETH1S x) = recursiveRemove x
+  reset (ETH1S x) = reset x
+  resetStats (ETH1S x) = resetStats x
+  scale (ETH1S x) = scale x
+  setAxisColorA (ETH1S x) = setAxisColorA x
+  setAxisRange (ETH1S x) = setAxisRange x
+  setBarOffset (ETH1S x) = setBarOffset x
+  setBarWidth (ETH1S x) = setBarWidth x
+  setBinContent1 (ETH1S x) = setBinContent1 x
+  setBinContent2 (ETH1S x) = setBinContent2 x
+  setBinContent3 (ETH1S x) = setBinContent3 x
+  setBinError1 (ETH1S x) = setBinError1 x
+  setBinError2 (ETH1S x) = setBinError2 x
+  setBinError3 (ETH1S x) = setBinError3 x
+  setBins1 (ETH1S x) = setBins1 x
+  setBins2 (ETH1S x) = setBins2 x
+  setBins3 (ETH1S x) = setBins3 x
+  setBinsLength (ETH1S x) = setBinsLength x
+  setBuffer (ETH1S x) = setBuffer x
+  setCellContent (ETH1S x) = setCellContent x
+  setContent (ETH1S x) = setContent x
+  setContour (ETH1S x) = setContour x
+  setContourLevel (ETH1S x) = setContourLevel x
+  setDirectory (ETH1S x) = setDirectory x
+  setEntries (ETH1S x) = setEntries x
+  setError (ETH1S x) = setError x
+  setLabelColorA (ETH1S x) = setLabelColorA x
+  setLabelSizeA (ETH1S x) = setLabelSizeA x
+  setLabelFontA (ETH1S x) = setLabelFontA x
+  setLabelOffsetA (ETH1S x) = setLabelOffsetA x
+  setMaximum (ETH1S x) = setMaximum x
+  setMinimum (ETH1S x) = setMinimum x
+  setNormFactor (ETH1S x) = setNormFactor x
+  setStats (ETH1S x) = setStats x
+  setOption (ETH1S x) = setOption x
+  setXTitle (ETH1S x) = setXTitle x
+  setYTitle (ETH1S x) = setYTitle x
+  setZTitle (ETH1S x) = setZTitle x
+  showBackground (ETH1S x) = showBackground x
+  showPeaks (ETH1S x) = showPeaks x
+  smooth (ETH1S x) = smooth x
+  sumw2 (ETH1S x) = sumw2 x
+
+instance ITArrayS (Exist TH1S) where
+
+
+instance ITNamed (Exist TH1S) where
+  setName (ETH1S x) = setName x
+  setNameTitle (ETH1S x) = setNameTitle x
+  setTitle (ETH1S x) = setTitle x
+
+instance ITAttLine (Exist TH1S) where
+  setLineColor (ETH1S x) = setLineColor x
+
+instance ITAttFill (Exist TH1S) where
+  setFillColor (ETH1S x) = setFillColor x
+  setFillStyle (ETH1S x) = setFillStyle x
+
+instance ITAttMarker (Exist TH1S) where
+
+
+instance ITObject (Exist TH1S) where
+  getName (ETH1S x) = getName x
+  draw (ETH1S x) = draw x
+  findObject (ETH1S x) = findObject x
+  saveAs (ETH1S x) = saveAs x
+  write (ETH1S x) = write x
+  isA (ETH1S x) = isA x
+  printObj (ETH1S x) = printObj x
+
+instance IDeletable (Exist TH1S) where
+  delete (ETH1S x) = delete x
+
+instance ITArray (Exist TH1S) where
+
+
+instance ITH2C (Exist TH2C) where
+
+
+instance ITH2 (Exist TH2C) where
+  fill2 (ETH2C x) = fill2 x
+  fillRandom2 (ETH2C x) = fillRandom2 x
+  findFirstBinAbove2 (ETH2C x) = findFirstBinAbove2 x
+  findLastBinAbove2 (ETH2C x) = findLastBinAbove2 x
+  fitSlicesX (ETH2C x) = fitSlicesX x
+  fitSlicesY (ETH2C x) = fitSlicesY x
+  getCorrelationFactor (ETH2C x) = getCorrelationFactor x
+  getCovariance (ETH2C x) = getCovariance x
+  integral2 (ETH2C x) = integral2 x
+  rebinX (ETH2C x) = rebinX x
+  rebinY (ETH2C x) = rebinY x
+  rebin2D (ETH2C x) = rebin2D x
+  setShowProjectionX (ETH2C x) = setShowProjectionX x
+  setShowProjectionY (ETH2C x) = setShowProjectionY x
+
+instance ITArrayC (Exist TH2C) where
+
+
+instance ITH1 (Exist TH2C) where
+  add (ETH2C x) = add x
+  addBinContent (ETH2C x) = addBinContent x
+  chi2Test (ETH2C x) = chi2Test x
+  computeIntegral (ETH2C x) = computeIntegral x
+  directoryAutoAdd (ETH2C x) = directoryAutoAdd x
+  distancetoPrimitive (ETH2C x) = distancetoPrimitive x
+  divide (ETH2C x) = divide x
+  drawCopy (ETH2C x) a1 = return . ETH2C =<< drawCopy x a1
+  drawNormalized (ETH2C x) = drawNormalized x
+  drawPanel (ETH2C x) = drawPanel x
+  bufferEmpty (ETH2C x) = bufferEmpty x
+  eval (ETH2C x) = eval x
+  executeEvent (ETH2C x) = executeEvent x
+  fFT (ETH2C x) = fFT x
+  fill1 (ETH2C x) = fill1 x
+  fillN (ETH2C x) = fillN x
+  fillRandom (ETH2C x) = fillRandom x
+  findBin (ETH2C x) = findBin x
+  findFixBin (ETH2C x) = findFixBin x
+  findFirstBinAbove (ETH2C x) = findFirstBinAbove x
+  findLastBinAbove (ETH2C x) = findLastBinAbove x
+  fitPanel (ETH2C x) = fitPanel x
+  getNdivisionA (ETH2C x) = getNdivisionA x
+  getAxisColorA (ETH2C x) = getAxisColorA x
+  getLabelColorA (ETH2C x) = getLabelColorA x
+  getLabelFontA (ETH2C x) = getLabelFontA x
+  getLabelOffsetA (ETH2C x) = getLabelOffsetA x
+  getLabelSizeA (ETH2C x) = getLabelSizeA x
+  getTitleFontA (ETH2C x) = getTitleFontA x
+  getTitleOffsetA (ETH2C x) = getTitleOffsetA x
+  getTitleSizeA (ETH2C x) = getTitleSizeA x
+  getTickLengthA (ETH2C x) = getTickLengthA x
+  getBarOffset (ETH2C x) = getBarOffset x
+  getBarWidth (ETH2C x) = getBarWidth x
+  getContour (ETH2C x) = getContour x
+  getContourLevel (ETH2C x) = getContourLevel x
+  getContourLevelPad (ETH2C x) = getContourLevelPad x
+  getBin (ETH2C x) = getBin x
+  getBinCenter (ETH2C x) = getBinCenter x
+  getBinContent1 (ETH2C x) = getBinContent1 x
+  getBinContent2 (ETH2C x) = getBinContent2 x
+  getBinContent3 (ETH2C x) = getBinContent3 x
+  getBinError1 (ETH2C x) = getBinError1 x
+  getBinError2 (ETH2C x) = getBinError2 x
+  getBinError3 (ETH2C x) = getBinError3 x
+  getBinLowEdge (ETH2C x) = getBinLowEdge x
+  getBinWidth (ETH2C x) = getBinWidth x
+  getCellContent (ETH2C x) = getCellContent x
+  getCellError (ETH2C x) = getCellError x
+  getEntries (ETH2C x) = getEntries x
+  getEffectiveEntries (ETH2C x) = getEffectiveEntries x
+  getFunction (ETH2C x) = getFunction x
+  getDimension (ETH2C x) = getDimension x
+  getKurtosis (ETH2C x) = getKurtosis x
+  getLowEdge (ETH2C x) = getLowEdge x
+  getMaximum (ETH2C x) = getMaximum x
+  getMaximumBin (ETH2C x) = getMaximumBin x
+  getMaximumStored (ETH2C x) = getMaximumStored x
+  getMinimum (ETH2C x) = getMinimum x
+  getMinimumBin (ETH2C x) = getMinimumBin x
+  getMinimumStored (ETH2C x) = getMinimumStored x
+  getMean (ETH2C x) = getMean x
+  getMeanError (ETH2C x) = getMeanError x
+  getNbinsX (ETH2C x) = getNbinsX x
+  getNbinsY (ETH2C x) = getNbinsY x
+  getNbinsZ (ETH2C x) = getNbinsZ x
+  getQuantiles (ETH2C x) = getQuantiles x
+  getRandom (ETH2C x) = getRandom x
+  getStats (ETH2C x) = getStats x
+  getSumOfWeights (ETH2C x) = getSumOfWeights x
+  getSumw2 (ETH2C x) = getSumw2 x
+  getSumw2N (ETH2C x) = getSumw2N x
+  getRMS (ETH2C x) = getRMS x
+  getRMSError (ETH2C x) = getRMSError x
+  getSkewness (ETH2C x) = getSkewness x
+  integral1 (ETH2C x) = integral1 x
+  interpolate1 (ETH2C x) = interpolate1 x
+  interpolate2 (ETH2C x) = interpolate2 x
+  interpolate3 (ETH2C x) = interpolate3 x
+  kolmogorovTest (ETH2C x) = kolmogorovTest x
+  labelsDeflate (ETH2C x) = labelsDeflate x
+  labelsInflate (ETH2C x) = labelsInflate x
+  labelsOption (ETH2C x) = labelsOption x
+  multiflyF (ETH2C x) = multiflyF x
+  multiply (ETH2C x) = multiply x
+  paint (ETH2C x) = paint x
+  putStats (ETH2C x) = putStats x
+  rebin (ETH2C x) = rebin x
+  rebinAxis (ETH2C x) = rebinAxis x
+  rebuild (ETH2C x) = rebuild x
+  recursiveRemove (ETH2C x) = recursiveRemove x
+  reset (ETH2C x) = reset x
+  resetStats (ETH2C x) = resetStats x
+  scale (ETH2C x) = scale x
+  setAxisColorA (ETH2C x) = setAxisColorA x
+  setAxisRange (ETH2C x) = setAxisRange x
+  setBarOffset (ETH2C x) = setBarOffset x
+  setBarWidth (ETH2C x) = setBarWidth x
+  setBinContent1 (ETH2C x) = setBinContent1 x
+  setBinContent2 (ETH2C x) = setBinContent2 x
+  setBinContent3 (ETH2C x) = setBinContent3 x
+  setBinError1 (ETH2C x) = setBinError1 x
+  setBinError2 (ETH2C x) = setBinError2 x
+  setBinError3 (ETH2C x) = setBinError3 x
+  setBins1 (ETH2C x) = setBins1 x
+  setBins2 (ETH2C x) = setBins2 x
+  setBins3 (ETH2C x) = setBins3 x
+  setBinsLength (ETH2C x) = setBinsLength x
+  setBuffer (ETH2C x) = setBuffer x
+  setCellContent (ETH2C x) = setCellContent x
+  setContent (ETH2C x) = setContent x
+  setContour (ETH2C x) = setContour x
+  setContourLevel (ETH2C x) = setContourLevel x
+  setDirectory (ETH2C x) = setDirectory x
+  setEntries (ETH2C x) = setEntries x
+  setError (ETH2C x) = setError x
+  setLabelColorA (ETH2C x) = setLabelColorA x
+  setLabelSizeA (ETH2C x) = setLabelSizeA x
+  setLabelFontA (ETH2C x) = setLabelFontA x
+  setLabelOffsetA (ETH2C x) = setLabelOffsetA x
+  setMaximum (ETH2C x) = setMaximum x
+  setMinimum (ETH2C x) = setMinimum x
+  setNormFactor (ETH2C x) = setNormFactor x
+  setStats (ETH2C x) = setStats x
+  setOption (ETH2C x) = setOption x
+  setXTitle (ETH2C x) = setXTitle x
+  setYTitle (ETH2C x) = setYTitle x
+  setZTitle (ETH2C x) = setZTitle x
+  showBackground (ETH2C x) = showBackground x
+  showPeaks (ETH2C x) = showPeaks x
+  smooth (ETH2C x) = smooth x
+  sumw2 (ETH2C x) = sumw2 x
+
+instance ITNamed (Exist TH2C) where
+  setName (ETH2C x) = setName x
+  setNameTitle (ETH2C x) = setNameTitle x
+  setTitle (ETH2C x) = setTitle x
+
+instance ITAttLine (Exist TH2C) where
+  setLineColor (ETH2C x) = setLineColor x
+
+instance ITAttFill (Exist TH2C) where
+  setFillColor (ETH2C x) = setFillColor x
+  setFillStyle (ETH2C x) = setFillStyle x
+
+instance ITAttMarker (Exist TH2C) where
+
+
+instance ITObject (Exist TH2C) where
+  getName (ETH2C x) = getName x
+  draw (ETH2C x) = draw x
+  findObject (ETH2C x) = findObject x
+  saveAs (ETH2C x) = saveAs x
+  write (ETH2C x) = write x
+  isA (ETH2C x) = isA x
+  printObj (ETH2C x) = printObj x
+
+instance IDeletable (Exist TH2C) where
+  delete (ETH2C x) = delete x
+
+instance ITArray (Exist TH2C) where
+
+
+instance ITH2D (Exist TH2D) where
+
+
+instance ITH2 (Exist TH2D) where
+  fill2 (ETH2D x) = fill2 x
+  fillRandom2 (ETH2D x) = fillRandom2 x
+  findFirstBinAbove2 (ETH2D x) = findFirstBinAbove2 x
+  findLastBinAbove2 (ETH2D x) = findLastBinAbove2 x
+  fitSlicesX (ETH2D x) = fitSlicesX x
+  fitSlicesY (ETH2D x) = fitSlicesY x
+  getCorrelationFactor (ETH2D x) = getCorrelationFactor x
+  getCovariance (ETH2D x) = getCovariance x
+  integral2 (ETH2D x) = integral2 x
+  rebinX (ETH2D x) = rebinX x
+  rebinY (ETH2D x) = rebinY x
+  rebin2D (ETH2D x) = rebin2D x
+  setShowProjectionX (ETH2D x) = setShowProjectionX x
+  setShowProjectionY (ETH2D x) = setShowProjectionY x
+
+instance ITArrayD (Exist TH2D) where
+
+
+instance ITH1 (Exist TH2D) where
+  add (ETH2D x) = add x
+  addBinContent (ETH2D x) = addBinContent x
+  chi2Test (ETH2D x) = chi2Test x
+  computeIntegral (ETH2D x) = computeIntegral x
+  directoryAutoAdd (ETH2D x) = directoryAutoAdd x
+  distancetoPrimitive (ETH2D x) = distancetoPrimitive x
+  divide (ETH2D x) = divide x
+  drawCopy (ETH2D x) a1 = return . ETH2D =<< drawCopy x a1
+  drawNormalized (ETH2D x) = drawNormalized x
+  drawPanel (ETH2D x) = drawPanel x
+  bufferEmpty (ETH2D x) = bufferEmpty x
+  eval (ETH2D x) = eval x
+  executeEvent (ETH2D x) = executeEvent x
+  fFT (ETH2D x) = fFT x
+  fill1 (ETH2D x) = fill1 x
+  fillN (ETH2D x) = fillN x
+  fillRandom (ETH2D x) = fillRandom x
+  findBin (ETH2D x) = findBin x
+  findFixBin (ETH2D x) = findFixBin x
+  findFirstBinAbove (ETH2D x) = findFirstBinAbove x
+  findLastBinAbove (ETH2D x) = findLastBinAbove x
+  fitPanel (ETH2D x) = fitPanel x
+  getNdivisionA (ETH2D x) = getNdivisionA x
+  getAxisColorA (ETH2D x) = getAxisColorA x
+  getLabelColorA (ETH2D x) = getLabelColorA x
+  getLabelFontA (ETH2D x) = getLabelFontA x
+  getLabelOffsetA (ETH2D x) = getLabelOffsetA x
+  getLabelSizeA (ETH2D x) = getLabelSizeA x
+  getTitleFontA (ETH2D x) = getTitleFontA x
+  getTitleOffsetA (ETH2D x) = getTitleOffsetA x
+  getTitleSizeA (ETH2D x) = getTitleSizeA x
+  getTickLengthA (ETH2D x) = getTickLengthA x
+  getBarOffset (ETH2D x) = getBarOffset x
+  getBarWidth (ETH2D x) = getBarWidth x
+  getContour (ETH2D x) = getContour x
+  getContourLevel (ETH2D x) = getContourLevel x
+  getContourLevelPad (ETH2D x) = getContourLevelPad x
+  getBin (ETH2D x) = getBin x
+  getBinCenter (ETH2D x) = getBinCenter x
+  getBinContent1 (ETH2D x) = getBinContent1 x
+  getBinContent2 (ETH2D x) = getBinContent2 x
+  getBinContent3 (ETH2D x) = getBinContent3 x
+  getBinError1 (ETH2D x) = getBinError1 x
+  getBinError2 (ETH2D x) = getBinError2 x
+  getBinError3 (ETH2D x) = getBinError3 x
+  getBinLowEdge (ETH2D x) = getBinLowEdge x
+  getBinWidth (ETH2D x) = getBinWidth x
+  getCellContent (ETH2D x) = getCellContent x
+  getCellError (ETH2D x) = getCellError x
+  getEntries (ETH2D x) = getEntries x
+  getEffectiveEntries (ETH2D x) = getEffectiveEntries x
+  getFunction (ETH2D x) = getFunction x
+  getDimension (ETH2D x) = getDimension x
+  getKurtosis (ETH2D x) = getKurtosis x
+  getLowEdge (ETH2D x) = getLowEdge x
+  getMaximum (ETH2D x) = getMaximum x
+  getMaximumBin (ETH2D x) = getMaximumBin x
+  getMaximumStored (ETH2D x) = getMaximumStored x
+  getMinimum (ETH2D x) = getMinimum x
+  getMinimumBin (ETH2D x) = getMinimumBin x
+  getMinimumStored (ETH2D x) = getMinimumStored x
+  getMean (ETH2D x) = getMean x
+  getMeanError (ETH2D x) = getMeanError x
+  getNbinsX (ETH2D x) = getNbinsX x
+  getNbinsY (ETH2D x) = getNbinsY x
+  getNbinsZ (ETH2D x) = getNbinsZ x
+  getQuantiles (ETH2D x) = getQuantiles x
+  getRandom (ETH2D x) = getRandom x
+  getStats (ETH2D x) = getStats x
+  getSumOfWeights (ETH2D x) = getSumOfWeights x
+  getSumw2 (ETH2D x) = getSumw2 x
+  getSumw2N (ETH2D x) = getSumw2N x
+  getRMS (ETH2D x) = getRMS x
+  getRMSError (ETH2D x) = getRMSError x
+  getSkewness (ETH2D x) = getSkewness x
+  integral1 (ETH2D x) = integral1 x
+  interpolate1 (ETH2D x) = interpolate1 x
+  interpolate2 (ETH2D x) = interpolate2 x
+  interpolate3 (ETH2D x) = interpolate3 x
+  kolmogorovTest (ETH2D x) = kolmogorovTest x
+  labelsDeflate (ETH2D x) = labelsDeflate x
+  labelsInflate (ETH2D x) = labelsInflate x
+  labelsOption (ETH2D x) = labelsOption x
+  multiflyF (ETH2D x) = multiflyF x
+  multiply (ETH2D x) = multiply x
+  paint (ETH2D x) = paint x
+  putStats (ETH2D x) = putStats x
+  rebin (ETH2D x) = rebin x
+  rebinAxis (ETH2D x) = rebinAxis x
+  rebuild (ETH2D x) = rebuild x
+  recursiveRemove (ETH2D x) = recursiveRemove x
+  reset (ETH2D x) = reset x
+  resetStats (ETH2D x) = resetStats x
+  scale (ETH2D x) = scale x
+  setAxisColorA (ETH2D x) = setAxisColorA x
+  setAxisRange (ETH2D x) = setAxisRange x
+  setBarOffset (ETH2D x) = setBarOffset x
+  setBarWidth (ETH2D x) = setBarWidth x
+  setBinContent1 (ETH2D x) = setBinContent1 x
+  setBinContent2 (ETH2D x) = setBinContent2 x
+  setBinContent3 (ETH2D x) = setBinContent3 x
+  setBinError1 (ETH2D x) = setBinError1 x
+  setBinError2 (ETH2D x) = setBinError2 x
+  setBinError3 (ETH2D x) = setBinError3 x
+  setBins1 (ETH2D x) = setBins1 x
+  setBins2 (ETH2D x) = setBins2 x
+  setBins3 (ETH2D x) = setBins3 x
+  setBinsLength (ETH2D x) = setBinsLength x
+  setBuffer (ETH2D x) = setBuffer x
+  setCellContent (ETH2D x) = setCellContent x
+  setContent (ETH2D x) = setContent x
+  setContour (ETH2D x) = setContour x
+  setContourLevel (ETH2D x) = setContourLevel x
+  setDirectory (ETH2D x) = setDirectory x
+  setEntries (ETH2D x) = setEntries x
+  setError (ETH2D x) = setError x
+  setLabelColorA (ETH2D x) = setLabelColorA x
+  setLabelSizeA (ETH2D x) = setLabelSizeA x
+  setLabelFontA (ETH2D x) = setLabelFontA x
+  setLabelOffsetA (ETH2D x) = setLabelOffsetA x
+  setMaximum (ETH2D x) = setMaximum x
+  setMinimum (ETH2D x) = setMinimum x
+  setNormFactor (ETH2D x) = setNormFactor x
+  setStats (ETH2D x) = setStats x
+  setOption (ETH2D x) = setOption x
+  setXTitle (ETH2D x) = setXTitle x
+  setYTitle (ETH2D x) = setYTitle x
+  setZTitle (ETH2D x) = setZTitle x
+  showBackground (ETH2D x) = showBackground x
+  showPeaks (ETH2D x) = showPeaks x
+  smooth (ETH2D x) = smooth x
+  sumw2 (ETH2D x) = sumw2 x
+
+instance ITNamed (Exist TH2D) where
+  setName (ETH2D x) = setName x
+  setNameTitle (ETH2D x) = setNameTitle x
+  setTitle (ETH2D x) = setTitle x
+
+instance ITAttLine (Exist TH2D) where
+  setLineColor (ETH2D x) = setLineColor x
+
+instance ITAttFill (Exist TH2D) where
+  setFillColor (ETH2D x) = setFillColor x
+  setFillStyle (ETH2D x) = setFillStyle x
+
+instance ITAttMarker (Exist TH2D) where
+
+
+instance ITObject (Exist TH2D) where
+  getName (ETH2D x) = getName x
+  draw (ETH2D x) = draw x
+  findObject (ETH2D x) = findObject x
+  saveAs (ETH2D x) = saveAs x
+  write (ETH2D x) = write x
+  isA (ETH2D x) = isA x
+  printObj (ETH2D x) = printObj x
+
+instance IDeletable (Exist TH2D) where
+  delete (ETH2D x) = delete x
+
+instance ITArray (Exist TH2D) where
+
+
+instance ITH2F (Exist TH2F) where
+
+
+instance ITH2 (Exist TH2F) where
+  fill2 (ETH2F x) = fill2 x
+  fillRandom2 (ETH2F x) = fillRandom2 x
+  findFirstBinAbove2 (ETH2F x) = findFirstBinAbove2 x
+  findLastBinAbove2 (ETH2F x) = findLastBinAbove2 x
+  fitSlicesX (ETH2F x) = fitSlicesX x
+  fitSlicesY (ETH2F x) = fitSlicesY x
+  getCorrelationFactor (ETH2F x) = getCorrelationFactor x
+  getCovariance (ETH2F x) = getCovariance x
+  integral2 (ETH2F x) = integral2 x
+  rebinX (ETH2F x) = rebinX x
+  rebinY (ETH2F x) = rebinY x
+  rebin2D (ETH2F x) = rebin2D x
+  setShowProjectionX (ETH2F x) = setShowProjectionX x
+  setShowProjectionY (ETH2F x) = setShowProjectionY x
+
+instance ITArrayF (Exist TH2F) where
+
+
+instance ITH1 (Exist TH2F) where
+  add (ETH2F x) = add x
+  addBinContent (ETH2F x) = addBinContent x
+  chi2Test (ETH2F x) = chi2Test x
+  computeIntegral (ETH2F x) = computeIntegral x
+  directoryAutoAdd (ETH2F x) = directoryAutoAdd x
+  distancetoPrimitive (ETH2F x) = distancetoPrimitive x
+  divide (ETH2F x) = divide x
+  drawCopy (ETH2F x) a1 = return . ETH2F =<< drawCopy x a1
+  drawNormalized (ETH2F x) = drawNormalized x
+  drawPanel (ETH2F x) = drawPanel x
+  bufferEmpty (ETH2F x) = bufferEmpty x
+  eval (ETH2F x) = eval x
+  executeEvent (ETH2F x) = executeEvent x
+  fFT (ETH2F x) = fFT x
+  fill1 (ETH2F x) = fill1 x
+  fillN (ETH2F x) = fillN x
+  fillRandom (ETH2F x) = fillRandom x
+  findBin (ETH2F x) = findBin x
+  findFixBin (ETH2F x) = findFixBin x
+  findFirstBinAbove (ETH2F x) = findFirstBinAbove x
+  findLastBinAbove (ETH2F x) = findLastBinAbove x
+  fitPanel (ETH2F x) = fitPanel x
+  getNdivisionA (ETH2F x) = getNdivisionA x
+  getAxisColorA (ETH2F x) = getAxisColorA x
+  getLabelColorA (ETH2F x) = getLabelColorA x
+  getLabelFontA (ETH2F x) = getLabelFontA x
+  getLabelOffsetA (ETH2F x) = getLabelOffsetA x
+  getLabelSizeA (ETH2F x) = getLabelSizeA x
+  getTitleFontA (ETH2F x) = getTitleFontA x
+  getTitleOffsetA (ETH2F x) = getTitleOffsetA x
+  getTitleSizeA (ETH2F x) = getTitleSizeA x
+  getTickLengthA (ETH2F x) = getTickLengthA x
+  getBarOffset (ETH2F x) = getBarOffset x
+  getBarWidth (ETH2F x) = getBarWidth x
+  getContour (ETH2F x) = getContour x
+  getContourLevel (ETH2F x) = getContourLevel x
+  getContourLevelPad (ETH2F x) = getContourLevelPad x
+  getBin (ETH2F x) = getBin x
+  getBinCenter (ETH2F x) = getBinCenter x
+  getBinContent1 (ETH2F x) = getBinContent1 x
+  getBinContent2 (ETH2F x) = getBinContent2 x
+  getBinContent3 (ETH2F x) = getBinContent3 x
+  getBinError1 (ETH2F x) = getBinError1 x
+  getBinError2 (ETH2F x) = getBinError2 x
+  getBinError3 (ETH2F x) = getBinError3 x
+  getBinLowEdge (ETH2F x) = getBinLowEdge x
+  getBinWidth (ETH2F x) = getBinWidth x
+  getCellContent (ETH2F x) = getCellContent x
+  getCellError (ETH2F x) = getCellError x
+  getEntries (ETH2F x) = getEntries x
+  getEffectiveEntries (ETH2F x) = getEffectiveEntries x
+  getFunction (ETH2F x) = getFunction x
+  getDimension (ETH2F x) = getDimension x
+  getKurtosis (ETH2F x) = getKurtosis x
+  getLowEdge (ETH2F x) = getLowEdge x
+  getMaximum (ETH2F x) = getMaximum x
+  getMaximumBin (ETH2F x) = getMaximumBin x
+  getMaximumStored (ETH2F x) = getMaximumStored x
+  getMinimum (ETH2F x) = getMinimum x
+  getMinimumBin (ETH2F x) = getMinimumBin x
+  getMinimumStored (ETH2F x) = getMinimumStored x
+  getMean (ETH2F x) = getMean x
+  getMeanError (ETH2F x) = getMeanError x
+  getNbinsX (ETH2F x) = getNbinsX x
+  getNbinsY (ETH2F x) = getNbinsY x
+  getNbinsZ (ETH2F x) = getNbinsZ x
+  getQuantiles (ETH2F x) = getQuantiles x
+  getRandom (ETH2F x) = getRandom x
+  getStats (ETH2F x) = getStats x
+  getSumOfWeights (ETH2F x) = getSumOfWeights x
+  getSumw2 (ETH2F x) = getSumw2 x
+  getSumw2N (ETH2F x) = getSumw2N x
+  getRMS (ETH2F x) = getRMS x
+  getRMSError (ETH2F x) = getRMSError x
+  getSkewness (ETH2F x) = getSkewness x
+  integral1 (ETH2F x) = integral1 x
+  interpolate1 (ETH2F x) = interpolate1 x
+  interpolate2 (ETH2F x) = interpolate2 x
+  interpolate3 (ETH2F x) = interpolate3 x
+  kolmogorovTest (ETH2F x) = kolmogorovTest x
+  labelsDeflate (ETH2F x) = labelsDeflate x
+  labelsInflate (ETH2F x) = labelsInflate x
+  labelsOption (ETH2F x) = labelsOption x
+  multiflyF (ETH2F x) = multiflyF x
+  multiply (ETH2F x) = multiply x
+  paint (ETH2F x) = paint x
+  putStats (ETH2F x) = putStats x
+  rebin (ETH2F x) = rebin x
+  rebinAxis (ETH2F x) = rebinAxis x
+  rebuild (ETH2F x) = rebuild x
+  recursiveRemove (ETH2F x) = recursiveRemove x
+  reset (ETH2F x) = reset x
+  resetStats (ETH2F x) = resetStats x
+  scale (ETH2F x) = scale x
+  setAxisColorA (ETH2F x) = setAxisColorA x
+  setAxisRange (ETH2F x) = setAxisRange x
+  setBarOffset (ETH2F x) = setBarOffset x
+  setBarWidth (ETH2F x) = setBarWidth x
+  setBinContent1 (ETH2F x) = setBinContent1 x
+  setBinContent2 (ETH2F x) = setBinContent2 x
+  setBinContent3 (ETH2F x) = setBinContent3 x
+  setBinError1 (ETH2F x) = setBinError1 x
+  setBinError2 (ETH2F x) = setBinError2 x
+  setBinError3 (ETH2F x) = setBinError3 x
+  setBins1 (ETH2F x) = setBins1 x
+  setBins2 (ETH2F x) = setBins2 x
+  setBins3 (ETH2F x) = setBins3 x
+  setBinsLength (ETH2F x) = setBinsLength x
+  setBuffer (ETH2F x) = setBuffer x
+  setCellContent (ETH2F x) = setCellContent x
+  setContent (ETH2F x) = setContent x
+  setContour (ETH2F x) = setContour x
+  setContourLevel (ETH2F x) = setContourLevel x
+  setDirectory (ETH2F x) = setDirectory x
+  setEntries (ETH2F x) = setEntries x
+  setError (ETH2F x) = setError x
+  setLabelColorA (ETH2F x) = setLabelColorA x
+  setLabelSizeA (ETH2F x) = setLabelSizeA x
+  setLabelFontA (ETH2F x) = setLabelFontA x
+  setLabelOffsetA (ETH2F x) = setLabelOffsetA x
+  setMaximum (ETH2F x) = setMaximum x
+  setMinimum (ETH2F x) = setMinimum x
+  setNormFactor (ETH2F x) = setNormFactor x
+  setStats (ETH2F x) = setStats x
+  setOption (ETH2F x) = setOption x
+  setXTitle (ETH2F x) = setXTitle x
+  setYTitle (ETH2F x) = setYTitle x
+  setZTitle (ETH2F x) = setZTitle x
+  showBackground (ETH2F x) = showBackground x
+  showPeaks (ETH2F x) = showPeaks x
+  smooth (ETH2F x) = smooth x
+  sumw2 (ETH2F x) = sumw2 x
+
+instance ITNamed (Exist TH2F) where
+  setName (ETH2F x) = setName x
+  setNameTitle (ETH2F x) = setNameTitle x
+  setTitle (ETH2F x) = setTitle x
+
+instance ITAttLine (Exist TH2F) where
+  setLineColor (ETH2F x) = setLineColor x
+
+instance ITAttFill (Exist TH2F) where
+  setFillColor (ETH2F x) = setFillColor x
+  setFillStyle (ETH2F x) = setFillStyle x
+
+instance ITAttMarker (Exist TH2F) where
+
+
+instance ITObject (Exist TH2F) where
+  getName (ETH2F x) = getName x
+  draw (ETH2F x) = draw x
+  findObject (ETH2F x) = findObject x
+  saveAs (ETH2F x) = saveAs x
+  write (ETH2F x) = write x
+  isA (ETH2F x) = isA x
+  printObj (ETH2F x) = printObj x
+
+instance IDeletable (Exist TH2F) where
+  delete (ETH2F x) = delete x
+
+instance ITArray (Exist TH2F) where
+
+
+instance ITH2I (Exist TH2I) where
+
+
+instance ITH2 (Exist TH2I) where
+  fill2 (ETH2I x) = fill2 x
+  fillRandom2 (ETH2I x) = fillRandom2 x
+  findFirstBinAbove2 (ETH2I x) = findFirstBinAbove2 x
+  findLastBinAbove2 (ETH2I x) = findLastBinAbove2 x
+  fitSlicesX (ETH2I x) = fitSlicesX x
+  fitSlicesY (ETH2I x) = fitSlicesY x
+  getCorrelationFactor (ETH2I x) = getCorrelationFactor x
+  getCovariance (ETH2I x) = getCovariance x
+  integral2 (ETH2I x) = integral2 x
+  rebinX (ETH2I x) = rebinX x
+  rebinY (ETH2I x) = rebinY x
+  rebin2D (ETH2I x) = rebin2D x
+  setShowProjectionX (ETH2I x) = setShowProjectionX x
+  setShowProjectionY (ETH2I x) = setShowProjectionY x
+
+instance ITArrayI (Exist TH2I) where
+
+
+instance ITH1 (Exist TH2I) where
+  add (ETH2I x) = add x
+  addBinContent (ETH2I x) = addBinContent x
+  chi2Test (ETH2I x) = chi2Test x
+  computeIntegral (ETH2I x) = computeIntegral x
+  directoryAutoAdd (ETH2I x) = directoryAutoAdd x
+  distancetoPrimitive (ETH2I x) = distancetoPrimitive x
+  divide (ETH2I x) = divide x
+  drawCopy (ETH2I x) a1 = return . ETH2I =<< drawCopy x a1
+  drawNormalized (ETH2I x) = drawNormalized x
+  drawPanel (ETH2I x) = drawPanel x
+  bufferEmpty (ETH2I x) = bufferEmpty x
+  eval (ETH2I x) = eval x
+  executeEvent (ETH2I x) = executeEvent x
+  fFT (ETH2I x) = fFT x
+  fill1 (ETH2I x) = fill1 x
+  fillN (ETH2I x) = fillN x
+  fillRandom (ETH2I x) = fillRandom x
+  findBin (ETH2I x) = findBin x
+  findFixBin (ETH2I x) = findFixBin x
+  findFirstBinAbove (ETH2I x) = findFirstBinAbove x
+  findLastBinAbove (ETH2I x) = findLastBinAbove x
+  fitPanel (ETH2I x) = fitPanel x
+  getNdivisionA (ETH2I x) = getNdivisionA x
+  getAxisColorA (ETH2I x) = getAxisColorA x
+  getLabelColorA (ETH2I x) = getLabelColorA x
+  getLabelFontA (ETH2I x) = getLabelFontA x
+  getLabelOffsetA (ETH2I x) = getLabelOffsetA x
+  getLabelSizeA (ETH2I x) = getLabelSizeA x
+  getTitleFontA (ETH2I x) = getTitleFontA x
+  getTitleOffsetA (ETH2I x) = getTitleOffsetA x
+  getTitleSizeA (ETH2I x) = getTitleSizeA x
+  getTickLengthA (ETH2I x) = getTickLengthA x
+  getBarOffset (ETH2I x) = getBarOffset x
+  getBarWidth (ETH2I x) = getBarWidth x
+  getContour (ETH2I x) = getContour x
+  getContourLevel (ETH2I x) = getContourLevel x
+  getContourLevelPad (ETH2I x) = getContourLevelPad x
+  getBin (ETH2I x) = getBin x
+  getBinCenter (ETH2I x) = getBinCenter x
+  getBinContent1 (ETH2I x) = getBinContent1 x
+  getBinContent2 (ETH2I x) = getBinContent2 x
+  getBinContent3 (ETH2I x) = getBinContent3 x
+  getBinError1 (ETH2I x) = getBinError1 x
+  getBinError2 (ETH2I x) = getBinError2 x
+  getBinError3 (ETH2I x) = getBinError3 x
+  getBinLowEdge (ETH2I x) = getBinLowEdge x
+  getBinWidth (ETH2I x) = getBinWidth x
+  getCellContent (ETH2I x) = getCellContent x
+  getCellError (ETH2I x) = getCellError x
+  getEntries (ETH2I x) = getEntries x
+  getEffectiveEntries (ETH2I x) = getEffectiveEntries x
+  getFunction (ETH2I x) = getFunction x
+  getDimension (ETH2I x) = getDimension x
+  getKurtosis (ETH2I x) = getKurtosis x
+  getLowEdge (ETH2I x) = getLowEdge x
+  getMaximum (ETH2I x) = getMaximum x
+  getMaximumBin (ETH2I x) = getMaximumBin x
+  getMaximumStored (ETH2I x) = getMaximumStored x
+  getMinimum (ETH2I x) = getMinimum x
+  getMinimumBin (ETH2I x) = getMinimumBin x
+  getMinimumStored (ETH2I x) = getMinimumStored x
+  getMean (ETH2I x) = getMean x
+  getMeanError (ETH2I x) = getMeanError x
+  getNbinsX (ETH2I x) = getNbinsX x
+  getNbinsY (ETH2I x) = getNbinsY x
+  getNbinsZ (ETH2I x) = getNbinsZ x
+  getQuantiles (ETH2I x) = getQuantiles x
+  getRandom (ETH2I x) = getRandom x
+  getStats (ETH2I x) = getStats x
+  getSumOfWeights (ETH2I x) = getSumOfWeights x
+  getSumw2 (ETH2I x) = getSumw2 x
+  getSumw2N (ETH2I x) = getSumw2N x
+  getRMS (ETH2I x) = getRMS x
+  getRMSError (ETH2I x) = getRMSError x
+  getSkewness (ETH2I x) = getSkewness x
+  integral1 (ETH2I x) = integral1 x
+  interpolate1 (ETH2I x) = interpolate1 x
+  interpolate2 (ETH2I x) = interpolate2 x
+  interpolate3 (ETH2I x) = interpolate3 x
+  kolmogorovTest (ETH2I x) = kolmogorovTest x
+  labelsDeflate (ETH2I x) = labelsDeflate x
+  labelsInflate (ETH2I x) = labelsInflate x
+  labelsOption (ETH2I x) = labelsOption x
+  multiflyF (ETH2I x) = multiflyF x
+  multiply (ETH2I x) = multiply x
+  paint (ETH2I x) = paint x
+  putStats (ETH2I x) = putStats x
+  rebin (ETH2I x) = rebin x
+  rebinAxis (ETH2I x) = rebinAxis x
+  rebuild (ETH2I x) = rebuild x
+  recursiveRemove (ETH2I x) = recursiveRemove x
+  reset (ETH2I x) = reset x
+  resetStats (ETH2I x) = resetStats x
+  scale (ETH2I x) = scale x
+  setAxisColorA (ETH2I x) = setAxisColorA x
+  setAxisRange (ETH2I x) = setAxisRange x
+  setBarOffset (ETH2I x) = setBarOffset x
+  setBarWidth (ETH2I x) = setBarWidth x
+  setBinContent1 (ETH2I x) = setBinContent1 x
+  setBinContent2 (ETH2I x) = setBinContent2 x
+  setBinContent3 (ETH2I x) = setBinContent3 x
+  setBinError1 (ETH2I x) = setBinError1 x
+  setBinError2 (ETH2I x) = setBinError2 x
+  setBinError3 (ETH2I x) = setBinError3 x
+  setBins1 (ETH2I x) = setBins1 x
+  setBins2 (ETH2I x) = setBins2 x
+  setBins3 (ETH2I x) = setBins3 x
+  setBinsLength (ETH2I x) = setBinsLength x
+  setBuffer (ETH2I x) = setBuffer x
+  setCellContent (ETH2I x) = setCellContent x
+  setContent (ETH2I x) = setContent x
+  setContour (ETH2I x) = setContour x
+  setContourLevel (ETH2I x) = setContourLevel x
+  setDirectory (ETH2I x) = setDirectory x
+  setEntries (ETH2I x) = setEntries x
+  setError (ETH2I x) = setError x
+  setLabelColorA (ETH2I x) = setLabelColorA x
+  setLabelSizeA (ETH2I x) = setLabelSizeA x
+  setLabelFontA (ETH2I x) = setLabelFontA x
+  setLabelOffsetA (ETH2I x) = setLabelOffsetA x
+  setMaximum (ETH2I x) = setMaximum x
+  setMinimum (ETH2I x) = setMinimum x
+  setNormFactor (ETH2I x) = setNormFactor x
+  setStats (ETH2I x) = setStats x
+  setOption (ETH2I x) = setOption x
+  setXTitle (ETH2I x) = setXTitle x
+  setYTitle (ETH2I x) = setYTitle x
+  setZTitle (ETH2I x) = setZTitle x
+  showBackground (ETH2I x) = showBackground x
+  showPeaks (ETH2I x) = showPeaks x
+  smooth (ETH2I x) = smooth x
+  sumw2 (ETH2I x) = sumw2 x
+
+instance ITNamed (Exist TH2I) where
+  setName (ETH2I x) = setName x
+  setNameTitle (ETH2I x) = setNameTitle x
+  setTitle (ETH2I x) = setTitle x
+
+instance ITAttLine (Exist TH2I) where
+  setLineColor (ETH2I x) = setLineColor x
+
+instance ITAttFill (Exist TH2I) where
+  setFillColor (ETH2I x) = setFillColor x
+  setFillStyle (ETH2I x) = setFillStyle x
+
+instance ITAttMarker (Exist TH2I) where
+
+
+instance ITObject (Exist TH2I) where
+  getName (ETH2I x) = getName x
+  draw (ETH2I x) = draw x
+  findObject (ETH2I x) = findObject x
+  saveAs (ETH2I x) = saveAs x
+  write (ETH2I x) = write x
+  isA (ETH2I x) = isA x
+  printObj (ETH2I x) = printObj x
+
+instance IDeletable (Exist TH2I) where
+  delete (ETH2I x) = delete x
+
+instance ITArray (Exist TH2I) where
+
+
+instance ITH2Poly (Exist TH2Poly) where
+
+
+instance ITH2 (Exist TH2Poly) where
+  fill2 (ETH2Poly x) = fill2 x
+  fillRandom2 (ETH2Poly x) = fillRandom2 x
+  findFirstBinAbove2 (ETH2Poly x) = findFirstBinAbove2 x
+  findLastBinAbove2 (ETH2Poly x) = findLastBinAbove2 x
+  fitSlicesX (ETH2Poly x) = fitSlicesX x
+  fitSlicesY (ETH2Poly x) = fitSlicesY x
+  getCorrelationFactor (ETH2Poly x) = getCorrelationFactor x
+  getCovariance (ETH2Poly x) = getCovariance x
+  integral2 (ETH2Poly x) = integral2 x
+  rebinX (ETH2Poly x) = rebinX x
+  rebinY (ETH2Poly x) = rebinY x
+  rebin2D (ETH2Poly x) = rebin2D x
+  setShowProjectionX (ETH2Poly x) = setShowProjectionX x
+  setShowProjectionY (ETH2Poly x) = setShowProjectionY x
+
+instance ITH1 (Exist TH2Poly) where
+  add (ETH2Poly x) = add x
+  addBinContent (ETH2Poly x) = addBinContent x
+  chi2Test (ETH2Poly x) = chi2Test x
+  computeIntegral (ETH2Poly x) = computeIntegral x
+  directoryAutoAdd (ETH2Poly x) = directoryAutoAdd x
+  distancetoPrimitive (ETH2Poly x) = distancetoPrimitive x
+  divide (ETH2Poly x) = divide x
+  drawCopy (ETH2Poly x) a1 = return . ETH2Poly =<< drawCopy x a1
+  drawNormalized (ETH2Poly x) = drawNormalized x
+  drawPanel (ETH2Poly x) = drawPanel x
+  bufferEmpty (ETH2Poly x) = bufferEmpty x
+  eval (ETH2Poly x) = eval x
+  executeEvent (ETH2Poly x) = executeEvent x
+  fFT (ETH2Poly x) = fFT x
+  fill1 (ETH2Poly x) = fill1 x
+  fillN (ETH2Poly x) = fillN x
+  fillRandom (ETH2Poly x) = fillRandom x
+  findBin (ETH2Poly x) = findBin x
+  findFixBin (ETH2Poly x) = findFixBin x
+  findFirstBinAbove (ETH2Poly x) = findFirstBinAbove x
+  findLastBinAbove (ETH2Poly x) = findLastBinAbove x
+  fitPanel (ETH2Poly x) = fitPanel x
+  getNdivisionA (ETH2Poly x) = getNdivisionA x
+  getAxisColorA (ETH2Poly x) = getAxisColorA x
+  getLabelColorA (ETH2Poly x) = getLabelColorA x
+  getLabelFontA (ETH2Poly x) = getLabelFontA x
+  getLabelOffsetA (ETH2Poly x) = getLabelOffsetA x
+  getLabelSizeA (ETH2Poly x) = getLabelSizeA x
+  getTitleFontA (ETH2Poly x) = getTitleFontA x
+  getTitleOffsetA (ETH2Poly x) = getTitleOffsetA x
+  getTitleSizeA (ETH2Poly x) = getTitleSizeA x
+  getTickLengthA (ETH2Poly x) = getTickLengthA x
+  getBarOffset (ETH2Poly x) = getBarOffset x
+  getBarWidth (ETH2Poly x) = getBarWidth x
+  getContour (ETH2Poly x) = getContour x
+  getContourLevel (ETH2Poly x) = getContourLevel x
+  getContourLevelPad (ETH2Poly x) = getContourLevelPad x
+  getBin (ETH2Poly x) = getBin x
+  getBinCenter (ETH2Poly x) = getBinCenter x
+  getBinContent1 (ETH2Poly x) = getBinContent1 x
+  getBinContent2 (ETH2Poly x) = getBinContent2 x
+  getBinContent3 (ETH2Poly x) = getBinContent3 x
+  getBinError1 (ETH2Poly x) = getBinError1 x
+  getBinError2 (ETH2Poly x) = getBinError2 x
+  getBinError3 (ETH2Poly x) = getBinError3 x
+  getBinLowEdge (ETH2Poly x) = getBinLowEdge x
+  getBinWidth (ETH2Poly x) = getBinWidth x
+  getCellContent (ETH2Poly x) = getCellContent x
+  getCellError (ETH2Poly x) = getCellError x
+  getEntries (ETH2Poly x) = getEntries x
+  getEffectiveEntries (ETH2Poly x) = getEffectiveEntries x
+  getFunction (ETH2Poly x) = getFunction x
+  getDimension (ETH2Poly x) = getDimension x
+  getKurtosis (ETH2Poly x) = getKurtosis x
+  getLowEdge (ETH2Poly x) = getLowEdge x
+  getMaximum (ETH2Poly x) = getMaximum x
+  getMaximumBin (ETH2Poly x) = getMaximumBin x
+  getMaximumStored (ETH2Poly x) = getMaximumStored x
+  getMinimum (ETH2Poly x) = getMinimum x
+  getMinimumBin (ETH2Poly x) = getMinimumBin x
+  getMinimumStored (ETH2Poly x) = getMinimumStored x
+  getMean (ETH2Poly x) = getMean x
+  getMeanError (ETH2Poly x) = getMeanError x
+  getNbinsX (ETH2Poly x) = getNbinsX x
+  getNbinsY (ETH2Poly x) = getNbinsY x
+  getNbinsZ (ETH2Poly x) = getNbinsZ x
+  getQuantiles (ETH2Poly x) = getQuantiles x
+  getRandom (ETH2Poly x) = getRandom x
+  getStats (ETH2Poly x) = getStats x
+  getSumOfWeights (ETH2Poly x) = getSumOfWeights x
+  getSumw2 (ETH2Poly x) = getSumw2 x
+  getSumw2N (ETH2Poly x) = getSumw2N x
+  getRMS (ETH2Poly x) = getRMS x
+  getRMSError (ETH2Poly x) = getRMSError x
+  getSkewness (ETH2Poly x) = getSkewness x
+  integral1 (ETH2Poly x) = integral1 x
+  interpolate1 (ETH2Poly x) = interpolate1 x
+  interpolate2 (ETH2Poly x) = interpolate2 x
+  interpolate3 (ETH2Poly x) = interpolate3 x
+  kolmogorovTest (ETH2Poly x) = kolmogorovTest x
+  labelsDeflate (ETH2Poly x) = labelsDeflate x
+  labelsInflate (ETH2Poly x) = labelsInflate x
+  labelsOption (ETH2Poly x) = labelsOption x
+  multiflyF (ETH2Poly x) = multiflyF x
+  multiply (ETH2Poly x) = multiply x
+  paint (ETH2Poly x) = paint x
+  putStats (ETH2Poly x) = putStats x
+  rebin (ETH2Poly x) = rebin x
+  rebinAxis (ETH2Poly x) = rebinAxis x
+  rebuild (ETH2Poly x) = rebuild x
+  recursiveRemove (ETH2Poly x) = recursiveRemove x
+  reset (ETH2Poly x) = reset x
+  resetStats (ETH2Poly x) = resetStats x
+  scale (ETH2Poly x) = scale x
+  setAxisColorA (ETH2Poly x) = setAxisColorA x
+  setAxisRange (ETH2Poly x) = setAxisRange x
+  setBarOffset (ETH2Poly x) = setBarOffset x
+  setBarWidth (ETH2Poly x) = setBarWidth x
+  setBinContent1 (ETH2Poly x) = setBinContent1 x
+  setBinContent2 (ETH2Poly x) = setBinContent2 x
+  setBinContent3 (ETH2Poly x) = setBinContent3 x
+  setBinError1 (ETH2Poly x) = setBinError1 x
+  setBinError2 (ETH2Poly x) = setBinError2 x
+  setBinError3 (ETH2Poly x) = setBinError3 x
+  setBins1 (ETH2Poly x) = setBins1 x
+  setBins2 (ETH2Poly x) = setBins2 x
+  setBins3 (ETH2Poly x) = setBins3 x
+  setBinsLength (ETH2Poly x) = setBinsLength x
+  setBuffer (ETH2Poly x) = setBuffer x
+  setCellContent (ETH2Poly x) = setCellContent x
+  setContent (ETH2Poly x) = setContent x
+  setContour (ETH2Poly x) = setContour x
+  setContourLevel (ETH2Poly x) = setContourLevel x
+  setDirectory (ETH2Poly x) = setDirectory x
+  setEntries (ETH2Poly x) = setEntries x
+  setError (ETH2Poly x) = setError x
+  setLabelColorA (ETH2Poly x) = setLabelColorA x
+  setLabelSizeA (ETH2Poly x) = setLabelSizeA x
+  setLabelFontA (ETH2Poly x) = setLabelFontA x
+  setLabelOffsetA (ETH2Poly x) = setLabelOffsetA x
+  setMaximum (ETH2Poly x) = setMaximum x
+  setMinimum (ETH2Poly x) = setMinimum x
+  setNormFactor (ETH2Poly x) = setNormFactor x
+  setStats (ETH2Poly x) = setStats x
+  setOption (ETH2Poly x) = setOption x
+  setXTitle (ETH2Poly x) = setXTitle x
+  setYTitle (ETH2Poly x) = setYTitle x
+  setZTitle (ETH2Poly x) = setZTitle x
+  showBackground (ETH2Poly x) = showBackground x
+  showPeaks (ETH2Poly x) = showPeaks x
+  smooth (ETH2Poly x) = smooth x
+  sumw2 (ETH2Poly x) = sumw2 x
+
+instance ITNamed (Exist TH2Poly) where
+  setName (ETH2Poly x) = setName x
+  setNameTitle (ETH2Poly x) = setNameTitle x
+  setTitle (ETH2Poly x) = setTitle x
+
+instance ITAttLine (Exist TH2Poly) where
+  setLineColor (ETH2Poly x) = setLineColor x
+
+instance ITAttFill (Exist TH2Poly) where
+  setFillColor (ETH2Poly x) = setFillColor x
+  setFillStyle (ETH2Poly x) = setFillStyle x
+
+instance ITAttMarker (Exist TH2Poly) where
+
+
+instance ITObject (Exist TH2Poly) where
+  getName (ETH2Poly x) = getName x
+  draw (ETH2Poly x) = draw x
+  findObject (ETH2Poly x) = findObject x
+  saveAs (ETH2Poly x) = saveAs x
+  write (ETH2Poly x) = write x
+  isA (ETH2Poly x) = isA x
+  printObj (ETH2Poly x) = printObj x
+
+instance IDeletable (Exist TH2Poly) where
+  delete (ETH2Poly x) = delete x
+
+instance ITH2S (Exist TH2S) where
+
+
+instance ITH2 (Exist TH2S) where
+  fill2 (ETH2S x) = fill2 x
+  fillRandom2 (ETH2S x) = fillRandom2 x
+  findFirstBinAbove2 (ETH2S x) = findFirstBinAbove2 x
+  findLastBinAbove2 (ETH2S x) = findLastBinAbove2 x
+  fitSlicesX (ETH2S x) = fitSlicesX x
+  fitSlicesY (ETH2S x) = fitSlicesY x
+  getCorrelationFactor (ETH2S x) = getCorrelationFactor x
+  getCovariance (ETH2S x) = getCovariance x
+  integral2 (ETH2S x) = integral2 x
+  rebinX (ETH2S x) = rebinX x
+  rebinY (ETH2S x) = rebinY x
+  rebin2D (ETH2S x) = rebin2D x
+  setShowProjectionX (ETH2S x) = setShowProjectionX x
+  setShowProjectionY (ETH2S x) = setShowProjectionY x
+
+instance ITArrayS (Exist TH2S) where
+
+
+instance ITH1 (Exist TH2S) where
+  add (ETH2S x) = add x
+  addBinContent (ETH2S x) = addBinContent x
+  chi2Test (ETH2S x) = chi2Test x
+  computeIntegral (ETH2S x) = computeIntegral x
+  directoryAutoAdd (ETH2S x) = directoryAutoAdd x
+  distancetoPrimitive (ETH2S x) = distancetoPrimitive x
+  divide (ETH2S x) = divide x
+  drawCopy (ETH2S x) a1 = return . ETH2S =<< drawCopy x a1
+  drawNormalized (ETH2S x) = drawNormalized x
+  drawPanel (ETH2S x) = drawPanel x
+  bufferEmpty (ETH2S x) = bufferEmpty x
+  eval (ETH2S x) = eval x
+  executeEvent (ETH2S x) = executeEvent x
+  fFT (ETH2S x) = fFT x
+  fill1 (ETH2S x) = fill1 x
+  fillN (ETH2S x) = fillN x
+  fillRandom (ETH2S x) = fillRandom x
+  findBin (ETH2S x) = findBin x
+  findFixBin (ETH2S x) = findFixBin x
+  findFirstBinAbove (ETH2S x) = findFirstBinAbove x
+  findLastBinAbove (ETH2S x) = findLastBinAbove x
+  fitPanel (ETH2S x) = fitPanel x
+  getNdivisionA (ETH2S x) = getNdivisionA x
+  getAxisColorA (ETH2S x) = getAxisColorA x
+  getLabelColorA (ETH2S x) = getLabelColorA x
+  getLabelFontA (ETH2S x) = getLabelFontA x
+  getLabelOffsetA (ETH2S x) = getLabelOffsetA x
+  getLabelSizeA (ETH2S x) = getLabelSizeA x
+  getTitleFontA (ETH2S x) = getTitleFontA x
+  getTitleOffsetA (ETH2S x) = getTitleOffsetA x
+  getTitleSizeA (ETH2S x) = getTitleSizeA x
+  getTickLengthA (ETH2S x) = getTickLengthA x
+  getBarOffset (ETH2S x) = getBarOffset x
+  getBarWidth (ETH2S x) = getBarWidth x
+  getContour (ETH2S x) = getContour x
+  getContourLevel (ETH2S x) = getContourLevel x
+  getContourLevelPad (ETH2S x) = getContourLevelPad x
+  getBin (ETH2S x) = getBin x
+  getBinCenter (ETH2S x) = getBinCenter x
+  getBinContent1 (ETH2S x) = getBinContent1 x
+  getBinContent2 (ETH2S x) = getBinContent2 x
+  getBinContent3 (ETH2S x) = getBinContent3 x
+  getBinError1 (ETH2S x) = getBinError1 x
+  getBinError2 (ETH2S x) = getBinError2 x
+  getBinError3 (ETH2S x) = getBinError3 x
+  getBinLowEdge (ETH2S x) = getBinLowEdge x
+  getBinWidth (ETH2S x) = getBinWidth x
+  getCellContent (ETH2S x) = getCellContent x
+  getCellError (ETH2S x) = getCellError x
+  getEntries (ETH2S x) = getEntries x
+  getEffectiveEntries (ETH2S x) = getEffectiveEntries x
+  getFunction (ETH2S x) = getFunction x
+  getDimension (ETH2S x) = getDimension x
+  getKurtosis (ETH2S x) = getKurtosis x
+  getLowEdge (ETH2S x) = getLowEdge x
+  getMaximum (ETH2S x) = getMaximum x
+  getMaximumBin (ETH2S x) = getMaximumBin x
+  getMaximumStored (ETH2S x) = getMaximumStored x
+  getMinimum (ETH2S x) = getMinimum x
+  getMinimumBin (ETH2S x) = getMinimumBin x
+  getMinimumStored (ETH2S x) = getMinimumStored x
+  getMean (ETH2S x) = getMean x
+  getMeanError (ETH2S x) = getMeanError x
+  getNbinsX (ETH2S x) = getNbinsX x
+  getNbinsY (ETH2S x) = getNbinsY x
+  getNbinsZ (ETH2S x) = getNbinsZ x
+  getQuantiles (ETH2S x) = getQuantiles x
+  getRandom (ETH2S x) = getRandom x
+  getStats (ETH2S x) = getStats x
+  getSumOfWeights (ETH2S x) = getSumOfWeights x
+  getSumw2 (ETH2S x) = getSumw2 x
+  getSumw2N (ETH2S x) = getSumw2N x
+  getRMS (ETH2S x) = getRMS x
+  getRMSError (ETH2S x) = getRMSError x
+  getSkewness (ETH2S x) = getSkewness x
+  integral1 (ETH2S x) = integral1 x
+  interpolate1 (ETH2S x) = interpolate1 x
+  interpolate2 (ETH2S x) = interpolate2 x
+  interpolate3 (ETH2S x) = interpolate3 x
+  kolmogorovTest (ETH2S x) = kolmogorovTest x
+  labelsDeflate (ETH2S x) = labelsDeflate x
+  labelsInflate (ETH2S x) = labelsInflate x
+  labelsOption (ETH2S x) = labelsOption x
+  multiflyF (ETH2S x) = multiflyF x
+  multiply (ETH2S x) = multiply x
+  paint (ETH2S x) = paint x
+  putStats (ETH2S x) = putStats x
+  rebin (ETH2S x) = rebin x
+  rebinAxis (ETH2S x) = rebinAxis x
+  rebuild (ETH2S x) = rebuild x
+  recursiveRemove (ETH2S x) = recursiveRemove x
+  reset (ETH2S x) = reset x
+  resetStats (ETH2S x) = resetStats x
+  scale (ETH2S x) = scale x
+  setAxisColorA (ETH2S x) = setAxisColorA x
+  setAxisRange (ETH2S x) = setAxisRange x
+  setBarOffset (ETH2S x) = setBarOffset x
+  setBarWidth (ETH2S x) = setBarWidth x
+  setBinContent1 (ETH2S x) = setBinContent1 x
+  setBinContent2 (ETH2S x) = setBinContent2 x
+  setBinContent3 (ETH2S x) = setBinContent3 x
+  setBinError1 (ETH2S x) = setBinError1 x
+  setBinError2 (ETH2S x) = setBinError2 x
+  setBinError3 (ETH2S x) = setBinError3 x
+  setBins1 (ETH2S x) = setBins1 x
+  setBins2 (ETH2S x) = setBins2 x
+  setBins3 (ETH2S x) = setBins3 x
+  setBinsLength (ETH2S x) = setBinsLength x
+  setBuffer (ETH2S x) = setBuffer x
+  setCellContent (ETH2S x) = setCellContent x
+  setContent (ETH2S x) = setContent x
+  setContour (ETH2S x) = setContour x
+  setContourLevel (ETH2S x) = setContourLevel x
+  setDirectory (ETH2S x) = setDirectory x
+  setEntries (ETH2S x) = setEntries x
+  setError (ETH2S x) = setError x
+  setLabelColorA (ETH2S x) = setLabelColorA x
+  setLabelSizeA (ETH2S x) = setLabelSizeA x
+  setLabelFontA (ETH2S x) = setLabelFontA x
+  setLabelOffsetA (ETH2S x) = setLabelOffsetA x
+  setMaximum (ETH2S x) = setMaximum x
+  setMinimum (ETH2S x) = setMinimum x
+  setNormFactor (ETH2S x) = setNormFactor x
+  setStats (ETH2S x) = setStats x
+  setOption (ETH2S x) = setOption x
+  setXTitle (ETH2S x) = setXTitle x
+  setYTitle (ETH2S x) = setYTitle x
+  setZTitle (ETH2S x) = setZTitle x
+  showBackground (ETH2S x) = showBackground x
+  showPeaks (ETH2S x) = showPeaks x
+  smooth (ETH2S x) = smooth x
+  sumw2 (ETH2S x) = sumw2 x
+
+instance ITNamed (Exist TH2S) where
+  setName (ETH2S x) = setName x
+  setNameTitle (ETH2S x) = setNameTitle x
+  setTitle (ETH2S x) = setTitle x
+
+instance ITAttLine (Exist TH2S) where
+  setLineColor (ETH2S x) = setLineColor x
+
+instance ITAttFill (Exist TH2S) where
+  setFillColor (ETH2S x) = setFillColor x
+  setFillStyle (ETH2S x) = setFillStyle x
+
+instance ITAttMarker (Exist TH2S) where
+
+
+instance ITObject (Exist TH2S) where
+  getName (ETH2S x) = getName x
+  draw (ETH2S x) = draw x
+  findObject (ETH2S x) = findObject x
+  saveAs (ETH2S x) = saveAs x
+  write (ETH2S x) = write x
+  isA (ETH2S x) = isA x
+  printObj (ETH2S x) = printObj x
+
+instance IDeletable (Exist TH2S) where
+  delete (ETH2S x) = delete x
+
+instance ITArray (Exist TH2S) where
+
+
+instance ITH3C (Exist TH3C) where
+
+
+instance ITH3 (Exist TH3C) where
+
+
+instance ITArrayC (Exist TH3C) where
+
+
+instance ITH1 (Exist TH3C) where
+  add (ETH3C x) = add x
+  addBinContent (ETH3C x) = addBinContent x
+  chi2Test (ETH3C x) = chi2Test x
+  computeIntegral (ETH3C x) = computeIntegral x
+  directoryAutoAdd (ETH3C x) = directoryAutoAdd x
+  distancetoPrimitive (ETH3C x) = distancetoPrimitive x
+  divide (ETH3C x) = divide x
+  drawCopy (ETH3C x) a1 = return . ETH3C =<< drawCopy x a1
+  drawNormalized (ETH3C x) = drawNormalized x
+  drawPanel (ETH3C x) = drawPanel x
+  bufferEmpty (ETH3C x) = bufferEmpty x
+  eval (ETH3C x) = eval x
+  executeEvent (ETH3C x) = executeEvent x
+  fFT (ETH3C x) = fFT x
+  fill1 (ETH3C x) = fill1 x
+  fillN (ETH3C x) = fillN x
+  fillRandom (ETH3C x) = fillRandom x
+  findBin (ETH3C x) = findBin x
+  findFixBin (ETH3C x) = findFixBin x
+  findFirstBinAbove (ETH3C x) = findFirstBinAbove x
+  findLastBinAbove (ETH3C x) = findLastBinAbove x
+  fitPanel (ETH3C x) = fitPanel x
+  getNdivisionA (ETH3C x) = getNdivisionA x
+  getAxisColorA (ETH3C x) = getAxisColorA x
+  getLabelColorA (ETH3C x) = getLabelColorA x
+  getLabelFontA (ETH3C x) = getLabelFontA x
+  getLabelOffsetA (ETH3C x) = getLabelOffsetA x
+  getLabelSizeA (ETH3C x) = getLabelSizeA x
+  getTitleFontA (ETH3C x) = getTitleFontA x
+  getTitleOffsetA (ETH3C x) = getTitleOffsetA x
+  getTitleSizeA (ETH3C x) = getTitleSizeA x
+  getTickLengthA (ETH3C x) = getTickLengthA x
+  getBarOffset (ETH3C x) = getBarOffset x
+  getBarWidth (ETH3C x) = getBarWidth x
+  getContour (ETH3C x) = getContour x
+  getContourLevel (ETH3C x) = getContourLevel x
+  getContourLevelPad (ETH3C x) = getContourLevelPad x
+  getBin (ETH3C x) = getBin x
+  getBinCenter (ETH3C x) = getBinCenter x
+  getBinContent1 (ETH3C x) = getBinContent1 x
+  getBinContent2 (ETH3C x) = getBinContent2 x
+  getBinContent3 (ETH3C x) = getBinContent3 x
+  getBinError1 (ETH3C x) = getBinError1 x
+  getBinError2 (ETH3C x) = getBinError2 x
+  getBinError3 (ETH3C x) = getBinError3 x
+  getBinLowEdge (ETH3C x) = getBinLowEdge x
+  getBinWidth (ETH3C x) = getBinWidth x
+  getCellContent (ETH3C x) = getCellContent x
+  getCellError (ETH3C x) = getCellError x
+  getEntries (ETH3C x) = getEntries x
+  getEffectiveEntries (ETH3C x) = getEffectiveEntries x
+  getFunction (ETH3C x) = getFunction x
+  getDimension (ETH3C x) = getDimension x
+  getKurtosis (ETH3C x) = getKurtosis x
+  getLowEdge (ETH3C x) = getLowEdge x
+  getMaximum (ETH3C x) = getMaximum x
+  getMaximumBin (ETH3C x) = getMaximumBin x
+  getMaximumStored (ETH3C x) = getMaximumStored x
+  getMinimum (ETH3C x) = getMinimum x
+  getMinimumBin (ETH3C x) = getMinimumBin x
+  getMinimumStored (ETH3C x) = getMinimumStored x
+  getMean (ETH3C x) = getMean x
+  getMeanError (ETH3C x) = getMeanError x
+  getNbinsX (ETH3C x) = getNbinsX x
+  getNbinsY (ETH3C x) = getNbinsY x
+  getNbinsZ (ETH3C x) = getNbinsZ x
+  getQuantiles (ETH3C x) = getQuantiles x
+  getRandom (ETH3C x) = getRandom x
+  getStats (ETH3C x) = getStats x
+  getSumOfWeights (ETH3C x) = getSumOfWeights x
+  getSumw2 (ETH3C x) = getSumw2 x
+  getSumw2N (ETH3C x) = getSumw2N x
+  getRMS (ETH3C x) = getRMS x
+  getRMSError (ETH3C x) = getRMSError x
+  getSkewness (ETH3C x) = getSkewness x
+  integral1 (ETH3C x) = integral1 x
+  interpolate1 (ETH3C x) = interpolate1 x
+  interpolate2 (ETH3C x) = interpolate2 x
+  interpolate3 (ETH3C x) = interpolate3 x
+  kolmogorovTest (ETH3C x) = kolmogorovTest x
+  labelsDeflate (ETH3C x) = labelsDeflate x
+  labelsInflate (ETH3C x) = labelsInflate x
+  labelsOption (ETH3C x) = labelsOption x
+  multiflyF (ETH3C x) = multiflyF x
+  multiply (ETH3C x) = multiply x
+  paint (ETH3C x) = paint x
+  putStats (ETH3C x) = putStats x
+  rebin (ETH3C x) = rebin x
+  rebinAxis (ETH3C x) = rebinAxis x
+  rebuild (ETH3C x) = rebuild x
+  recursiveRemove (ETH3C x) = recursiveRemove x
+  reset (ETH3C x) = reset x
+  resetStats (ETH3C x) = resetStats x
+  scale (ETH3C x) = scale x
+  setAxisColorA (ETH3C x) = setAxisColorA x
+  setAxisRange (ETH3C x) = setAxisRange x
+  setBarOffset (ETH3C x) = setBarOffset x
+  setBarWidth (ETH3C x) = setBarWidth x
+  setBinContent1 (ETH3C x) = setBinContent1 x
+  setBinContent2 (ETH3C x) = setBinContent2 x
+  setBinContent3 (ETH3C x) = setBinContent3 x
+  setBinError1 (ETH3C x) = setBinError1 x
+  setBinError2 (ETH3C x) = setBinError2 x
+  setBinError3 (ETH3C x) = setBinError3 x
+  setBins1 (ETH3C x) = setBins1 x
+  setBins2 (ETH3C x) = setBins2 x
+  setBins3 (ETH3C x) = setBins3 x
+  setBinsLength (ETH3C x) = setBinsLength x
+  setBuffer (ETH3C x) = setBuffer x
+  setCellContent (ETH3C x) = setCellContent x
+  setContent (ETH3C x) = setContent x
+  setContour (ETH3C x) = setContour x
+  setContourLevel (ETH3C x) = setContourLevel x
+  setDirectory (ETH3C x) = setDirectory x
+  setEntries (ETH3C x) = setEntries x
+  setError (ETH3C x) = setError x
+  setLabelColorA (ETH3C x) = setLabelColorA x
+  setLabelSizeA (ETH3C x) = setLabelSizeA x
+  setLabelFontA (ETH3C x) = setLabelFontA x
+  setLabelOffsetA (ETH3C x) = setLabelOffsetA x
+  setMaximum (ETH3C x) = setMaximum x
+  setMinimum (ETH3C x) = setMinimum x
+  setNormFactor (ETH3C x) = setNormFactor x
+  setStats (ETH3C x) = setStats x
+  setOption (ETH3C x) = setOption x
+  setXTitle (ETH3C x) = setXTitle x
+  setYTitle (ETH3C x) = setYTitle x
+  setZTitle (ETH3C x) = setZTitle x
+  showBackground (ETH3C x) = showBackground x
+  showPeaks (ETH3C x) = showPeaks x
+  smooth (ETH3C x) = smooth x
+  sumw2 (ETH3C x) = sumw2 x
+
+instance ITAtt3D (Exist TH3C) where
+
+
+instance ITNamed (Exist TH3C) where
+  setName (ETH3C x) = setName x
+  setNameTitle (ETH3C x) = setNameTitle x
+  setTitle (ETH3C x) = setTitle x
+
+instance ITAttLine (Exist TH3C) where
+  setLineColor (ETH3C x) = setLineColor x
+
+instance ITAttFill (Exist TH3C) where
+  setFillColor (ETH3C x) = setFillColor x
+  setFillStyle (ETH3C x) = setFillStyle x
+
+instance ITAttMarker (Exist TH3C) where
+
+
+instance ITObject (Exist TH3C) where
+  getName (ETH3C x) = getName x
+  draw (ETH3C x) = draw x
+  findObject (ETH3C x) = findObject x
+  saveAs (ETH3C x) = saveAs x
+  write (ETH3C x) = write x
+  isA (ETH3C x) = isA x
+  printObj (ETH3C x) = printObj x
+
+instance IDeletable (Exist TH3C) where
+  delete (ETH3C x) = delete x
+
+instance ITArray (Exist TH3C) where
+
+
+instance ITH3D (Exist TH3D) where
+
+
+instance ITH3 (Exist TH3D) where
+
+
+instance ITArrayD (Exist TH3D) where
+
+
+instance ITH1 (Exist TH3D) where
+  add (ETH3D x) = add x
+  addBinContent (ETH3D x) = addBinContent x
+  chi2Test (ETH3D x) = chi2Test x
+  computeIntegral (ETH3D x) = computeIntegral x
+  directoryAutoAdd (ETH3D x) = directoryAutoAdd x
+  distancetoPrimitive (ETH3D x) = distancetoPrimitive x
+  divide (ETH3D x) = divide x
+  drawCopy (ETH3D x) a1 = return . ETH3D =<< drawCopy x a1
+  drawNormalized (ETH3D x) = drawNormalized x
+  drawPanel (ETH3D x) = drawPanel x
+  bufferEmpty (ETH3D x) = bufferEmpty x
+  eval (ETH3D x) = eval x
+  executeEvent (ETH3D x) = executeEvent x
+  fFT (ETH3D x) = fFT x
+  fill1 (ETH3D x) = fill1 x
+  fillN (ETH3D x) = fillN x
+  fillRandom (ETH3D x) = fillRandom x
+  findBin (ETH3D x) = findBin x
+  findFixBin (ETH3D x) = findFixBin x
+  findFirstBinAbove (ETH3D x) = findFirstBinAbove x
+  findLastBinAbove (ETH3D x) = findLastBinAbove x
+  fitPanel (ETH3D x) = fitPanel x
+  getNdivisionA (ETH3D x) = getNdivisionA x
+  getAxisColorA (ETH3D x) = getAxisColorA x
+  getLabelColorA (ETH3D x) = getLabelColorA x
+  getLabelFontA (ETH3D x) = getLabelFontA x
+  getLabelOffsetA (ETH3D x) = getLabelOffsetA x
+  getLabelSizeA (ETH3D x) = getLabelSizeA x
+  getTitleFontA (ETH3D x) = getTitleFontA x
+  getTitleOffsetA (ETH3D x) = getTitleOffsetA x
+  getTitleSizeA (ETH3D x) = getTitleSizeA x
+  getTickLengthA (ETH3D x) = getTickLengthA x
+  getBarOffset (ETH3D x) = getBarOffset x
+  getBarWidth (ETH3D x) = getBarWidth x
+  getContour (ETH3D x) = getContour x
+  getContourLevel (ETH3D x) = getContourLevel x
+  getContourLevelPad (ETH3D x) = getContourLevelPad x
+  getBin (ETH3D x) = getBin x
+  getBinCenter (ETH3D x) = getBinCenter x
+  getBinContent1 (ETH3D x) = getBinContent1 x
+  getBinContent2 (ETH3D x) = getBinContent2 x
+  getBinContent3 (ETH3D x) = getBinContent3 x
+  getBinError1 (ETH3D x) = getBinError1 x
+  getBinError2 (ETH3D x) = getBinError2 x
+  getBinError3 (ETH3D x) = getBinError3 x
+  getBinLowEdge (ETH3D x) = getBinLowEdge x
+  getBinWidth (ETH3D x) = getBinWidth x
+  getCellContent (ETH3D x) = getCellContent x
+  getCellError (ETH3D x) = getCellError x
+  getEntries (ETH3D x) = getEntries x
+  getEffectiveEntries (ETH3D x) = getEffectiveEntries x
+  getFunction (ETH3D x) = getFunction x
+  getDimension (ETH3D x) = getDimension x
+  getKurtosis (ETH3D x) = getKurtosis x
+  getLowEdge (ETH3D x) = getLowEdge x
+  getMaximum (ETH3D x) = getMaximum x
+  getMaximumBin (ETH3D x) = getMaximumBin x
+  getMaximumStored (ETH3D x) = getMaximumStored x
+  getMinimum (ETH3D x) = getMinimum x
+  getMinimumBin (ETH3D x) = getMinimumBin x
+  getMinimumStored (ETH3D x) = getMinimumStored x
+  getMean (ETH3D x) = getMean x
+  getMeanError (ETH3D x) = getMeanError x
+  getNbinsX (ETH3D x) = getNbinsX x
+  getNbinsY (ETH3D x) = getNbinsY x
+  getNbinsZ (ETH3D x) = getNbinsZ x
+  getQuantiles (ETH3D x) = getQuantiles x
+  getRandom (ETH3D x) = getRandom x
+  getStats (ETH3D x) = getStats x
+  getSumOfWeights (ETH3D x) = getSumOfWeights x
+  getSumw2 (ETH3D x) = getSumw2 x
+  getSumw2N (ETH3D x) = getSumw2N x
+  getRMS (ETH3D x) = getRMS x
+  getRMSError (ETH3D x) = getRMSError x
+  getSkewness (ETH3D x) = getSkewness x
+  integral1 (ETH3D x) = integral1 x
+  interpolate1 (ETH3D x) = interpolate1 x
+  interpolate2 (ETH3D x) = interpolate2 x
+  interpolate3 (ETH3D x) = interpolate3 x
+  kolmogorovTest (ETH3D x) = kolmogorovTest x
+  labelsDeflate (ETH3D x) = labelsDeflate x
+  labelsInflate (ETH3D x) = labelsInflate x
+  labelsOption (ETH3D x) = labelsOption x
+  multiflyF (ETH3D x) = multiflyF x
+  multiply (ETH3D x) = multiply x
+  paint (ETH3D x) = paint x
+  putStats (ETH3D x) = putStats x
+  rebin (ETH3D x) = rebin x
+  rebinAxis (ETH3D x) = rebinAxis x
+  rebuild (ETH3D x) = rebuild x
+  recursiveRemove (ETH3D x) = recursiveRemove x
+  reset (ETH3D x) = reset x
+  resetStats (ETH3D x) = resetStats x
+  scale (ETH3D x) = scale x
+  setAxisColorA (ETH3D x) = setAxisColorA x
+  setAxisRange (ETH3D x) = setAxisRange x
+  setBarOffset (ETH3D x) = setBarOffset x
+  setBarWidth (ETH3D x) = setBarWidth x
+  setBinContent1 (ETH3D x) = setBinContent1 x
+  setBinContent2 (ETH3D x) = setBinContent2 x
+  setBinContent3 (ETH3D x) = setBinContent3 x
+  setBinError1 (ETH3D x) = setBinError1 x
+  setBinError2 (ETH3D x) = setBinError2 x
+  setBinError3 (ETH3D x) = setBinError3 x
+  setBins1 (ETH3D x) = setBins1 x
+  setBins2 (ETH3D x) = setBins2 x
+  setBins3 (ETH3D x) = setBins3 x
+  setBinsLength (ETH3D x) = setBinsLength x
+  setBuffer (ETH3D x) = setBuffer x
+  setCellContent (ETH3D x) = setCellContent x
+  setContent (ETH3D x) = setContent x
+  setContour (ETH3D x) = setContour x
+  setContourLevel (ETH3D x) = setContourLevel x
+  setDirectory (ETH3D x) = setDirectory x
+  setEntries (ETH3D x) = setEntries x
+  setError (ETH3D x) = setError x
+  setLabelColorA (ETH3D x) = setLabelColorA x
+  setLabelSizeA (ETH3D x) = setLabelSizeA x
+  setLabelFontA (ETH3D x) = setLabelFontA x
+  setLabelOffsetA (ETH3D x) = setLabelOffsetA x
+  setMaximum (ETH3D x) = setMaximum x
+  setMinimum (ETH3D x) = setMinimum x
+  setNormFactor (ETH3D x) = setNormFactor x
+  setStats (ETH3D x) = setStats x
+  setOption (ETH3D x) = setOption x
+  setXTitle (ETH3D x) = setXTitle x
+  setYTitle (ETH3D x) = setYTitle x
+  setZTitle (ETH3D x) = setZTitle x
+  showBackground (ETH3D x) = showBackground x
+  showPeaks (ETH3D x) = showPeaks x
+  smooth (ETH3D x) = smooth x
+  sumw2 (ETH3D x) = sumw2 x
+
+instance ITAtt3D (Exist TH3D) where
+
+
+instance ITNamed (Exist TH3D) where
+  setName (ETH3D x) = setName x
+  setNameTitle (ETH3D x) = setNameTitle x
+  setTitle (ETH3D x) = setTitle x
+
+instance ITAttLine (Exist TH3D) where
+  setLineColor (ETH3D x) = setLineColor x
+
+instance ITAttFill (Exist TH3D) where
+  setFillColor (ETH3D x) = setFillColor x
+  setFillStyle (ETH3D x) = setFillStyle x
+
+instance ITAttMarker (Exist TH3D) where
+
+
+instance ITObject (Exist TH3D) where
+  getName (ETH3D x) = getName x
+  draw (ETH3D x) = draw x
+  findObject (ETH3D x) = findObject x
+  saveAs (ETH3D x) = saveAs x
+  write (ETH3D x) = write x
+  isA (ETH3D x) = isA x
+  printObj (ETH3D x) = printObj x
+
+instance IDeletable (Exist TH3D) where
+  delete (ETH3D x) = delete x
+
+instance ITArray (Exist TH3D) where
+
+
+instance ITH3F (Exist TH3F) where
+
+
+instance ITH3 (Exist TH3F) where
+
+
+instance ITArrayF (Exist TH3F) where
+
+
+instance ITH1 (Exist TH3F) where
+  add (ETH3F x) = add x
+  addBinContent (ETH3F x) = addBinContent x
+  chi2Test (ETH3F x) = chi2Test x
+  computeIntegral (ETH3F x) = computeIntegral x
+  directoryAutoAdd (ETH3F x) = directoryAutoAdd x
+  distancetoPrimitive (ETH3F x) = distancetoPrimitive x
+  divide (ETH3F x) = divide x
+  drawCopy (ETH3F x) a1 = return . ETH3F =<< drawCopy x a1
+  drawNormalized (ETH3F x) = drawNormalized x
+  drawPanel (ETH3F x) = drawPanel x
+  bufferEmpty (ETH3F x) = bufferEmpty x
+  eval (ETH3F x) = eval x
+  executeEvent (ETH3F x) = executeEvent x
+  fFT (ETH3F x) = fFT x
+  fill1 (ETH3F x) = fill1 x
+  fillN (ETH3F x) = fillN x
+  fillRandom (ETH3F x) = fillRandom x
+  findBin (ETH3F x) = findBin x
+  findFixBin (ETH3F x) = findFixBin x
+  findFirstBinAbove (ETH3F x) = findFirstBinAbove x
+  findLastBinAbove (ETH3F x) = findLastBinAbove x
+  fitPanel (ETH3F x) = fitPanel x
+  getNdivisionA (ETH3F x) = getNdivisionA x
+  getAxisColorA (ETH3F x) = getAxisColorA x
+  getLabelColorA (ETH3F x) = getLabelColorA x
+  getLabelFontA (ETH3F x) = getLabelFontA x
+  getLabelOffsetA (ETH3F x) = getLabelOffsetA x
+  getLabelSizeA (ETH3F x) = getLabelSizeA x
+  getTitleFontA (ETH3F x) = getTitleFontA x
+  getTitleOffsetA (ETH3F x) = getTitleOffsetA x
+  getTitleSizeA (ETH3F x) = getTitleSizeA x
+  getTickLengthA (ETH3F x) = getTickLengthA x
+  getBarOffset (ETH3F x) = getBarOffset x
+  getBarWidth (ETH3F x) = getBarWidth x
+  getContour (ETH3F x) = getContour x
+  getContourLevel (ETH3F x) = getContourLevel x
+  getContourLevelPad (ETH3F x) = getContourLevelPad x
+  getBin (ETH3F x) = getBin x
+  getBinCenter (ETH3F x) = getBinCenter x
+  getBinContent1 (ETH3F x) = getBinContent1 x
+  getBinContent2 (ETH3F x) = getBinContent2 x
+  getBinContent3 (ETH3F x) = getBinContent3 x
+  getBinError1 (ETH3F x) = getBinError1 x
+  getBinError2 (ETH3F x) = getBinError2 x
+  getBinError3 (ETH3F x) = getBinError3 x
+  getBinLowEdge (ETH3F x) = getBinLowEdge x
+  getBinWidth (ETH3F x) = getBinWidth x
+  getCellContent (ETH3F x) = getCellContent x
+  getCellError (ETH3F x) = getCellError x
+  getEntries (ETH3F x) = getEntries x
+  getEffectiveEntries (ETH3F x) = getEffectiveEntries x
+  getFunction (ETH3F x) = getFunction x
+  getDimension (ETH3F x) = getDimension x
+  getKurtosis (ETH3F x) = getKurtosis x
+  getLowEdge (ETH3F x) = getLowEdge x
+  getMaximum (ETH3F x) = getMaximum x
+  getMaximumBin (ETH3F x) = getMaximumBin x
+  getMaximumStored (ETH3F x) = getMaximumStored x
+  getMinimum (ETH3F x) = getMinimum x
+  getMinimumBin (ETH3F x) = getMinimumBin x
+  getMinimumStored (ETH3F x) = getMinimumStored x
+  getMean (ETH3F x) = getMean x
+  getMeanError (ETH3F x) = getMeanError x
+  getNbinsX (ETH3F x) = getNbinsX x
+  getNbinsY (ETH3F x) = getNbinsY x
+  getNbinsZ (ETH3F x) = getNbinsZ x
+  getQuantiles (ETH3F x) = getQuantiles x
+  getRandom (ETH3F x) = getRandom x
+  getStats (ETH3F x) = getStats x
+  getSumOfWeights (ETH3F x) = getSumOfWeights x
+  getSumw2 (ETH3F x) = getSumw2 x
+  getSumw2N (ETH3F x) = getSumw2N x
+  getRMS (ETH3F x) = getRMS x
+  getRMSError (ETH3F x) = getRMSError x
+  getSkewness (ETH3F x) = getSkewness x
+  integral1 (ETH3F x) = integral1 x
+  interpolate1 (ETH3F x) = interpolate1 x
+  interpolate2 (ETH3F x) = interpolate2 x
+  interpolate3 (ETH3F x) = interpolate3 x
+  kolmogorovTest (ETH3F x) = kolmogorovTest x
+  labelsDeflate (ETH3F x) = labelsDeflate x
+  labelsInflate (ETH3F x) = labelsInflate x
+  labelsOption (ETH3F x) = labelsOption x
+  multiflyF (ETH3F x) = multiflyF x
+  multiply (ETH3F x) = multiply x
+  paint (ETH3F x) = paint x
+  putStats (ETH3F x) = putStats x
+  rebin (ETH3F x) = rebin x
+  rebinAxis (ETH3F x) = rebinAxis x
+  rebuild (ETH3F x) = rebuild x
+  recursiveRemove (ETH3F x) = recursiveRemove x
+  reset (ETH3F x) = reset x
+  resetStats (ETH3F x) = resetStats x
+  scale (ETH3F x) = scale x
+  setAxisColorA (ETH3F x) = setAxisColorA x
+  setAxisRange (ETH3F x) = setAxisRange x
+  setBarOffset (ETH3F x) = setBarOffset x
+  setBarWidth (ETH3F x) = setBarWidth x
+  setBinContent1 (ETH3F x) = setBinContent1 x
+  setBinContent2 (ETH3F x) = setBinContent2 x
+  setBinContent3 (ETH3F x) = setBinContent3 x
+  setBinError1 (ETH3F x) = setBinError1 x
+  setBinError2 (ETH3F x) = setBinError2 x
+  setBinError3 (ETH3F x) = setBinError3 x
+  setBins1 (ETH3F x) = setBins1 x
+  setBins2 (ETH3F x) = setBins2 x
+  setBins3 (ETH3F x) = setBins3 x
+  setBinsLength (ETH3F x) = setBinsLength x
+  setBuffer (ETH3F x) = setBuffer x
+  setCellContent (ETH3F x) = setCellContent x
+  setContent (ETH3F x) = setContent x
+  setContour (ETH3F x) = setContour x
+  setContourLevel (ETH3F x) = setContourLevel x
+  setDirectory (ETH3F x) = setDirectory x
+  setEntries (ETH3F x) = setEntries x
+  setError (ETH3F x) = setError x
+  setLabelColorA (ETH3F x) = setLabelColorA x
+  setLabelSizeA (ETH3F x) = setLabelSizeA x
+  setLabelFontA (ETH3F x) = setLabelFontA x
+  setLabelOffsetA (ETH3F x) = setLabelOffsetA x
+  setMaximum (ETH3F x) = setMaximum x
+  setMinimum (ETH3F x) = setMinimum x
+  setNormFactor (ETH3F x) = setNormFactor x
+  setStats (ETH3F x) = setStats x
+  setOption (ETH3F x) = setOption x
+  setXTitle (ETH3F x) = setXTitle x
+  setYTitle (ETH3F x) = setYTitle x
+  setZTitle (ETH3F x) = setZTitle x
+  showBackground (ETH3F x) = showBackground x
+  showPeaks (ETH3F x) = showPeaks x
+  smooth (ETH3F x) = smooth x
+  sumw2 (ETH3F x) = sumw2 x
+
+instance ITAtt3D (Exist TH3F) where
+
+
+instance ITNamed (Exist TH3F) where
+  setName (ETH3F x) = setName x
+  setNameTitle (ETH3F x) = setNameTitle x
+  setTitle (ETH3F x) = setTitle x
+
+instance ITAttLine (Exist TH3F) where
+  setLineColor (ETH3F x) = setLineColor x
+
+instance ITAttFill (Exist TH3F) where
+  setFillColor (ETH3F x) = setFillColor x
+  setFillStyle (ETH3F x) = setFillStyle x
+
+instance ITAttMarker (Exist TH3F) where
+
+
+instance ITObject (Exist TH3F) where
+  getName (ETH3F x) = getName x
+  draw (ETH3F x) = draw x
+  findObject (ETH3F x) = findObject x
+  saveAs (ETH3F x) = saveAs x
+  write (ETH3F x) = write x
+  isA (ETH3F x) = isA x
+  printObj (ETH3F x) = printObj x
+
+instance IDeletable (Exist TH3F) where
+  delete (ETH3F x) = delete x
+
+instance ITArray (Exist TH3F) where
+
+
+instance ITH3I (Exist TH3I) where
+
+
+instance ITH3 (Exist TH3I) where
+
+
+instance ITArrayI (Exist TH3I) where
+
+
+instance ITH1 (Exist TH3I) where
+  add (ETH3I x) = add x
+  addBinContent (ETH3I x) = addBinContent x
+  chi2Test (ETH3I x) = chi2Test x
+  computeIntegral (ETH3I x) = computeIntegral x
+  directoryAutoAdd (ETH3I x) = directoryAutoAdd x
+  distancetoPrimitive (ETH3I x) = distancetoPrimitive x
+  divide (ETH3I x) = divide x
+  drawCopy (ETH3I x) a1 = return . ETH3I =<< drawCopy x a1
+  drawNormalized (ETH3I x) = drawNormalized x
+  drawPanel (ETH3I x) = drawPanel x
+  bufferEmpty (ETH3I x) = bufferEmpty x
+  eval (ETH3I x) = eval x
+  executeEvent (ETH3I x) = executeEvent x
+  fFT (ETH3I x) = fFT x
+  fill1 (ETH3I x) = fill1 x
+  fillN (ETH3I x) = fillN x
+  fillRandom (ETH3I x) = fillRandom x
+  findBin (ETH3I x) = findBin x
+  findFixBin (ETH3I x) = findFixBin x
+  findFirstBinAbove (ETH3I x) = findFirstBinAbove x
+  findLastBinAbove (ETH3I x) = findLastBinAbove x
+  fitPanel (ETH3I x) = fitPanel x
+  getNdivisionA (ETH3I x) = getNdivisionA x
+  getAxisColorA (ETH3I x) = getAxisColorA x
+  getLabelColorA (ETH3I x) = getLabelColorA x
+  getLabelFontA (ETH3I x) = getLabelFontA x
+  getLabelOffsetA (ETH3I x) = getLabelOffsetA x
+  getLabelSizeA (ETH3I x) = getLabelSizeA x
+  getTitleFontA (ETH3I x) = getTitleFontA x
+  getTitleOffsetA (ETH3I x) = getTitleOffsetA x
+  getTitleSizeA (ETH3I x) = getTitleSizeA x
+  getTickLengthA (ETH3I x) = getTickLengthA x
+  getBarOffset (ETH3I x) = getBarOffset x
+  getBarWidth (ETH3I x) = getBarWidth x
+  getContour (ETH3I x) = getContour x
+  getContourLevel (ETH3I x) = getContourLevel x
+  getContourLevelPad (ETH3I x) = getContourLevelPad x
+  getBin (ETH3I x) = getBin x
+  getBinCenter (ETH3I x) = getBinCenter x
+  getBinContent1 (ETH3I x) = getBinContent1 x
+  getBinContent2 (ETH3I x) = getBinContent2 x
+  getBinContent3 (ETH3I x) = getBinContent3 x
+  getBinError1 (ETH3I x) = getBinError1 x
+  getBinError2 (ETH3I x) = getBinError2 x
+  getBinError3 (ETH3I x) = getBinError3 x
+  getBinLowEdge (ETH3I x) = getBinLowEdge x
+  getBinWidth (ETH3I x) = getBinWidth x
+  getCellContent (ETH3I x) = getCellContent x
+  getCellError (ETH3I x) = getCellError x
+  getEntries (ETH3I x) = getEntries x
+  getEffectiveEntries (ETH3I x) = getEffectiveEntries x
+  getFunction (ETH3I x) = getFunction x
+  getDimension (ETH3I x) = getDimension x
+  getKurtosis (ETH3I x) = getKurtosis x
+  getLowEdge (ETH3I x) = getLowEdge x
+  getMaximum (ETH3I x) = getMaximum x
+  getMaximumBin (ETH3I x) = getMaximumBin x
+  getMaximumStored (ETH3I x) = getMaximumStored x
+  getMinimum (ETH3I x) = getMinimum x
+  getMinimumBin (ETH3I x) = getMinimumBin x
+  getMinimumStored (ETH3I x) = getMinimumStored x
+  getMean (ETH3I x) = getMean x
+  getMeanError (ETH3I x) = getMeanError x
+  getNbinsX (ETH3I x) = getNbinsX x
+  getNbinsY (ETH3I x) = getNbinsY x
+  getNbinsZ (ETH3I x) = getNbinsZ x
+  getQuantiles (ETH3I x) = getQuantiles x
+  getRandom (ETH3I x) = getRandom x
+  getStats (ETH3I x) = getStats x
+  getSumOfWeights (ETH3I x) = getSumOfWeights x
+  getSumw2 (ETH3I x) = getSumw2 x
+  getSumw2N (ETH3I x) = getSumw2N x
+  getRMS (ETH3I x) = getRMS x
+  getRMSError (ETH3I x) = getRMSError x
+  getSkewness (ETH3I x) = getSkewness x
+  integral1 (ETH3I x) = integral1 x
+  interpolate1 (ETH3I x) = interpolate1 x
+  interpolate2 (ETH3I x) = interpolate2 x
+  interpolate3 (ETH3I x) = interpolate3 x
+  kolmogorovTest (ETH3I x) = kolmogorovTest x
+  labelsDeflate (ETH3I x) = labelsDeflate x
+  labelsInflate (ETH3I x) = labelsInflate x
+  labelsOption (ETH3I x) = labelsOption x
+  multiflyF (ETH3I x) = multiflyF x
+  multiply (ETH3I x) = multiply x
+  paint (ETH3I x) = paint x
+  putStats (ETH3I x) = putStats x
+  rebin (ETH3I x) = rebin x
+  rebinAxis (ETH3I x) = rebinAxis x
+  rebuild (ETH3I x) = rebuild x
+  recursiveRemove (ETH3I x) = recursiveRemove x
+  reset (ETH3I x) = reset x
+  resetStats (ETH3I x) = resetStats x
+  scale (ETH3I x) = scale x
+  setAxisColorA (ETH3I x) = setAxisColorA x
+  setAxisRange (ETH3I x) = setAxisRange x
+  setBarOffset (ETH3I x) = setBarOffset x
+  setBarWidth (ETH3I x) = setBarWidth x
+  setBinContent1 (ETH3I x) = setBinContent1 x
+  setBinContent2 (ETH3I x) = setBinContent2 x
+  setBinContent3 (ETH3I x) = setBinContent3 x
+  setBinError1 (ETH3I x) = setBinError1 x
+  setBinError2 (ETH3I x) = setBinError2 x
+  setBinError3 (ETH3I x) = setBinError3 x
+  setBins1 (ETH3I x) = setBins1 x
+  setBins2 (ETH3I x) = setBins2 x
+  setBins3 (ETH3I x) = setBins3 x
+  setBinsLength (ETH3I x) = setBinsLength x
+  setBuffer (ETH3I x) = setBuffer x
+  setCellContent (ETH3I x) = setCellContent x
+  setContent (ETH3I x) = setContent x
+  setContour (ETH3I x) = setContour x
+  setContourLevel (ETH3I x) = setContourLevel x
+  setDirectory (ETH3I x) = setDirectory x
+  setEntries (ETH3I x) = setEntries x
+  setError (ETH3I x) = setError x
+  setLabelColorA (ETH3I x) = setLabelColorA x
+  setLabelSizeA (ETH3I x) = setLabelSizeA x
+  setLabelFontA (ETH3I x) = setLabelFontA x
+  setLabelOffsetA (ETH3I x) = setLabelOffsetA x
+  setMaximum (ETH3I x) = setMaximum x
+  setMinimum (ETH3I x) = setMinimum x
+  setNormFactor (ETH3I x) = setNormFactor x
+  setStats (ETH3I x) = setStats x
+  setOption (ETH3I x) = setOption x
+  setXTitle (ETH3I x) = setXTitle x
+  setYTitle (ETH3I x) = setYTitle x
+  setZTitle (ETH3I x) = setZTitle x
+  showBackground (ETH3I x) = showBackground x
+  showPeaks (ETH3I x) = showPeaks x
+  smooth (ETH3I x) = smooth x
+  sumw2 (ETH3I x) = sumw2 x
+
+instance ITAtt3D (Exist TH3I) where
+
+
+instance ITNamed (Exist TH3I) where
+  setName (ETH3I x) = setName x
+  setNameTitle (ETH3I x) = setNameTitle x
+  setTitle (ETH3I x) = setTitle x
+
+instance ITAttLine (Exist TH3I) where
+  setLineColor (ETH3I x) = setLineColor x
+
+instance ITAttFill (Exist TH3I) where
+  setFillColor (ETH3I x) = setFillColor x
+  setFillStyle (ETH3I x) = setFillStyle x
+
+instance ITAttMarker (Exist TH3I) where
+
+
+instance ITObject (Exist TH3I) where
+  getName (ETH3I x) = getName x
+  draw (ETH3I x) = draw x
+  findObject (ETH3I x) = findObject x
+  saveAs (ETH3I x) = saveAs x
+  write (ETH3I x) = write x
+  isA (ETH3I x) = isA x
+  printObj (ETH3I x) = printObj x
+
+instance IDeletable (Exist TH3I) where
+  delete (ETH3I x) = delete x
+
+instance ITArray (Exist TH3I) where
+
+
+instance ITH3S (Exist TH3S) where
+
+
+instance ITH3 (Exist TH3S) where
+
+
+instance ITArrayS (Exist TH3S) where
+
+
+instance ITH1 (Exist TH3S) where
+  add (ETH3S x) = add x
+  addBinContent (ETH3S x) = addBinContent x
+  chi2Test (ETH3S x) = chi2Test x
+  computeIntegral (ETH3S x) = computeIntegral x
+  directoryAutoAdd (ETH3S x) = directoryAutoAdd x
+  distancetoPrimitive (ETH3S x) = distancetoPrimitive x
+  divide (ETH3S x) = divide x
+  drawCopy (ETH3S x) a1 = return . ETH3S =<< drawCopy x a1
+  drawNormalized (ETH3S x) = drawNormalized x
+  drawPanel (ETH3S x) = drawPanel x
+  bufferEmpty (ETH3S x) = bufferEmpty x
+  eval (ETH3S x) = eval x
+  executeEvent (ETH3S x) = executeEvent x
+  fFT (ETH3S x) = fFT x
+  fill1 (ETH3S x) = fill1 x
+  fillN (ETH3S x) = fillN x
+  fillRandom (ETH3S x) = fillRandom x
+  findBin (ETH3S x) = findBin x
+  findFixBin (ETH3S x) = findFixBin x
+  findFirstBinAbove (ETH3S x) = findFirstBinAbove x
+  findLastBinAbove (ETH3S x) = findLastBinAbove x
+  fitPanel (ETH3S x) = fitPanel x
+  getNdivisionA (ETH3S x) = getNdivisionA x
+  getAxisColorA (ETH3S x) = getAxisColorA x
+  getLabelColorA (ETH3S x) = getLabelColorA x
+  getLabelFontA (ETH3S x) = getLabelFontA x
+  getLabelOffsetA (ETH3S x) = getLabelOffsetA x
+  getLabelSizeA (ETH3S x) = getLabelSizeA x
+  getTitleFontA (ETH3S x) = getTitleFontA x
+  getTitleOffsetA (ETH3S x) = getTitleOffsetA x
+  getTitleSizeA (ETH3S x) = getTitleSizeA x
+  getTickLengthA (ETH3S x) = getTickLengthA x
+  getBarOffset (ETH3S x) = getBarOffset x
+  getBarWidth (ETH3S x) = getBarWidth x
+  getContour (ETH3S x) = getContour x
+  getContourLevel (ETH3S x) = getContourLevel x
+  getContourLevelPad (ETH3S x) = getContourLevelPad x
+  getBin (ETH3S x) = getBin x
+  getBinCenter (ETH3S x) = getBinCenter x
+  getBinContent1 (ETH3S x) = getBinContent1 x
+  getBinContent2 (ETH3S x) = getBinContent2 x
+  getBinContent3 (ETH3S x) = getBinContent3 x
+  getBinError1 (ETH3S x) = getBinError1 x
+  getBinError2 (ETH3S x) = getBinError2 x
+  getBinError3 (ETH3S x) = getBinError3 x
+  getBinLowEdge (ETH3S x) = getBinLowEdge x
+  getBinWidth (ETH3S x) = getBinWidth x
+  getCellContent (ETH3S x) = getCellContent x
+  getCellError (ETH3S x) = getCellError x
+  getEntries (ETH3S x) = getEntries x
+  getEffectiveEntries (ETH3S x) = getEffectiveEntries x
+  getFunction (ETH3S x) = getFunction x
+  getDimension (ETH3S x) = getDimension x
+  getKurtosis (ETH3S x) = getKurtosis x
+  getLowEdge (ETH3S x) = getLowEdge x
+  getMaximum (ETH3S x) = getMaximum x
+  getMaximumBin (ETH3S x) = getMaximumBin x
+  getMaximumStored (ETH3S x) = getMaximumStored x
+  getMinimum (ETH3S x) = getMinimum x
+  getMinimumBin (ETH3S x) = getMinimumBin x
+  getMinimumStored (ETH3S x) = getMinimumStored x
+  getMean (ETH3S x) = getMean x
+  getMeanError (ETH3S x) = getMeanError x
+  getNbinsX (ETH3S x) = getNbinsX x
+  getNbinsY (ETH3S x) = getNbinsY x
+  getNbinsZ (ETH3S x) = getNbinsZ x
+  getQuantiles (ETH3S x) = getQuantiles x
+  getRandom (ETH3S x) = getRandom x
+  getStats (ETH3S x) = getStats x
+  getSumOfWeights (ETH3S x) = getSumOfWeights x
+  getSumw2 (ETH3S x) = getSumw2 x
+  getSumw2N (ETH3S x) = getSumw2N x
+  getRMS (ETH3S x) = getRMS x
+  getRMSError (ETH3S x) = getRMSError x
+  getSkewness (ETH3S x) = getSkewness x
+  integral1 (ETH3S x) = integral1 x
+  interpolate1 (ETH3S x) = interpolate1 x
+  interpolate2 (ETH3S x) = interpolate2 x
+  interpolate3 (ETH3S x) = interpolate3 x
+  kolmogorovTest (ETH3S x) = kolmogorovTest x
+  labelsDeflate (ETH3S x) = labelsDeflate x
+  labelsInflate (ETH3S x) = labelsInflate x
+  labelsOption (ETH3S x) = labelsOption x
+  multiflyF (ETH3S x) = multiflyF x
+  multiply (ETH3S x) = multiply x
+  paint (ETH3S x) = paint x
+  putStats (ETH3S x) = putStats x
+  rebin (ETH3S x) = rebin x
+  rebinAxis (ETH3S x) = rebinAxis x
+  rebuild (ETH3S x) = rebuild x
+  recursiveRemove (ETH3S x) = recursiveRemove x
+  reset (ETH3S x) = reset x
+  resetStats (ETH3S x) = resetStats x
+  scale (ETH3S x) = scale x
+  setAxisColorA (ETH3S x) = setAxisColorA x
+  setAxisRange (ETH3S x) = setAxisRange x
+  setBarOffset (ETH3S x) = setBarOffset x
+  setBarWidth (ETH3S x) = setBarWidth x
+  setBinContent1 (ETH3S x) = setBinContent1 x
+  setBinContent2 (ETH3S x) = setBinContent2 x
+  setBinContent3 (ETH3S x) = setBinContent3 x
+  setBinError1 (ETH3S x) = setBinError1 x
+  setBinError2 (ETH3S x) = setBinError2 x
+  setBinError3 (ETH3S x) = setBinError3 x
+  setBins1 (ETH3S x) = setBins1 x
+  setBins2 (ETH3S x) = setBins2 x
+  setBins3 (ETH3S x) = setBins3 x
+  setBinsLength (ETH3S x) = setBinsLength x
+  setBuffer (ETH3S x) = setBuffer x
+  setCellContent (ETH3S x) = setCellContent x
+  setContent (ETH3S x) = setContent x
+  setContour (ETH3S x) = setContour x
+  setContourLevel (ETH3S x) = setContourLevel x
+  setDirectory (ETH3S x) = setDirectory x
+  setEntries (ETH3S x) = setEntries x
+  setError (ETH3S x) = setError x
+  setLabelColorA (ETH3S x) = setLabelColorA x
+  setLabelSizeA (ETH3S x) = setLabelSizeA x
+  setLabelFontA (ETH3S x) = setLabelFontA x
+  setLabelOffsetA (ETH3S x) = setLabelOffsetA x
+  setMaximum (ETH3S x) = setMaximum x
+  setMinimum (ETH3S x) = setMinimum x
+  setNormFactor (ETH3S x) = setNormFactor x
+  setStats (ETH3S x) = setStats x
+  setOption (ETH3S x) = setOption x
+  setXTitle (ETH3S x) = setXTitle x
+  setYTitle (ETH3S x) = setYTitle x
+  setZTitle (ETH3S x) = setZTitle x
+  showBackground (ETH3S x) = showBackground x
+  showPeaks (ETH3S x) = showPeaks x
+  smooth (ETH3S x) = smooth x
+  sumw2 (ETH3S x) = sumw2 x
+
+instance ITAtt3D (Exist TH3S) where
+
+
+instance ITNamed (Exist TH3S) where
+  setName (ETH3S x) = setName x
+  setNameTitle (ETH3S x) = setNameTitle x
+  setTitle (ETH3S x) = setTitle x
+
+instance ITAttLine (Exist TH3S) where
+  setLineColor (ETH3S x) = setLineColor x
+
+instance ITAttFill (Exist TH3S) where
+  setFillColor (ETH3S x) = setFillColor x
+  setFillStyle (ETH3S x) = setFillStyle x
+
+instance ITAttMarker (Exist TH3S) where
+
+
+instance ITObject (Exist TH3S) where
+  getName (ETH3S x) = getName x
+  draw (ETH3S x) = draw x
+  findObject (ETH3S x) = findObject x
+  saveAs (ETH3S x) = saveAs x
+  write (ETH3S x) = write x
+  isA (ETH3S x) = isA x
+  printObj (ETH3S x) = printObj x
+
+instance IDeletable (Exist TH3S) where
+  delete (ETH3S x) = delete x
+
+instance ITArray (Exist TH3S) where
+
+
+instance ITQObject (Exist TQObject) where
+
+
+instance IDeletable (Exist TQObject) where
+  delete (ETQObject x) = delete x
+
+instance ITVirtualPad (Exist TVirtualPad) where
+  getFrame (ETVirtualPad x) = getFrame x
+  range (ETVirtualPad x) = range x
+
+instance ITObject (Exist TVirtualPad) where
+  getName (ETVirtualPad x) = getName x
+  draw (ETVirtualPad x) = draw x
+  findObject (ETVirtualPad x) = findObject x
+  saveAs (ETVirtualPad x) = saveAs x
+  write (ETVirtualPad x) = write x
+  isA (ETVirtualPad x) = isA x
+  printObj (ETVirtualPad x) = printObj x
+
+instance ITAttLine (Exist TVirtualPad) where
+  setLineColor (ETVirtualPad x) = setLineColor x
+
+instance ITAttFill (Exist TVirtualPad) where
+  setFillColor (ETVirtualPad x) = setFillColor x
+  setFillStyle (ETVirtualPad x) = setFillStyle x
+
+instance ITAttPad (Exist TVirtualPad) where
+
+
+instance ITQObject (Exist TVirtualPad) where
+
+
+instance IDeletable (Exist TVirtualPad) where
+  delete (ETVirtualPad x) = delete x
+
+instance ITPad (Exist TPad) where
+
+
+instance ITVirtualPad (Exist TPad) where
+  getFrame (ETPad x) = getFrame x
+  range (ETPad x) = range x
+
+instance ITObject (Exist TPad) where
+  getName (ETPad x) = getName x
+  draw (ETPad x) = draw x
+  findObject (ETPad x) = findObject x
+  saveAs (ETPad x) = saveAs x
+  write (ETPad x) = write x
+  isA (ETPad x) = isA x
+  printObj (ETPad x) = printObj x
+
+instance ITAttLine (Exist TPad) where
+  setLineColor (ETPad x) = setLineColor x
+
+instance ITAttFill (Exist TPad) where
+  setFillColor (ETPad x) = setFillColor x
+  setFillStyle (ETPad x) = setFillStyle x
+
+instance ITAttPad (Exist TPad) where
+
+
+instance ITQObject (Exist TPad) where
+
+
+instance IDeletable (Exist TPad) where
+  delete (ETPad x) = delete x
+
+instance ITButton (Exist TButton) where
+
+
+instance ITPad (Exist TButton) where
+
+
+instance ITAttText (Exist TButton) where
+  setTextColor (ETButton x) = setTextColor x
+  setTextAlign (ETButton x) = setTextAlign x
+  setTextSize (ETButton x) = setTextSize x
+
+instance ITVirtualPad (Exist TButton) where
+  getFrame (ETButton x) = getFrame x
+  range (ETButton x) = range x
+
+instance ITObject (Exist TButton) where
+  getName (ETButton x) = getName x
+  draw (ETButton x) = draw x
+  findObject (ETButton x) = findObject x
+  saveAs (ETButton x) = saveAs x
+  write (ETButton x) = write x
+  isA (ETButton x) = isA x
+  printObj (ETButton x) = printObj x
+
+instance ITAttLine (Exist TButton) where
+  setLineColor (ETButton x) = setLineColor x
+
+instance ITAttFill (Exist TButton) where
+  setFillColor (ETButton x) = setFillColor x
+  setFillStyle (ETButton x) = setFillStyle x
+
+instance ITAttPad (Exist TButton) where
+
+
+instance ITQObject (Exist TButton) where
+
+
+instance IDeletable (Exist TButton) where
+  delete (ETButton x) = delete x
+
+instance ITGroupButton (Exist TGroupButton) where
+
+
+instance ITButton (Exist TGroupButton) where
+
+
+instance ITPad (Exist TGroupButton) where
+
+
+instance ITAttText (Exist TGroupButton) where
+  setTextColor (ETGroupButton x) = setTextColor x
+  setTextAlign (ETGroupButton x) = setTextAlign x
+  setTextSize (ETGroupButton x) = setTextSize x
+
+instance ITVirtualPad (Exist TGroupButton) where
+  getFrame (ETGroupButton x) = getFrame x
+  range (ETGroupButton x) = range x
+
+instance ITObject (Exist TGroupButton) where
+  getName (ETGroupButton x) = getName x
+  draw (ETGroupButton x) = draw x
+  findObject (ETGroupButton x) = findObject x
+  saveAs (ETGroupButton x) = saveAs x
+  write (ETGroupButton x) = write x
+  isA (ETGroupButton x) = isA x
+  printObj (ETGroupButton x) = printObj x
+
+instance ITAttLine (Exist TGroupButton) where
+  setLineColor (ETGroupButton x) = setLineColor x
+
+instance ITAttFill (Exist TGroupButton) where
+  setFillColor (ETGroupButton x) = setFillColor x
+  setFillStyle (ETGroupButton x) = setFillStyle x
+
+instance ITAttPad (Exist TGroupButton) where
+
+
+instance ITQObject (Exist TGroupButton) where
+
+
+instance IDeletable (Exist TGroupButton) where
+  delete (ETGroupButton x) = delete x
+
+instance ITCanvas (Exist TCanvas) where
+
+
+instance ITPad (Exist TCanvas) where
+
+
+instance ITVirtualPad (Exist TCanvas) where
+  getFrame (ETCanvas x) = getFrame x
+  range (ETCanvas x) = range x
+
+instance ITObject (Exist TCanvas) where
+  getName (ETCanvas x) = getName x
+  draw (ETCanvas x) = draw x
+  findObject (ETCanvas x) = findObject x
+  saveAs (ETCanvas x) = saveAs x
+  write (ETCanvas x) = write x
+  isA (ETCanvas x) = isA x
+  printObj (ETCanvas x) = printObj x
+
+instance ITAttLine (Exist TCanvas) where
+  setLineColor (ETCanvas x) = setLineColor x
+
+instance ITAttFill (Exist TCanvas) where
+  setFillColor (ETCanvas x) = setFillColor x
+  setFillStyle (ETCanvas x) = setFillStyle x
+
+instance ITAttPad (Exist TCanvas) where
+
+
+instance ITQObject (Exist TCanvas) where
+
+
+instance IDeletable (Exist TCanvas) where
+  delete (ETCanvas x) = delete x
+
+instance ITDialogCanvas (Exist TDialogCanvas) where
+
+
+instance ITCanvas (Exist TDialogCanvas) where
+
+
+instance ITAttText (Exist TDialogCanvas) where
+  setTextColor (ETDialogCanvas x) = setTextColor x
+  setTextAlign (ETDialogCanvas x) = setTextAlign x
+  setTextSize (ETDialogCanvas x) = setTextSize x
+
+instance ITPad (Exist TDialogCanvas) where
+
+
+instance ITVirtualPad (Exist TDialogCanvas) where
+  getFrame (ETDialogCanvas x) = getFrame x
+  range (ETDialogCanvas x) = range x
+
+instance ITObject (Exist TDialogCanvas) where
+  getName (ETDialogCanvas x) = getName x
+  draw (ETDialogCanvas x) = draw x
+  findObject (ETDialogCanvas x) = findObject x
+  saveAs (ETDialogCanvas x) = saveAs x
+  write (ETDialogCanvas x) = write x
+  isA (ETDialogCanvas x) = isA x
+  printObj (ETDialogCanvas x) = printObj x
+
+instance ITAttLine (Exist TDialogCanvas) where
+  setLineColor (ETDialogCanvas x) = setLineColor x
+
+instance ITAttFill (Exist TDialogCanvas) where
+  setFillColor (ETDialogCanvas x) = setFillColor x
+  setFillStyle (ETDialogCanvas x) = setFillStyle x
+
+instance ITAttPad (Exist TDialogCanvas) where
+
+
+instance ITQObject (Exist TDialogCanvas) where
+
+
+instance IDeletable (Exist TDialogCanvas) where
+  delete (ETDialogCanvas x) = delete x
+
+instance ITInspectCanvas (Exist TInspectCanvas) where
+
+
+instance ITCanvas (Exist TInspectCanvas) where
+
+
+instance ITAttText (Exist TInspectCanvas) where
+  setTextColor (ETInspectCanvas x) = setTextColor x
+  setTextAlign (ETInspectCanvas x) = setTextAlign x
+  setTextSize (ETInspectCanvas x) = setTextSize x
+
+instance ITPad (Exist TInspectCanvas) where
+
+
+instance ITVirtualPad (Exist TInspectCanvas) where
+  getFrame (ETInspectCanvas x) = getFrame x
+  range (ETInspectCanvas x) = range x
+
+instance ITObject (Exist TInspectCanvas) where
+  getName (ETInspectCanvas x) = getName x
+  draw (ETInspectCanvas x) = draw x
+  findObject (ETInspectCanvas x) = findObject x
+  saveAs (ETInspectCanvas x) = saveAs x
+  write (ETInspectCanvas x) = write x
+  isA (ETInspectCanvas x) = isA x
+  printObj (ETInspectCanvas x) = printObj x
+
+instance ITAttLine (Exist TInspectCanvas) where
+  setLineColor (ETInspectCanvas x) = setLineColor x
+
+instance ITAttFill (Exist TInspectCanvas) where
+  setFillColor (ETInspectCanvas x) = setFillColor x
+  setFillStyle (ETInspectCanvas x) = setFillStyle x
+
+instance ITAttPad (Exist TInspectCanvas) where
+
+
+instance ITQObject (Exist TInspectCanvas) where
+
+
+instance IDeletable (Exist TInspectCanvas) where
+  delete (ETInspectCanvas x) = delete x
+
+instance ITEvePad (Exist TEvePad) where
+
+
+instance ITPad (Exist TEvePad) where
+
+
+instance ITVirtualPad (Exist TEvePad) where
+  getFrame (ETEvePad x) = getFrame x
+  range (ETEvePad x) = range x
+
+instance ITObject (Exist TEvePad) where
+  getName (ETEvePad x) = getName x
+  draw (ETEvePad x) = draw x
+  findObject (ETEvePad x) = findObject x
+  saveAs (ETEvePad x) = saveAs x
+  write (ETEvePad x) = write x
+  isA (ETEvePad x) = isA x
+  printObj (ETEvePad x) = printObj x
+
+instance ITAttLine (Exist TEvePad) where
+  setLineColor (ETEvePad x) = setLineColor x
+
+instance ITAttFill (Exist TEvePad) where
+  setFillColor (ETEvePad x) = setFillColor x
+  setFillStyle (ETEvePad x) = setFillStyle x
+
+instance ITAttPad (Exist TEvePad) where
+
+
+instance ITQObject (Exist TEvePad) where
+
+
+instance IDeletable (Exist TEvePad) where
+  delete (ETEvePad x) = delete x
+
+instance ITSlider (Exist TSlider) where
+
+
+instance ITPad (Exist TSlider) where
+
+
+instance ITVirtualPad (Exist TSlider) where
+  getFrame (ETSlider x) = getFrame x
+  range (ETSlider x) = range x
+
+instance ITObject (Exist TSlider) where
+  getName (ETSlider x) = getName x
+  draw (ETSlider x) = draw x
+  findObject (ETSlider x) = findObject x
+  saveAs (ETSlider x) = saveAs x
+  write (ETSlider x) = write x
+  isA (ETSlider x) = isA x
+  printObj (ETSlider x) = printObj x
+
+instance ITAttLine (Exist TSlider) where
+  setLineColor (ETSlider x) = setLineColor x
+
+instance ITAttFill (Exist TSlider) where
+  setFillColor (ETSlider x) = setFillColor x
+  setFillStyle (ETSlider x) = setFillStyle x
+
+instance ITAttPad (Exist TSlider) where
+
+
+instance ITQObject (Exist TSlider) where
+
+
+instance IDeletable (Exist TSlider) where
+  delete (ETSlider x) = delete x
+
+instance ITApplication (Exist TApplication) where
+  run (ETApplication x) = run x
+
+instance ITObject (Exist TApplication) where
+  getName (ETApplication x) = getName x
+  draw (ETApplication x) = draw x
+  findObject (ETApplication x) = findObject x
+  saveAs (ETApplication x) = saveAs x
+  write (ETApplication x) = write x
+  isA (ETApplication x) = isA x
+  printObj (ETApplication x) = printObj x
+
+instance ITQObject (Exist TApplication) where
+
+
+instance IDeletable (Exist TApplication) where
+  delete (ETApplication x) = delete x
+
+instance ITRint (Exist TRint) where
+
+
+instance ITApplication (Exist TRint) where
+  run (ETRint x) = run x
+
+instance ITObject (Exist TRint) where
+  getName (ETRint x) = getName x
+  draw (ETRint x) = draw x
+  findObject (ETRint x) = findObject x
+  saveAs (ETRint x) = saveAs x
+  write (ETRint x) = write x
+  isA (ETRint x) = isA x
+  printObj (ETRint x) = printObj x
+
+instance ITQObject (Exist TRint) where
+
+
+instance IDeletable (Exist TRint) where
+  delete (ETRint x) = delete x
+
+instance ITRandom (Exist TRandom) where
+  gaus (ETRandom x) = gaus x
+  uniform (ETRandom x) = uniform x
+
+instance ITNamed (Exist TRandom) where
+  setName (ETRandom x) = setName x
+  setNameTitle (ETRandom x) = setNameTitle x
+  setTitle (ETRandom x) = setTitle x
+
+instance ITObject (Exist TRandom) where
+  getName (ETRandom x) = getName x
+  draw (ETRandom x) = draw x
+  findObject (ETRandom x) = findObject x
+  saveAs (ETRandom x) = saveAs x
+  write (ETRandom x) = write x
+  isA (ETRandom x) = isA x
+  printObj (ETRandom x) = printObj x
+
+instance IDeletable (Exist TRandom) where
+  delete (ETRandom x) = delete x
+
+instance ITCollection (Exist TCollection) where
+
+
+instance ITObject (Exist TCollection) where
+  getName (ETCollection x) = getName x
+  draw (ETCollection x) = draw x
+  findObject (ETCollection x) = findObject x
+  saveAs (ETCollection x) = saveAs x
+  write (ETCollection x) = write x
+  isA (ETCollection x) = isA x
+  printObj (ETCollection x) = printObj x
+
+instance IDeletable (Exist TCollection) where
+  delete (ETCollection x) = delete x
+
+instance ITSeqCollection (Exist TSeqCollection) where
+
+
+instance ITCollection (Exist TSeqCollection) where
+
+
+instance ITObject (Exist TSeqCollection) where
+  getName (ETSeqCollection x) = getName x
+  draw (ETSeqCollection x) = draw x
+  findObject (ETSeqCollection x) = findObject x
+  saveAs (ETSeqCollection x) = saveAs x
+  write (ETSeqCollection x) = write x
+  isA (ETSeqCollection x) = isA x
+  printObj (ETSeqCollection x) = printObj x
+
+instance IDeletable (Exist TSeqCollection) where
+  delete (ETSeqCollection x) = delete x
+
+instance ITObjArray (Exist TObjArray) where
+
+
+instance ITSeqCollection (Exist TObjArray) where
+
+
+instance ITCollection (Exist TObjArray) where
+
+
+instance ITObject (Exist TObjArray) where
+  getName (ETObjArray x) = getName x
+  draw (ETObjArray x) = draw x
+  findObject (ETObjArray x) = findObject x
+  saveAs (ETObjArray x) = saveAs x
+  write (ETObjArray x) = write x
+  isA (ETObjArray x) = isA x
+  printObj (ETObjArray x) = printObj x
+
+instance IDeletable (Exist TObjArray) where
+  delete (ETObjArray x) = delete x
+
+instance ITList (Exist TList) where
+
+
+instance ITSeqCollection (Exist TList) where
+
+
+instance ITCollection (Exist TList) where
+
+
+instance ITObject (Exist TList) where
+  getName (ETList x) = getName x
+  draw (ETList x) = draw x
+  findObject (ETList x) = findObject x
+  saveAs (ETList x) = saveAs x
+  write (ETList x) = write x
+  isA (ETList x) = isA x
+  printObj (ETList x) = printObj x
+
+instance IDeletable (Exist TList) where
+  delete (ETList x) = delete x
+
+instance ITKey (Exist TKey) where
+
+
+instance ITNamed (Exist TKey) where
+  setName (ETKey x) = setName x
+  setNameTitle (ETKey x) = setNameTitle x
+  setTitle (ETKey x) = setTitle x
+
+instance ITObject (Exist TKey) where
+  getName (ETKey x) = getName x
+  draw (ETKey x) = draw x
+  findObject (ETKey x) = findObject x
+  saveAs (ETKey x) = saveAs x
+  write (ETKey x) = write x
+  isA (ETKey x) = isA x
+  printObj (ETKey x) = printObj x
+
+instance IDeletable (Exist TKey) where
+  delete (ETKey x) = delete x
+
+instance ITDatime (Exist TDatime) where
+  convert (ETDatime x) = convert x
+
+instance IDeletable (Exist TDatime) where
+  delete (ETDatime x) = delete x
+
+
+
+instance ITObject TObject where
+  getName = xform0 c_tobject_getname
+  draw = xform1 c_tobject_draw
+  findObject = xform1 c_tobject_findobject
+  saveAs = xform2 c_tobject_saveas
+  write = xform3 c_tobject_write
+  isA = xform0 c_tobject_isa
+  printObj = xform1 c_tobject_printobj
+
+instance ITNamed TNamed where
+  setName = xform1 c_tnamed_setname
+  setNameTitle = xform2 c_tnamed_setnametitle
+  setTitle = xform1 c_tnamed_settitle
+
+
+
+instance ITClass TClass where
+
+instance ITFormula TFormula where
+  getParameter = xform1 c_tformula_getparameter
+  setParameter = xform2 c_tformula_setparameter
+
+instance ITAtt3D TAtt3D where
+
+instance ITAttAxis TAttAxis where
+  getNdivisions = xform0 c_tattaxis_getndivisions
+  getAxisColor = xform0 c_tattaxis_getaxiscolor
+  getLabelColor = xform0 c_tattaxis_getlabelcolor
+  getLabelFont = xform0 c_tattaxis_getlabelfont
+  getLabelOffset = xform0 c_tattaxis_getlabeloffset
+  getLabelSize = xform0 c_tattaxis_getlabelsize
+  getTitleOffset = xform0 c_tattaxis_gettitleoffset
+  getTitleSize = xform0 c_tattaxis_gettitlesize
+  getTickLength = xform0 c_tattaxis_getticklength
+  getTitleFont = xform0 c_tattaxis_gettitlefont
+  setNdivisions = xform2 c_tattaxis_setndivisions
+  setAxisColor = xform1 c_tattaxis_setaxiscolor
+  setLabelColor = xform1 c_tattaxis_setlabelcolor
+  setLabelFont = xform1 c_tattaxis_setlabelfont
+  setLabelOffset = xform1 c_tattaxis_setlabeloffset
+  setLabelSize = xform1 c_tattaxis_setlabelsize
+  setTickLength = xform1 c_tattaxis_setticklength
+  setTitleOffset = xform1 c_tattaxis_settitleoffset
+  setTitleSize = xform1 c_tattaxis_settitlesize
+  setTitleColor = xform1 c_tattaxis_settitlecolor
+  setTitleFont = xform1 c_tattaxis_settitlefont
+
+instance ITAttBBox TAttBBox where
+
+instance ITAttCanvas TAttCanvas where
+
+instance ITAttFill TAttFill where
+  setFillColor = xform1 c_tattfill_setfillcolor
+  setFillStyle = xform1 c_tattfill_setfillstyle
+
+instance ITAttImage TAttImage where
+
+instance ITAttLine TAttLine where
+  setLineColor = xform1 c_tattline_setlinecolor
+
+instance ITAttMarker TAttMarker where
+
+instance ITAttPad TAttPad where
+
+instance ITAttParticle TAttParticle where
+
+instance ITAttText TAttText where
+  setTextColor = xform1 c_tatttext_settextcolor
+  setTextAlign = xform1 c_tatttext_settextalign
+  setTextSize = xform1 c_tatttext_settextsize
+
+instance ITHStack THStack where
+
+instance ITF1 TF1 where
+
+instance ITGraph TGraph where
+
+instance ITGraphAsymmErrors TGraphAsymmErrors where
+
+instance ITCutG TCutG where
+
+instance ITGraphBentErrors TGraphBentErrors where
+
+instance ITGraphErrors TGraphErrors where
+
+instance ITGraphPolar TGraphPolar where
+
+instance ITGraphQQ TGraphQQ where
+
+instance ITEllipse TEllipse where
+
+instance ITArc TArc where
+
+instance ITCrown TCrown where
+
+instance ITLine TLine where
+
+instance ITArrow TArrow where
+
+instance ITGaxis TGaxis where
+
+instance ITShape TShape where
+
+instance ITBRIK TBRIK where
+
+instance ITTUBE TTUBE where
+
+instance ITPCON TPCON where
+
+instance ITSPHE TSPHE where
+
+instance ITXTRU TXTRU where
+
+instance ITBox TBox where
+
+instance ITPave TPave where
+
+instance ITPaveText TPaveText where
+
+instance ITDiamond TDiamond where
+
+instance ITPaveStats TPaveStats where
+
+instance ITPavesText TPavesText where
+
+instance ITLegend TLegend where
+  addEntry = xform3 c_tlegend_addentry
+
+instance ITLegendEntry TLegendEntry where
+
+instance ITPaveLabel TPaveLabel where
+
+instance ITPaveClass TPaveClass where
+
+instance ITWbox TWbox where
+  setBorderMode = xform1 c_twbox_setbordermode
+
+instance ITFrame TFrame where
+
+instance ITSliderBox TSliderBox where
+
+instance ITTree TTree where
+
+instance ITChain TChain where
+
+instance ITNtuple TNtuple where
+
+instance ITNtupleD TNtupleD where
+
+instance ITTreeSQL TTreeSQL where
+
+instance ITPolyLine TPolyLine where
+
+instance ITCurlyLine TCurlyLine where
+
+instance ITCurlyArc TCurlyArc where
+
+instance ITEfficiency TEfficiency where
+
+instance ITAxis TAxis where
+  setTimeDisplay = xform1 c_taxis_settimedisplay
+  setTimeFormat = xform1 c_taxis_settimeformat
+  setTimeOffset = xform2 c_taxis_settimeoffset
+
+instance ITLatex TLatex where
+
+instance ITText TText where
+
+instance ITDirectory TDirectory where
+  append = xform2 c_tdirectory_append
+  addD = xform2 c_tdirectory_addd
+  appendKey = xform1 c_tdirectory_appendkey
+  close = xform1 c_tdirectory_close
+  get = xform1 c_tdirectory_get
+
+instance ITDirectoryFile TDirectoryFile where
+  getListOfKeys = xform0 c_tdirectoryfile_getlistofkeys
+
+instance ITFile TFile where
+
+instance ITBranch TBranch where
+
+instance ITVirtualTreePlayer TVirtualTreePlayer where
+
+instance ITTreePlayer TTreePlayer where
+
+instance ITArray TArray where
+
+instance ITArrayC TArrayC where
+
+instance ITArrayD TArrayD where
+
+instance ITArrayF TArrayF where
+
+instance ITArrayI TArrayI where
+
+instance ITArrayL TArrayL where
+
+instance ITArrayL64 TArrayL64 where
+
+instance ITArrayS TArrayS where
+
+instance ITH1 TH1 where
+  add = xform2 c_th1_add
+  addBinContent = xform2 c_th1_addbincontent
+  chi2Test = xform3 c_th1_chi2test
+  computeIntegral = xform0 c_th1_computeintegral
+  directoryAutoAdd = xform1 c_th1_directoryautoadd
+  distancetoPrimitive = xform2 c_th1_distancetoprimitive
+  divide = xform5 c_th1_divide
+  drawCopy = xform1 c_th1_drawcopy
+  drawNormalized = xform2 c_th1_drawnormalized
+  drawPanel = xform0 c_th1_drawpanel
+  bufferEmpty = xform1 c_th1_bufferempty
+  eval = xform2 c_th1_eval
+  executeEvent = xform3 c_th1_executeevent
+  fFT = xform2 c_th1_fft
+  fill1 = xform1 c_th1_fill1
+  fillN = xform4 c_th1_filln
+  fillRandom = xform2 c_th1_fillrandom
+  findBin = xform3 c_th1_findbin
+  findFixBin = xform3 c_th1_findfixbin
+  findFirstBinAbove = xform2 c_th1_findfirstbinabove
+  findLastBinAbove = xform2 c_th1_findlastbinabove
+  fitPanel = xform0 c_th1_fitpanel
+  getNdivisionA = xform1 c_th1_getndivisiona
+  getAxisColorA = xform1 c_th1_getaxiscolora
+  getLabelColorA = xform1 c_th1_getlabelcolora
+  getLabelFontA = xform1 c_th1_getlabelfonta
+  getLabelOffsetA = xform1 c_th1_getlabeloffseta
+  getLabelSizeA = xform1 c_th1_getlabelsizea
+  getTitleFontA = xform1 c_th1_gettitlefonta
+  getTitleOffsetA = xform1 c_th1_gettitleoffseta
+  getTitleSizeA = xform1 c_th1_gettitlesizea
+  getTickLengthA = xform1 c_th1_getticklengtha
+  getBarOffset = xform0 c_th1_getbaroffset
+  getBarWidth = xform0 c_th1_getbarwidth
+  getContour = xform1 c_th1_getcontour
+  getContourLevel = xform1 c_th1_getcontourlevel
+  getContourLevelPad = xform1 c_th1_getcontourlevelpad
+  getBin = xform3 c_th1_getbin
+  getBinCenter = xform1 c_th1_getbincenter
+  getBinContent1 = xform1 c_th1_getbincontent1
+  getBinContent2 = xform2 c_th1_getbincontent2
+  getBinContent3 = xform3 c_th1_getbincontent3
+  getBinError1 = xform1 c_th1_getbinerror1
+  getBinError2 = xform2 c_th1_getbinerror2
+  getBinError3 = xform3 c_th1_getbinerror3
+  getBinLowEdge = xform1 c_th1_getbinlowedge
+  getBinWidth = xform1 c_th1_getbinwidth
+  getCellContent = xform2 c_th1_getcellcontent
+  getCellError = xform2 c_th1_getcellerror
+  getEntries = xform0 c_th1_getentries
+  getEffectiveEntries = xform0 c_th1_geteffectiveentries
+  getFunction = xform1 c_th1_getfunction
+  getDimension = xform0 c_th1_getdimension
+  getKurtosis = xform1 c_th1_getkurtosis
+  getLowEdge = xform1 c_th1_getlowedge
+  getMaximum = xform1 c_th1_getmaximum
+  getMaximumBin = xform0 c_th1_getmaximumbin
+  getMaximumStored = xform0 c_th1_getmaximumstored
+  getMinimum = xform1 c_th1_getminimum
+  getMinimumBin = xform0 c_th1_getminimumbin
+  getMinimumStored = xform0 c_th1_getminimumstored
+  getMean = xform1 c_th1_getmean
+  getMeanError = xform1 c_th1_getmeanerror
+  getNbinsX = xform0 c_th1_getnbinsx
+  getNbinsY = xform0 c_th1_getnbinsy
+  getNbinsZ = xform0 c_th1_getnbinsz
+  getQuantiles = xform3 c_th1_getquantiles
+  getRandom = xform0 c_th1_getrandom
+  getStats = xform1 c_th1_getstats
+  getSumOfWeights = xform0 c_th1_getsumofweights
+  getSumw2 = xform0 c_th1_getsumw2
+  getSumw2N = xform0 c_th1_getsumw2n
+  getRMS = xform1 c_th1_getrms
+  getRMSError = xform1 c_th1_getrmserror
+  getSkewness = xform1 c_th1_getskewness
+  integral1 = xform3 c_th1_integral1
+  interpolate1 = xform1 c_th1_interpolate1
+  interpolate2 = xform2 c_th1_interpolate2
+  interpolate3 = xform3 c_th1_interpolate3
+  kolmogorovTest = xform2 c_th1_kolmogorovtest
+  labelsDeflate = xform1 c_th1_labelsdeflate
+  labelsInflate = xform1 c_th1_labelsinflate
+  labelsOption = xform2 c_th1_labelsoption
+  multiflyF = xform2 c_th1_multiflyf
+  multiply = xform5 c_th1_multiply
+  paint = xform0 c_th1_paint
+  putStats = xform1 c_th1_putstats
+  rebin = xform3 c_th1_rebin
+  rebinAxis = xform2 c_th1_rebinaxis
+  rebuild = xform1 c_th1_rebuild
+  recursiveRemove = xform1 c_th1_recursiveremove
+  reset = xform1 c_th1_reset
+  resetStats = xform0 c_th1_resetstats
+  scale = xform2 c_th1_scale
+  setAxisColorA = xform2 c_th1_setaxiscolora
+  setAxisRange = xform3 c_th1_setaxisrange
+  setBarOffset = xform1 c_th1_setbaroffset
+  setBarWidth = xform1 c_th1_setbarwidth
+  setBinContent1 = xform2 c_th1_setbincontent1
+  setBinContent2 = xform3 c_th1_setbincontent2
+  setBinContent3 = xform4 c_th1_setbincontent3
+  setBinError1 = xform2 c_th1_setbinerror1
+  setBinError2 = xform3 c_th1_setbinerror2
+  setBinError3 = xform4 c_th1_setbinerror3
+  setBins1 = xform2 c_th1_setbins1
+  setBins2 = xform4 c_th1_setbins2
+  setBins3 = xform6 c_th1_setbins3
+  setBinsLength = xform1 c_th1_setbinslength
+  setBuffer = xform2 c_th1_setbuffer
+  setCellContent = xform3 c_th1_setcellcontent
+  setContent = xform1 c_th1_setcontent
+  setContour = xform2 c_th1_setcontour
+  setContourLevel = xform2 c_th1_setcontourlevel
+  setDirectory = xform1 c_th1_setdirectory
+  setEntries = xform1 c_th1_setentries
+  setError = xform1 c_th1_seterror
+  setLabelColorA = xform2 c_th1_setlabelcolora
+  setLabelSizeA = xform2 c_th1_setlabelsizea
+  setLabelFontA = xform2 c_th1_setlabelfonta
+  setLabelOffsetA = xform2 c_th1_setlabeloffseta
+  setMaximum = xform1 c_th1_setmaximum
+  setMinimum = xform1 c_th1_setminimum
+  setNormFactor = xform1 c_th1_setnormfactor
+  setStats = xform1 c_th1_setstats
+  setOption = xform1 c_th1_setoption
+  setXTitle = xform1 c_th1_setxtitle
+  setYTitle = xform1 c_th1_setytitle
+  setZTitle = xform1 c_th1_setztitle
+  showBackground = xform2 c_th1_showbackground
+  showPeaks = xform3 c_th1_showpeaks
+  smooth = xform2 c_th1_smooth
+  sumw2 = xform0 c_th1_sumw2
+
+instance ITH2 TH2 where
+  fill2 = xform2 c_th2_fill2
+  fillRandom2 = xform2 c_th2_fillrandom2
+  findFirstBinAbove2 = xform2 c_th2_findfirstbinabove2
+  findLastBinAbove2 = xform2 c_th2_findlastbinabove2
+  fitSlicesX = xform6 c_th2_fitslicesx
+  fitSlicesY = xform6 c_th2_fitslicesy
+  getCorrelationFactor = xform2 c_th2_getcorrelationfactor
+  getCovariance = xform2 c_th2_getcovariance
+  integral2 = xform5 c_th2_integral2
+  rebinX = xform2 c_th2_rebinx
+  rebinY = xform2 c_th2_rebiny
+  rebin2D = xform3 c_th2_rebin2d
+  setShowProjectionX = xform1 c_th2_setshowprojectionx
+  setShowProjectionY = xform1 c_th2_setshowprojectiony
+
+instance ITH3 TH3 where
+
+instance ITH1C TH1C where
+
+instance ITH1D TH1D where
+
+instance ITH1F TH1F where
+
+instance ITH1I TH1I where
+
+instance ITH1S TH1S where
+
+instance ITH2C TH2C where
+
+instance ITH2D TH2D where
+
+instance ITH2F TH2F where
+
+instance ITH2I TH2I where
+
+instance ITH2Poly TH2Poly where
+
+instance ITH2S TH2S where
+
+instance ITH3C TH3C where
+
+instance ITH3D TH3D where
+
+instance ITH3F TH3F where
+
+instance ITH3I TH3I where
+
+instance ITH3S TH3S where
+
+instance ITQObject TQObject where
+
+instance ITVirtualPad TVirtualPad where
+  getFrame = xform0 c_tvirtualpad_getframe
+  range = xform4 c_tvirtualpad_range
+
+instance ITPad TPad where
+
+instance ITButton TButton where
+
+instance ITGroupButton TGroupButton where
+
+instance ITCanvas TCanvas where
+
+instance ITDialogCanvas TDialogCanvas where
+
+instance ITInspectCanvas TInspectCanvas where
+
+instance ITEvePad TEvePad where
+
+instance ITSlider TSlider where
+
+instance ITApplication TApplication where
+  run = xform1 c_tapplication_run
+
+instance ITRint TRint where
+
+instance ITRandom TRandom where
+  gaus = xform2 c_trandom_gaus
+  uniform = xform2 c_trandom_uniform
+
+instance ITCollection TCollection where
+
+instance ITSeqCollection TSeqCollection where
+
+instance ITObjArray TObjArray where
+
+instance ITList TList where
+
+instance ITKey TKey where
+
+instance ITDatime TDatime where
+  convert = xform1 c_tdatime_convert
+
+
+
+
+
+instance IDeletable TDatime where
+  delete = xform0 c_tdatime_delete
+
+instance IDeletable TKey where
+  delete = xform0 c_tkey_delete
+
+instance IDeletable TList where
+  delete = xform0 c_tlist_delete
+
+instance IDeletable TObjArray where
+  delete = xform0 c_tobjarray_delete
+
+instance IDeletable TSeqCollection where
+  delete = xform0 c_tseqcollection_delete
+
+instance IDeletable TCollection where
+  delete = xform0 c_tcollection_delete
+
+instance IDeletable TRandom where
+  delete = xform0 c_trandom_delete
+
+instance IDeletable TRint where
+  delete = xform0 c_trint_delete
+
+instance IDeletable TApplication where
+  delete = xform0 c_tapplication_delete
+
+instance IDeletable TSlider where
+  delete = xform0 c_tslider_delete
+
+instance IDeletable TEvePad where
+  delete = xform0 c_tevepad_delete
+
+instance IDeletable TInspectCanvas where
+  delete = xform0 c_tinspectcanvas_delete
+
+instance IDeletable TDialogCanvas where
+  delete = xform0 c_tdialogcanvas_delete
+
+instance IDeletable TCanvas where
+  delete = xform0 c_tcanvas_delete
+
+instance IDeletable TGroupButton where
+  delete = xform0 c_tgroupbutton_delete
+
+instance IDeletable TButton where
+  delete = xform0 c_tbutton_delete
+
+instance IDeletable TPad where
+  delete = xform0 c_tpad_delete
+
+instance IDeletable TVirtualPad where
+  delete = xform0 c_tvirtualpad_delete
+
+instance IDeletable TQObject where
+  delete = xform0 c_tqobject_delete
+
+instance IDeletable TH3S where
+  delete = xform0 c_th3s_delete
+
+instance IDeletable TH3I where
+  delete = xform0 c_th3i_delete
+
+instance IDeletable TH3F where
+  delete = xform0 c_th3f_delete
+
+instance IDeletable TH3D where
+  delete = xform0 c_th3d_delete
+
+instance IDeletable TH3C where
+  delete = xform0 c_th3c_delete
+
+instance IDeletable TH2S where
+  delete = xform0 c_th2s_delete
+
+instance IDeletable TH2Poly where
+  delete = xform0 c_th2poly_delete
+
+instance IDeletable TH2I where
+  delete = xform0 c_th2i_delete
+
+instance IDeletable TH2F where
+  delete = xform0 c_th2f_delete
+
+instance IDeletable TH2D where
+  delete = xform0 c_th2d_delete
+
+instance IDeletable TH2C where
+  delete = xform0 c_th2c_delete
+
+instance IDeletable TH1S where
+  delete = xform0 c_th1s_delete
+
+instance IDeletable TH1I where
+  delete = xform0 c_th1i_delete
+
+instance IDeletable TH1F where
+  delete = xform0 c_th1f_delete
+
+instance IDeletable TH1D where
+  delete = xform0 c_th1d_delete
+
+instance IDeletable TH1C where
+  delete = xform0 c_th1c_delete
+
+instance IDeletable TH3 where
+  delete = xform0 c_th3_delete
+
+instance IDeletable TH2 where
+  delete = xform0 c_th2_delete
+
+instance IDeletable TH1 where
+  delete = xform0 c_th1_delete
+
+instance IDeletable TArrayS where
+  delete = xform0 c_tarrays_delete
+
+instance IDeletable TArrayL64 where
+  delete = xform0 c_tarrayl64_delete
+
+instance IDeletable TArrayL where
+  delete = xform0 c_tarrayl_delete
+
+instance IDeletable TArrayI where
+  delete = xform0 c_tarrayi_delete
+
+instance IDeletable TArrayF where
+  delete = xform0 c_tarrayf_delete
+
+instance IDeletable TArrayD where
+  delete = xform0 c_tarrayd_delete
+
+instance IDeletable TArrayC where
+  delete = xform0 c_tarrayc_delete
+
+instance IDeletable TArray where
+  delete = xform0 c_tarray_delete
+
+instance IDeletable TTreePlayer where
+  delete = xform0 c_ttreeplayer_delete
+
+instance IDeletable TVirtualTreePlayer where
+  delete = xform0 c_tvirtualtreeplayer_delete
+
+instance IDeletable TBranch where
+  delete = xform0 c_tbranch_delete
+
+instance IDeletable TFile where
+  delete = xform0 c_tfile_delete
+
+instance IDeletable TDirectoryFile where
+  delete = xform0 c_tdirectoryfile_delete
+
+instance IDeletable TDirectory where
+  delete = xform0 c_tdirectory_delete
+
+instance IDeletable TText where
+  delete = xform0 c_ttext_delete
+
+instance IDeletable TLatex where
+  delete = xform0 c_tlatex_delete
+
+instance IDeletable TAxis where
+  delete = xform0 c_taxis_delete
+
+instance IDeletable TEfficiency where
+  delete = xform0 c_tefficiency_delete
+
+instance IDeletable TCurlyArc where
+  delete = xform0 c_tcurlyarc_delete
+
+instance IDeletable TCurlyLine where
+  delete = xform0 c_tcurlyline_delete
+
+instance IDeletable TPolyLine where
+  delete = xform0 c_tpolyline_delete
+
+instance IDeletable TTreeSQL where
+  delete = xform0 c_ttreesql_delete
+
+instance IDeletable TNtupleD where
+  delete = xform0 c_tntupled_delete
+
+instance IDeletable TNtuple where
+  delete = xform0 c_tntuple_delete
+
+instance IDeletable TChain where
+  delete = xform0 c_tchain_delete
+
+instance IDeletable TTree where
+  delete = xform0 c_ttree_delete
+
+instance IDeletable TSliderBox where
+  delete = xform0 c_tsliderbox_delete
+
+instance IDeletable TFrame where
+  delete = xform0 c_tframe_delete
+
+instance IDeletable TWbox where
+  delete = xform0 c_twbox_delete
+
+instance IDeletable TPaveClass where
+  delete = xform0 c_tpaveclass_delete
+
+instance IDeletable TPaveLabel where
+  delete = xform0 c_tpavelabel_delete
+
+instance IDeletable TLegendEntry where
+  delete = xform0 c_tlegendentry_delete
+
+instance IDeletable TLegend where
+  delete = xform0 c_tlegend_delete
+
+instance IDeletable TPavesText where
+  delete = xform0 c_tpavestext_delete
+
+instance IDeletable TPaveStats where
+  delete = xform0 c_tpavestats_delete
+
+instance IDeletable TDiamond where
+  delete = xform0 c_tdiamond_delete
+
+instance IDeletable TPaveText where
+  delete = xform0 c_tpavetext_delete
+
+instance IDeletable TPave where
+  delete = xform0 c_tpave_delete
+
+instance IDeletable TBox where
+  delete = xform0 c_tbox_delete
+
+instance IDeletable TXTRU where
+  delete = xform0 c_txtru_delete
+
+instance IDeletable TSPHE where
+  delete = xform0 c_tsphe_delete
+
+instance IDeletable TPCON where
+  delete = xform0 c_tpcon_delete
+
+instance IDeletable TTUBE where
+  delete = xform0 c_ttube_delete
+
+instance IDeletable TBRIK where
+  delete = xform0 c_tbrik_delete
+
+instance IDeletable TShape where
+  delete = xform0 c_tshape_delete
+
+instance IDeletable TGaxis where
+  delete = xform0 c_tgaxis_delete
+
+instance IDeletable TArrow where
+  delete = xform0 c_tarrow_delete
+
+instance IDeletable TLine where
+  delete = xform0 c_tline_delete
+
+instance IDeletable TCrown where
+  delete = xform0 c_tcrown_delete
+
+instance IDeletable TArc where
+  delete = xform0 c_tarc_delete
+
+instance IDeletable TEllipse where
+  delete = xform0 c_tellipse_delete
+
+instance IDeletable TGraphQQ where
+  delete = xform0 c_tgraphqq_delete
+
+instance IDeletable TGraphPolar where
+  delete = xform0 c_tgraphpolar_delete
+
+instance IDeletable TGraphErrors where
+  delete = xform0 c_tgrapherrors_delete
+
+instance IDeletable TGraphBentErrors where
+  delete = xform0 c_tgraphbenterrors_delete
+
+instance IDeletable TCutG where
+  delete = xform0 c_tcutg_delete
+
+instance IDeletable TGraphAsymmErrors where
+  delete = xform0 c_tgraphasymmerrors_delete
+
+instance IDeletable TGraph where
+  delete = xform0 c_tgraph_delete
+
+instance IDeletable TF1 where
+  delete = xform0 c_tf1_delete
+
+instance IDeletable THStack where
+  delete = xform0 c_thstack_delete
+
+instance IDeletable TAttText where
+  delete = xform0 c_tatttext_delete
+
+instance IDeletable TAttParticle where
+  delete = xform0 c_tattparticle_delete
+
+instance IDeletable TAttPad where
+  delete = xform0 c_tattpad_delete
+
+instance IDeletable TAttMarker where
+  delete = xform0 c_tattmarker_delete
+
+instance IDeletable TAttLine where
+  delete = xform0 c_tattline_delete
+
+instance IDeletable TAttImage where
+  delete = xform0 c_tattimage_delete
+
+instance IDeletable TAttFill where
+  delete = xform0 c_tattfill_delete
+
+instance IDeletable TAttCanvas where
+  delete = xform0 c_tattcanvas_delete
+
+instance IDeletable TAttBBox where
+  delete = xform0 c_tattbbox_delete
+
+instance IDeletable TAttAxis where
+  delete = xform0 c_tattaxis_delete
+
+instance IDeletable TAtt3D where
+  delete = xform0 c_tatt3d_delete
+
+instance IDeletable TFormula where
+  delete = xform0 c_tformula_delete
+
+instance IDeletable TClass where
+  delete = xform0 c_tclass_delete
+
+
+
+instance IDeletable TNamed where
+  delete = xform0 c_tnamed_delete
+
+instance IDeletable TObject where
+  delete = xform0 c_tobject_delete
+
+instance ITApplication TRint where
+  run = xform1 c_trint_run
+
+instance ITArray TH3S where
+
+instance ITArray TH3I where
+
+instance ITArray TH3F where
+
+instance ITArray TH3D where
+
+instance ITArray TH3C where
+
+instance ITArray TH2S where
+
+instance ITArray TH2I where
+
+instance ITArray TH2F where
+
+instance ITArray TH2D where
+
+instance ITArray TH2C where
+
+instance ITArray TH1S where
+
+instance ITArray TH1I where
+
+instance ITArray TH1F where
+
+instance ITArray TH1D where
+
+instance ITArray TH1C where
+
+instance ITArray TArrayS where
+
+instance ITArray TArrayL64 where
+
+instance ITArray TArrayL where
+
+instance ITArray TArrayI where
+
+instance ITArray TArrayF where
+
+instance ITArray TArrayD where
+
+instance ITArray TArrayC where
+
+instance ITArrayC TH3C where
+
+instance ITArrayC TH2C where
+
+instance ITArrayC TH1C where
+
+instance ITArrayD TH3D where
+
+instance ITArrayD TH2D where
+
+instance ITArrayD TH1D where
+
+instance ITArrayF TH3F where
+
+instance ITArrayF TH2F where
+
+instance ITArrayF TH1F where
+
+instance ITArrayI TH3I where
+
+instance ITArrayI TH2I where
+
+instance ITArrayI TH1I where
+
+instance ITArrayS TH3S where
+
+instance ITArrayS TH2S where
+
+instance ITArrayS TH1S where
+
+instance ITAtt3D TH3S where
+
+instance ITAtt3D TH3I where
+
+instance ITAtt3D TH3F where
+
+instance ITAtt3D TH3D where
+
+instance ITAtt3D TH3C where
+
+instance ITAtt3D TH3 where
+
+instance ITAtt3D TXTRU where
+
+instance ITAtt3D TSPHE where
+
+instance ITAtt3D TPCON where
+
+instance ITAtt3D TTUBE where
+
+instance ITAtt3D TBRIK where
+
+instance ITAtt3D TShape where
+
+instance ITAttAxis TAxis where
+  getNdivisions = xform0 c_taxis_getndivisions
+  getAxisColor = xform0 c_taxis_getaxiscolor
+  getLabelColor = xform0 c_taxis_getlabelcolor
+  getLabelFont = xform0 c_taxis_getlabelfont
+  getLabelOffset = xform0 c_taxis_getlabeloffset
+  getLabelSize = xform0 c_taxis_getlabelsize
+  getTitleOffset = xform0 c_taxis_gettitleoffset
+  getTitleSize = xform0 c_taxis_gettitlesize
+  getTickLength = xform0 c_taxis_getticklength
+  getTitleFont = xform0 c_taxis_gettitlefont
+  setNdivisions = xform2 c_taxis_setndivisions
+  setAxisColor = xform1 c_taxis_setaxiscolor
+  setLabelColor = xform1 c_taxis_setlabelcolor
+  setLabelFont = xform1 c_taxis_setlabelfont
+  setLabelOffset = xform1 c_taxis_setlabeloffset
+  setLabelSize = xform1 c_taxis_setlabelsize
+  setTickLength = xform1 c_taxis_setticklength
+  setTitleOffset = xform1 c_taxis_settitleoffset
+  setTitleSize = xform1 c_taxis_settitlesize
+  setTitleColor = xform1 c_taxis_settitlecolor
+  setTitleFont = xform1 c_taxis_settitlefont
+
+instance ITAttFill TSlider where
+  setFillColor = xform1 c_tslider_setfillcolor
+  setFillStyle = xform1 c_tslider_setfillstyle
+
+instance ITAttFill TEvePad where
+  setFillColor = xform1 c_tevepad_setfillcolor
+  setFillStyle = xform1 c_tevepad_setfillstyle
+
+instance ITAttFill TInspectCanvas where
+  setFillColor = xform1 c_tinspectcanvas_setfillcolor
+  setFillStyle = xform1 c_tinspectcanvas_setfillstyle
+
+instance ITAttFill TDialogCanvas where
+  setFillColor = xform1 c_tdialogcanvas_setfillcolor
+  setFillStyle = xform1 c_tdialogcanvas_setfillstyle
+
+instance ITAttFill TCanvas where
+  setFillColor = xform1 c_tcanvas_setfillcolor
+  setFillStyle = xform1 c_tcanvas_setfillstyle
+
+instance ITAttFill TGroupButton where
+  setFillColor = xform1 c_tgroupbutton_setfillcolor
+  setFillStyle = xform1 c_tgroupbutton_setfillstyle
+
+instance ITAttFill TButton where
+  setFillColor = xform1 c_tbutton_setfillcolor
+  setFillStyle = xform1 c_tbutton_setfillstyle
+
+instance ITAttFill TPad where
+  setFillColor = xform1 c_tpad_setfillcolor
+  setFillStyle = xform1 c_tpad_setfillstyle
+
+instance ITAttFill TVirtualPad where
+  setFillColor = xform1 c_tvirtualpad_setfillcolor
+  setFillStyle = xform1 c_tvirtualpad_setfillstyle
+
+instance ITAttFill TH3S where
+  setFillColor = xform1 c_th3s_setfillcolor
+  setFillStyle = xform1 c_th3s_setfillstyle
+
+instance ITAttFill TH3I where
+  setFillColor = xform1 c_th3i_setfillcolor
+  setFillStyle = xform1 c_th3i_setfillstyle
+
+instance ITAttFill TH3F where
+  setFillColor = xform1 c_th3f_setfillcolor
+  setFillStyle = xform1 c_th3f_setfillstyle
+
+instance ITAttFill TH3D where
+  setFillColor = xform1 c_th3d_setfillcolor
+  setFillStyle = xform1 c_th3d_setfillstyle
+
+instance ITAttFill TH3C where
+  setFillColor = xform1 c_th3c_setfillcolor
+  setFillStyle = xform1 c_th3c_setfillstyle
+
+instance ITAttFill TH2S where
+  setFillColor = xform1 c_th2s_setfillcolor
+  setFillStyle = xform1 c_th2s_setfillstyle
+
+instance ITAttFill TH2Poly where
+  setFillColor = xform1 c_th2poly_setfillcolor
+  setFillStyle = xform1 c_th2poly_setfillstyle
+
+instance ITAttFill TH2I where
+  setFillColor = xform1 c_th2i_setfillcolor
+  setFillStyle = xform1 c_th2i_setfillstyle
+
+instance ITAttFill TH2F where
+  setFillColor = xform1 c_th2f_setfillcolor
+  setFillStyle = xform1 c_th2f_setfillstyle
+
+instance ITAttFill TH2D where
+  setFillColor = xform1 c_th2d_setfillcolor
+  setFillStyle = xform1 c_th2d_setfillstyle
+
+instance ITAttFill TH2C where
+  setFillColor = xform1 c_th2c_setfillcolor
+  setFillStyle = xform1 c_th2c_setfillstyle
+
+instance ITAttFill TH1S where
+  setFillColor = xform1 c_th1s_setfillcolor
+  setFillStyle = xform1 c_th1s_setfillstyle
+
+instance ITAttFill TH1I where
+  setFillColor = xform1 c_th1i_setfillcolor
+  setFillStyle = xform1 c_th1i_setfillstyle
+
+instance ITAttFill TH1F where
+  setFillColor = xform1 c_th1f_setfillcolor
+  setFillStyle = xform1 c_th1f_setfillstyle
+
+instance ITAttFill TH1D where
+  setFillColor = xform1 c_th1d_setfillcolor
+  setFillStyle = xform1 c_th1d_setfillstyle
+
+instance ITAttFill TH1C where
+  setFillColor = xform1 c_th1c_setfillcolor
+  setFillStyle = xform1 c_th1c_setfillstyle
+
+instance ITAttFill TH3 where
+  setFillColor = xform1 c_th3_setfillcolor
+  setFillStyle = xform1 c_th3_setfillstyle
+
+instance ITAttFill TH2 where
+  setFillColor = xform1 c_th2_setfillcolor
+  setFillStyle = xform1 c_th2_setfillstyle
+
+instance ITAttFill TH1 where
+  setFillColor = xform1 c_th1_setfillcolor
+  setFillStyle = xform1 c_th1_setfillstyle
+
+instance ITAttFill TBranch where
+  setFillColor = xform1 c_tbranch_setfillcolor
+  setFillStyle = xform1 c_tbranch_setfillstyle
+
+instance ITAttFill TEfficiency where
+  setFillColor = xform1 c_tefficiency_setfillcolor
+  setFillStyle = xform1 c_tefficiency_setfillstyle
+
+instance ITAttFill TCurlyArc where
+  setFillColor = xform1 c_tcurlyarc_setfillcolor
+  setFillStyle = xform1 c_tcurlyarc_setfillstyle
+
+instance ITAttFill TCurlyLine where
+  setFillColor = xform1 c_tcurlyline_setfillcolor
+  setFillStyle = xform1 c_tcurlyline_setfillstyle
+
+instance ITAttFill TPolyLine where
+  setFillColor = xform1 c_tpolyline_setfillcolor
+  setFillStyle = xform1 c_tpolyline_setfillstyle
+
+instance ITAttFill TTreeSQL where
+  setFillColor = xform1 c_ttreesql_setfillcolor
+  setFillStyle = xform1 c_ttreesql_setfillstyle
+
+instance ITAttFill TNtupleD where
+  setFillColor = xform1 c_tntupled_setfillcolor
+  setFillStyle = xform1 c_tntupled_setfillstyle
+
+instance ITAttFill TNtuple where
+  setFillColor = xform1 c_tntuple_setfillcolor
+  setFillStyle = xform1 c_tntuple_setfillstyle
+
+instance ITAttFill TChain where
+  setFillColor = xform1 c_tchain_setfillcolor
+  setFillStyle = xform1 c_tchain_setfillstyle
+
+instance ITAttFill TTree where
+  setFillColor = xform1 c_ttree_setfillcolor
+  setFillStyle = xform1 c_ttree_setfillstyle
+
+instance ITAttFill TSliderBox where
+  setFillColor = xform1 c_tsliderbox_setfillcolor
+  setFillStyle = xform1 c_tsliderbox_setfillstyle
+
+instance ITAttFill TFrame where
+  setFillColor = xform1 c_tframe_setfillcolor
+  setFillStyle = xform1 c_tframe_setfillstyle
+
+instance ITAttFill TWbox where
+  setFillColor = xform1 c_twbox_setfillcolor
+  setFillStyle = xform1 c_twbox_setfillstyle
+
+instance ITAttFill TPaveClass where
+  setFillColor = xform1 c_tpaveclass_setfillcolor
+  setFillStyle = xform1 c_tpaveclass_setfillstyle
+
+instance ITAttFill TPaveLabel where
+  setFillColor = xform1 c_tpavelabel_setfillcolor
+  setFillStyle = xform1 c_tpavelabel_setfillstyle
+
+instance ITAttFill TLegendEntry where
+  setFillColor = xform1 c_tlegendentry_setfillcolor
+  setFillStyle = xform1 c_tlegendentry_setfillstyle
+
+instance ITAttFill TLegend where
+  setFillColor = xform1 c_tlegend_setfillcolor
+  setFillStyle = xform1 c_tlegend_setfillstyle
+
+instance ITAttFill TPavesText where
+  setFillColor = xform1 c_tpavestext_setfillcolor
+  setFillStyle = xform1 c_tpavestext_setfillstyle
+
+instance ITAttFill TPaveStats where
+  setFillColor = xform1 c_tpavestats_setfillcolor
+  setFillStyle = xform1 c_tpavestats_setfillstyle
+
+instance ITAttFill TDiamond where
+  setFillColor = xform1 c_tdiamond_setfillcolor
+  setFillStyle = xform1 c_tdiamond_setfillstyle
+
+instance ITAttFill TPaveText where
+  setFillColor = xform1 c_tpavetext_setfillcolor
+  setFillStyle = xform1 c_tpavetext_setfillstyle
+
+instance ITAttFill TPave where
+  setFillColor = xform1 c_tpave_setfillcolor
+  setFillStyle = xform1 c_tpave_setfillstyle
+
+instance ITAttFill TBox where
+  setFillColor = xform1 c_tbox_setfillcolor
+  setFillStyle = xform1 c_tbox_setfillstyle
+
+instance ITAttFill TXTRU where
+  setFillColor = xform1 c_txtru_setfillcolor
+  setFillStyle = xform1 c_txtru_setfillstyle
+
+instance ITAttFill TSPHE where
+  setFillColor = xform1 c_tsphe_setfillcolor
+  setFillStyle = xform1 c_tsphe_setfillstyle
+
+instance ITAttFill TPCON where
+  setFillColor = xform1 c_tpcon_setfillcolor
+  setFillStyle = xform1 c_tpcon_setfillstyle
+
+instance ITAttFill TTUBE where
+  setFillColor = xform1 c_ttube_setfillcolor
+  setFillStyle = xform1 c_ttube_setfillstyle
+
+instance ITAttFill TBRIK where
+  setFillColor = xform1 c_tbrik_setfillcolor
+  setFillStyle = xform1 c_tbrik_setfillstyle
+
+instance ITAttFill TShape where
+  setFillColor = xform1 c_tshape_setfillcolor
+  setFillStyle = xform1 c_tshape_setfillstyle
+
+instance ITAttFill TArrow where
+  setFillColor = xform1 c_tarrow_setfillcolor
+  setFillStyle = xform1 c_tarrow_setfillstyle
+
+instance ITAttFill TCrown where
+  setFillColor = xform1 c_tcrown_setfillcolor
+  setFillStyle = xform1 c_tcrown_setfillstyle
+
+instance ITAttFill TArc where
+  setFillColor = xform1 c_tarc_setfillcolor
+  setFillStyle = xform1 c_tarc_setfillstyle
+
+instance ITAttFill TEllipse where
+  setFillColor = xform1 c_tellipse_setfillcolor
+  setFillStyle = xform1 c_tellipse_setfillstyle
+
+instance ITAttFill TGraphQQ where
+  setFillColor = xform1 c_tgraphqq_setfillcolor
+  setFillStyle = xform1 c_tgraphqq_setfillstyle
+
+instance ITAttFill TGraphPolar where
+  setFillColor = xform1 c_tgraphpolar_setfillcolor
+  setFillStyle = xform1 c_tgraphpolar_setfillstyle
+
+instance ITAttFill TGraphErrors where
+  setFillColor = xform1 c_tgrapherrors_setfillcolor
+  setFillStyle = xform1 c_tgrapherrors_setfillstyle
+
+instance ITAttFill TGraphBentErrors where
+  setFillColor = xform1 c_tgraphbenterrors_setfillcolor
+  setFillStyle = xform1 c_tgraphbenterrors_setfillstyle
+
+instance ITAttFill TCutG where
+  setFillColor = xform1 c_tcutg_setfillcolor
+  setFillStyle = xform1 c_tcutg_setfillstyle
+
+instance ITAttFill TGraphAsymmErrors where
+  setFillColor = xform1 c_tgraphasymmerrors_setfillcolor
+  setFillStyle = xform1 c_tgraphasymmerrors_setfillstyle
+
+instance ITAttFill TGraph where
+  setFillColor = xform1 c_tgraph_setfillcolor
+  setFillStyle = xform1 c_tgraph_setfillstyle
+
+instance ITAttFill TF1 where
+  setFillColor = xform1 c_tf1_setfillcolor
+  setFillStyle = xform1 c_tf1_setfillstyle
+
+instance ITAttLine TSlider where
+  setLineColor = xform1 c_tslider_setlinecolor
+
+instance ITAttLine TEvePad where
+  setLineColor = xform1 c_tevepad_setlinecolor
+
+instance ITAttLine TInspectCanvas where
+  setLineColor = xform1 c_tinspectcanvas_setlinecolor
+
+instance ITAttLine TDialogCanvas where
+  setLineColor = xform1 c_tdialogcanvas_setlinecolor
+
+instance ITAttLine TCanvas where
+  setLineColor = xform1 c_tcanvas_setlinecolor
+
+instance ITAttLine TGroupButton where
+  setLineColor = xform1 c_tgroupbutton_setlinecolor
+
+instance ITAttLine TButton where
+  setLineColor = xform1 c_tbutton_setlinecolor
+
+instance ITAttLine TPad where
+  setLineColor = xform1 c_tpad_setlinecolor
+
+instance ITAttLine TVirtualPad where
+  setLineColor = xform1 c_tvirtualpad_setlinecolor
+
+instance ITAttLine TH3S where
+  setLineColor = xform1 c_th3s_setlinecolor
+
+instance ITAttLine TH3I where
+  setLineColor = xform1 c_th3i_setlinecolor
+
+instance ITAttLine TH3F where
+  setLineColor = xform1 c_th3f_setlinecolor
+
+instance ITAttLine TH3D where
+  setLineColor = xform1 c_th3d_setlinecolor
+
+instance ITAttLine TH3C where
+  setLineColor = xform1 c_th3c_setlinecolor
+
+instance ITAttLine TH2S where
+  setLineColor = xform1 c_th2s_setlinecolor
+
+instance ITAttLine TH2Poly where
+  setLineColor = xform1 c_th2poly_setlinecolor
+
+instance ITAttLine TH2I where
+  setLineColor = xform1 c_th2i_setlinecolor
+
+instance ITAttLine TH2F where
+  setLineColor = xform1 c_th2f_setlinecolor
+
+instance ITAttLine TH2D where
+  setLineColor = xform1 c_th2d_setlinecolor
+
+instance ITAttLine TH2C where
+  setLineColor = xform1 c_th2c_setlinecolor
+
+instance ITAttLine TH1S where
+  setLineColor = xform1 c_th1s_setlinecolor
+
+instance ITAttLine TH1I where
+  setLineColor = xform1 c_th1i_setlinecolor
+
+instance ITAttLine TH1F where
+  setLineColor = xform1 c_th1f_setlinecolor
+
+instance ITAttLine TH1D where
+  setLineColor = xform1 c_th1d_setlinecolor
+
+instance ITAttLine TH1C where
+  setLineColor = xform1 c_th1c_setlinecolor
+
+instance ITAttLine TH3 where
+  setLineColor = xform1 c_th3_setlinecolor
+
+instance ITAttLine TH2 where
+  setLineColor = xform1 c_th2_setlinecolor
+
+instance ITAttLine TH1 where
+  setLineColor = xform1 c_th1_setlinecolor
+
+instance ITAttLine TLatex where
+  setLineColor = xform1 c_tlatex_setlinecolor
+
+instance ITAttLine TEfficiency where
+  setLineColor = xform1 c_tefficiency_setlinecolor
+
+instance ITAttLine TCurlyArc where
+  setLineColor = xform1 c_tcurlyarc_setlinecolor
+
+instance ITAttLine TCurlyLine where
+  setLineColor = xform1 c_tcurlyline_setlinecolor
+
+instance ITAttLine TPolyLine where
+  setLineColor = xform1 c_tpolyline_setlinecolor
+
+instance ITAttLine TTreeSQL where
+  setLineColor = xform1 c_ttreesql_setlinecolor
+
+instance ITAttLine TNtupleD where
+  setLineColor = xform1 c_tntupled_setlinecolor
+
+instance ITAttLine TNtuple where
+  setLineColor = xform1 c_tntuple_setlinecolor
+
+instance ITAttLine TChain where
+  setLineColor = xform1 c_tchain_setlinecolor
+
+instance ITAttLine TTree where
+  setLineColor = xform1 c_ttree_setlinecolor
+
+instance ITAttLine TSliderBox where
+  setLineColor = xform1 c_tsliderbox_setlinecolor
+
+instance ITAttLine TFrame where
+  setLineColor = xform1 c_tframe_setlinecolor
+
+instance ITAttLine TWbox where
+  setLineColor = xform1 c_twbox_setlinecolor
+
+instance ITAttLine TPaveClass where
+  setLineColor = xform1 c_tpaveclass_setlinecolor
+
+instance ITAttLine TPaveLabel where
+  setLineColor = xform1 c_tpavelabel_setlinecolor
+
+instance ITAttLine TLegendEntry where
+  setLineColor = xform1 c_tlegendentry_setlinecolor
+
+instance ITAttLine TLegend where
+  setLineColor = xform1 c_tlegend_setlinecolor
+
+instance ITAttLine TPavesText where
+  setLineColor = xform1 c_tpavestext_setlinecolor
+
+instance ITAttLine TPaveStats where
+  setLineColor = xform1 c_tpavestats_setlinecolor
+
+instance ITAttLine TDiamond where
+  setLineColor = xform1 c_tdiamond_setlinecolor
+
+instance ITAttLine TPaveText where
+  setLineColor = xform1 c_tpavetext_setlinecolor
+
+instance ITAttLine TPave where
+  setLineColor = xform1 c_tpave_setlinecolor
+
+instance ITAttLine TBox where
+  setLineColor = xform1 c_tbox_setlinecolor
+
+instance ITAttLine TXTRU where
+  setLineColor = xform1 c_txtru_setlinecolor
+
+instance ITAttLine TSPHE where
+  setLineColor = xform1 c_tsphe_setlinecolor
+
+instance ITAttLine TPCON where
+  setLineColor = xform1 c_tpcon_setlinecolor
+
+instance ITAttLine TTUBE where
+  setLineColor = xform1 c_ttube_setlinecolor
+
+instance ITAttLine TBRIK where
+  setLineColor = xform1 c_tbrik_setlinecolor
+
+instance ITAttLine TShape where
+  setLineColor = xform1 c_tshape_setlinecolor
+
+instance ITAttLine TGaxis where
+  setLineColor = xform1 c_tgaxis_setlinecolor
+
+instance ITAttLine TArrow where
+  setLineColor = xform1 c_tarrow_setlinecolor
+
+instance ITAttLine TLine where
+  setLineColor = xform1 c_tline_setlinecolor
+
+instance ITAttLine TCrown where
+  setLineColor = xform1 c_tcrown_setlinecolor
+
+instance ITAttLine TArc where
+  setLineColor = xform1 c_tarc_setlinecolor
+
+instance ITAttLine TEllipse where
+  setLineColor = xform1 c_tellipse_setlinecolor
+
+instance ITAttLine TGraphQQ where
+  setLineColor = xform1 c_tgraphqq_setlinecolor
+
+instance ITAttLine TGraphPolar where
+  setLineColor = xform1 c_tgraphpolar_setlinecolor
+
+instance ITAttLine TGraphErrors where
+  setLineColor = xform1 c_tgrapherrors_setlinecolor
+
+instance ITAttLine TGraphBentErrors where
+  setLineColor = xform1 c_tgraphbenterrors_setlinecolor
+
+instance ITAttLine TCutG where
+  setLineColor = xform1 c_tcutg_setlinecolor
+
+instance ITAttLine TGraphAsymmErrors where
+  setLineColor = xform1 c_tgraphasymmerrors_setlinecolor
+
+instance ITAttLine TGraph where
+  setLineColor = xform1 c_tgraph_setlinecolor
+
+instance ITAttLine TF1 where
+  setLineColor = xform1 c_tf1_setlinecolor
+
+instance ITAttMarker TH3S where
+
+instance ITAttMarker TH3I where
+
+instance ITAttMarker TH3F where
+
+instance ITAttMarker TH3D where
+
+instance ITAttMarker TH3C where
+
+instance ITAttMarker TH2S where
+
+instance ITAttMarker TH2Poly where
+
+instance ITAttMarker TH2I where
+
+instance ITAttMarker TH2F where
+
+instance ITAttMarker TH2D where
+
+instance ITAttMarker TH2C where
+
+instance ITAttMarker TH1S where
+
+instance ITAttMarker TH1I where
+
+instance ITAttMarker TH1F where
+
+instance ITAttMarker TH1D where
+
+instance ITAttMarker TH1C where
+
+instance ITAttMarker TH3 where
+
+instance ITAttMarker TH2 where
+
+instance ITAttMarker TH1 where
+
+instance ITAttMarker TEfficiency where
+
+instance ITAttMarker TTreeSQL where
+
+instance ITAttMarker TNtupleD where
+
+instance ITAttMarker TNtuple where
+
+instance ITAttMarker TChain where
+
+instance ITAttMarker TTree where
+
+instance ITAttMarker TLegendEntry where
+
+instance ITAttMarker TGraphQQ where
+
+instance ITAttMarker TGraphPolar where
+
+instance ITAttMarker TGraphErrors where
+
+instance ITAttMarker TGraphBentErrors where
+
+instance ITAttMarker TCutG where
+
+instance ITAttMarker TGraphAsymmErrors where
+
+instance ITAttMarker TGraph where
+
+instance ITAttPad TSlider where
+
+instance ITAttPad TEvePad where
+
+instance ITAttPad TInspectCanvas where
+
+instance ITAttPad TDialogCanvas where
+
+instance ITAttPad TCanvas where
+
+instance ITAttPad TGroupButton where
+
+instance ITAttPad TButton where
+
+instance ITAttPad TPad where
+
+instance ITAttPad TVirtualPad where
+
+instance ITAttText TInspectCanvas where
+  setTextColor = xform1 c_tinspectcanvas_settextcolor
+  setTextAlign = xform1 c_tinspectcanvas_settextalign
+  setTextSize = xform1 c_tinspectcanvas_settextsize
+
+instance ITAttText TDialogCanvas where
+  setTextColor = xform1 c_tdialogcanvas_settextcolor
+  setTextAlign = xform1 c_tdialogcanvas_settextalign
+  setTextSize = xform1 c_tdialogcanvas_settextsize
+
+instance ITAttText TGroupButton where
+  setTextColor = xform1 c_tgroupbutton_settextcolor
+  setTextAlign = xform1 c_tgroupbutton_settextalign
+  setTextSize = xform1 c_tgroupbutton_settextsize
+
+instance ITAttText TButton where
+  setTextColor = xform1 c_tbutton_settextcolor
+  setTextAlign = xform1 c_tbutton_settextalign
+  setTextSize = xform1 c_tbutton_settextsize
+
+instance ITAttText TText where
+  setTextColor = xform1 c_ttext_settextcolor
+  setTextAlign = xform1 c_ttext_settextalign
+  setTextSize = xform1 c_ttext_settextsize
+
+instance ITAttText TLatex where
+  setTextColor = xform1 c_tlatex_settextcolor
+  setTextAlign = xform1 c_tlatex_settextalign
+  setTextSize = xform1 c_tlatex_settextsize
+
+instance ITAttText TPaveClass where
+  setTextColor = xform1 c_tpaveclass_settextcolor
+  setTextAlign = xform1 c_tpaveclass_settextalign
+  setTextSize = xform1 c_tpaveclass_settextsize
+
+instance ITAttText TPaveLabel where
+  setTextColor = xform1 c_tpavelabel_settextcolor
+  setTextAlign = xform1 c_tpavelabel_settextalign
+  setTextSize = xform1 c_tpavelabel_settextsize
+
+instance ITAttText TLegendEntry where
+  setTextColor = xform1 c_tlegendentry_settextcolor
+  setTextAlign = xform1 c_tlegendentry_settextalign
+  setTextSize = xform1 c_tlegendentry_settextsize
+
+instance ITAttText TLegend where
+  setTextColor = xform1 c_tlegend_settextcolor
+  setTextAlign = xform1 c_tlegend_settextalign
+  setTextSize = xform1 c_tlegend_settextsize
+
+instance ITAttText TPavesText where
+  setTextColor = xform1 c_tpavestext_settextcolor
+  setTextAlign = xform1 c_tpavestext_settextalign
+  setTextSize = xform1 c_tpavestext_settextsize
+
+instance ITAttText TPaveStats where
+  setTextColor = xform1 c_tpavestats_settextcolor
+  setTextAlign = xform1 c_tpavestats_settextalign
+  setTextSize = xform1 c_tpavestats_settextsize
+
+instance ITAttText TDiamond where
+  setTextColor = xform1 c_tdiamond_settextcolor
+  setTextAlign = xform1 c_tdiamond_settextalign
+  setTextSize = xform1 c_tdiamond_settextsize
+
+instance ITAttText TPaveText where
+  setTextColor = xform1 c_tpavetext_settextcolor
+  setTextAlign = xform1 c_tpavetext_settextalign
+  setTextSize = xform1 c_tpavetext_settextsize
+
+instance ITAttText TGaxis where
+  setTextColor = xform1 c_tgaxis_settextcolor
+  setTextAlign = xform1 c_tgaxis_settextalign
+  setTextSize = xform1 c_tgaxis_settextsize
+
+instance ITBox TSliderBox where
+
+instance ITBox TFrame where
+
+instance ITBox TWbox where
+
+instance ITBox TPaveClass where
+
+instance ITBox TPaveLabel where
+
+instance ITBox TLegend where
+
+instance ITBox TPavesText where
+
+instance ITBox TPaveStats where
+
+instance ITBox TDiamond where
+
+instance ITBox TPaveText where
+
+instance ITBox TPave where
+
+instance ITButton TGroupButton where
+
+instance ITCanvas TInspectCanvas where
+
+instance ITCanvas TDialogCanvas where
+
+instance ITCollection TList where
+
+instance ITCollection TObjArray where
+
+instance ITCollection TSeqCollection where
+
+instance ITCurlyLine TCurlyArc where
+
+instance ITDictionary TClass where
+
+instance ITDirectory TFile where
+  append = xform2 c_tfile_append
+  addD = xform2 c_tfile_addd
+  appendKey = xform1 c_tfile_appendkey
+  close = xform1 c_tfile_close
+  get = xform1 c_tfile_get
+
+instance ITDirectory TDirectoryFile where
+  append = xform2 c_tdirectoryfile_append
+  addD = xform2 c_tdirectoryfile_addd
+  appendKey = xform1 c_tdirectoryfile_appendkey
+  close = xform1 c_tdirectoryfile_close
+  get = xform1 c_tdirectoryfile_get
+
+instance ITDirectoryFile TFile where
+  getListOfKeys = xform0 c_tfile_getlistofkeys
+
+instance ITEllipse TCrown where
+
+instance ITEllipse TArc where
+
+instance ITFormula TF1 where
+  getParameter = xform1 c_tf1_getparameter
+  setParameter = xform2 c_tf1_setparameter
+
+instance ITGraph TGraphQQ where
+
+instance ITGraph TGraphPolar where
+
+instance ITGraph TGraphErrors where
+
+instance ITGraph TGraphBentErrors where
+
+instance ITGraph TCutG where
+
+instance ITGraph TGraphAsymmErrors where
+
+instance ITGraphErrors TGraphPolar where
+
+instance ITH1 TH3S where
+  add = xform2 c_th3s_add
+  addBinContent = xform2 c_th3s_addbincontent
+  chi2Test = xform3 c_th3s_chi2test
+  computeIntegral = xform0 c_th3s_computeintegral
+  directoryAutoAdd = xform1 c_th3s_directoryautoadd
+  distancetoPrimitive = xform2 c_th3s_distancetoprimitive
+  divide = xform5 c_th3s_divide
+  drawCopy = xform1 c_th3s_drawcopy
+  drawNormalized = xform2 c_th3s_drawnormalized
+  drawPanel = xform0 c_th3s_drawpanel
+  bufferEmpty = xform1 c_th3s_bufferempty
+  eval = xform2 c_th3s_eval
+  executeEvent = xform3 c_th3s_executeevent
+  fFT = xform2 c_th3s_fft
+  fill1 = xform1 c_th3s_fill1
+  fillN = xform4 c_th3s_filln
+  fillRandom = xform2 c_th3s_fillrandom
+  findBin = xform3 c_th3s_findbin
+  findFixBin = xform3 c_th3s_findfixbin
+  findFirstBinAbove = xform2 c_th3s_findfirstbinabove
+  findLastBinAbove = xform2 c_th3s_findlastbinabove
+  fitPanel = xform0 c_th3s_fitpanel
+  getNdivisionA = xform1 c_th3s_getndivisiona
+  getAxisColorA = xform1 c_th3s_getaxiscolora
+  getLabelColorA = xform1 c_th3s_getlabelcolora
+  getLabelFontA = xform1 c_th3s_getlabelfonta
+  getLabelOffsetA = xform1 c_th3s_getlabeloffseta
+  getLabelSizeA = xform1 c_th3s_getlabelsizea
+  getTitleFontA = xform1 c_th3s_gettitlefonta
+  getTitleOffsetA = xform1 c_th3s_gettitleoffseta
+  getTitleSizeA = xform1 c_th3s_gettitlesizea
+  getTickLengthA = xform1 c_th3s_getticklengtha
+  getBarOffset = xform0 c_th3s_getbaroffset
+  getBarWidth = xform0 c_th3s_getbarwidth
+  getContour = xform1 c_th3s_getcontour
+  getContourLevel = xform1 c_th3s_getcontourlevel
+  getContourLevelPad = xform1 c_th3s_getcontourlevelpad
+  getBin = xform3 c_th3s_getbin
+  getBinCenter = xform1 c_th3s_getbincenter
+  getBinContent1 = xform1 c_th3s_getbincontent1
+  getBinContent2 = xform2 c_th3s_getbincontent2
+  getBinContent3 = xform3 c_th3s_getbincontent3
+  getBinError1 = xform1 c_th3s_getbinerror1
+  getBinError2 = xform2 c_th3s_getbinerror2
+  getBinError3 = xform3 c_th3s_getbinerror3
+  getBinLowEdge = xform1 c_th3s_getbinlowedge
+  getBinWidth = xform1 c_th3s_getbinwidth
+  getCellContent = xform2 c_th3s_getcellcontent
+  getCellError = xform2 c_th3s_getcellerror
+  getEntries = xform0 c_th3s_getentries
+  getEffectiveEntries = xform0 c_th3s_geteffectiveentries
+  getFunction = xform1 c_th3s_getfunction
+  getDimension = xform0 c_th3s_getdimension
+  getKurtosis = xform1 c_th3s_getkurtosis
+  getLowEdge = xform1 c_th3s_getlowedge
+  getMaximum = xform1 c_th3s_getmaximum
+  getMaximumBin = xform0 c_th3s_getmaximumbin
+  getMaximumStored = xform0 c_th3s_getmaximumstored
+  getMinimum = xform1 c_th3s_getminimum
+  getMinimumBin = xform0 c_th3s_getminimumbin
+  getMinimumStored = xform0 c_th3s_getminimumstored
+  getMean = xform1 c_th3s_getmean
+  getMeanError = xform1 c_th3s_getmeanerror
+  getNbinsX = xform0 c_th3s_getnbinsx
+  getNbinsY = xform0 c_th3s_getnbinsy
+  getNbinsZ = xform0 c_th3s_getnbinsz
+  getQuantiles = xform3 c_th3s_getquantiles
+  getRandom = xform0 c_th3s_getrandom
+  getStats = xform1 c_th3s_getstats
+  getSumOfWeights = xform0 c_th3s_getsumofweights
+  getSumw2 = xform0 c_th3s_getsumw2
+  getSumw2N = xform0 c_th3s_getsumw2n
+  getRMS = xform1 c_th3s_getrms
+  getRMSError = xform1 c_th3s_getrmserror
+  getSkewness = xform1 c_th3s_getskewness
+  integral1 = xform3 c_th3s_integral1
+  interpolate1 = xform1 c_th3s_interpolate1
+  interpolate2 = xform2 c_th3s_interpolate2
+  interpolate3 = xform3 c_th3s_interpolate3
+  kolmogorovTest = xform2 c_th3s_kolmogorovtest
+  labelsDeflate = xform1 c_th3s_labelsdeflate
+  labelsInflate = xform1 c_th3s_labelsinflate
+  labelsOption = xform2 c_th3s_labelsoption
+  multiflyF = xform2 c_th3s_multiflyf
+  multiply = xform5 c_th3s_multiply
+  paint = xform0 c_th3s_paint
+  putStats = xform1 c_th3s_putstats
+  rebin = xform3 c_th3s_rebin
+  rebinAxis = xform2 c_th3s_rebinaxis
+  rebuild = xform1 c_th3s_rebuild
+  recursiveRemove = xform1 c_th3s_recursiveremove
+  reset = xform1 c_th3s_reset
+  resetStats = xform0 c_th3s_resetstats
+  scale = xform2 c_th3s_scale
+  setAxisColorA = xform2 c_th3s_setaxiscolora
+  setAxisRange = xform3 c_th3s_setaxisrange
+  setBarOffset = xform1 c_th3s_setbaroffset
+  setBarWidth = xform1 c_th3s_setbarwidth
+  setBinContent1 = xform2 c_th3s_setbincontent1
+  setBinContent2 = xform3 c_th3s_setbincontent2
+  setBinContent3 = xform4 c_th3s_setbincontent3
+  setBinError1 = xform2 c_th3s_setbinerror1
+  setBinError2 = xform3 c_th3s_setbinerror2
+  setBinError3 = xform4 c_th3s_setbinerror3
+  setBins1 = xform2 c_th3s_setbins1
+  setBins2 = xform4 c_th3s_setbins2
+  setBins3 = xform6 c_th3s_setbins3
+  setBinsLength = xform1 c_th3s_setbinslength
+  setBuffer = xform2 c_th3s_setbuffer
+  setCellContent = xform3 c_th3s_setcellcontent
+  setContent = xform1 c_th3s_setcontent
+  setContour = xform2 c_th3s_setcontour
+  setContourLevel = xform2 c_th3s_setcontourlevel
+  setDirectory = xform1 c_th3s_setdirectory
+  setEntries = xform1 c_th3s_setentries
+  setError = xform1 c_th3s_seterror
+  setLabelColorA = xform2 c_th3s_setlabelcolora
+  setLabelSizeA = xform2 c_th3s_setlabelsizea
+  setLabelFontA = xform2 c_th3s_setlabelfonta
+  setLabelOffsetA = xform2 c_th3s_setlabeloffseta
+  setMaximum = xform1 c_th3s_setmaximum
+  setMinimum = xform1 c_th3s_setminimum
+  setNormFactor = xform1 c_th3s_setnormfactor
+  setStats = xform1 c_th3s_setstats
+  setOption = xform1 c_th3s_setoption
+  setXTitle = xform1 c_th3s_setxtitle
+  setYTitle = xform1 c_th3s_setytitle
+  setZTitle = xform1 c_th3s_setztitle
+  showBackground = xform2 c_th3s_showbackground
+  showPeaks = xform3 c_th3s_showpeaks
+  smooth = xform2 c_th3s_smooth
+  sumw2 = xform0 c_th3s_sumw2
+
+instance ITH1 TH3I where
+  add = xform2 c_th3i_add
+  addBinContent = xform2 c_th3i_addbincontent
+  chi2Test = xform3 c_th3i_chi2test
+  computeIntegral = xform0 c_th3i_computeintegral
+  directoryAutoAdd = xform1 c_th3i_directoryautoadd
+  distancetoPrimitive = xform2 c_th3i_distancetoprimitive
+  divide = xform5 c_th3i_divide
+  drawCopy = xform1 c_th3i_drawcopy
+  drawNormalized = xform2 c_th3i_drawnormalized
+  drawPanel = xform0 c_th3i_drawpanel
+  bufferEmpty = xform1 c_th3i_bufferempty
+  eval = xform2 c_th3i_eval
+  executeEvent = xform3 c_th3i_executeevent
+  fFT = xform2 c_th3i_fft
+  fill1 = xform1 c_th3i_fill1
+  fillN = xform4 c_th3i_filln
+  fillRandom = xform2 c_th3i_fillrandom
+  findBin = xform3 c_th3i_findbin
+  findFixBin = xform3 c_th3i_findfixbin
+  findFirstBinAbove = xform2 c_th3i_findfirstbinabove
+  findLastBinAbove = xform2 c_th3i_findlastbinabove
+  fitPanel = xform0 c_th3i_fitpanel
+  getNdivisionA = xform1 c_th3i_getndivisiona
+  getAxisColorA = xform1 c_th3i_getaxiscolora
+  getLabelColorA = xform1 c_th3i_getlabelcolora
+  getLabelFontA = xform1 c_th3i_getlabelfonta
+  getLabelOffsetA = xform1 c_th3i_getlabeloffseta
+  getLabelSizeA = xform1 c_th3i_getlabelsizea
+  getTitleFontA = xform1 c_th3i_gettitlefonta
+  getTitleOffsetA = xform1 c_th3i_gettitleoffseta
+  getTitleSizeA = xform1 c_th3i_gettitlesizea
+  getTickLengthA = xform1 c_th3i_getticklengtha
+  getBarOffset = xform0 c_th3i_getbaroffset
+  getBarWidth = xform0 c_th3i_getbarwidth
+  getContour = xform1 c_th3i_getcontour
+  getContourLevel = xform1 c_th3i_getcontourlevel
+  getContourLevelPad = xform1 c_th3i_getcontourlevelpad
+  getBin = xform3 c_th3i_getbin
+  getBinCenter = xform1 c_th3i_getbincenter
+  getBinContent1 = xform1 c_th3i_getbincontent1
+  getBinContent2 = xform2 c_th3i_getbincontent2
+  getBinContent3 = xform3 c_th3i_getbincontent3
+  getBinError1 = xform1 c_th3i_getbinerror1
+  getBinError2 = xform2 c_th3i_getbinerror2
+  getBinError3 = xform3 c_th3i_getbinerror3
+  getBinLowEdge = xform1 c_th3i_getbinlowedge
+  getBinWidth = xform1 c_th3i_getbinwidth
+  getCellContent = xform2 c_th3i_getcellcontent
+  getCellError = xform2 c_th3i_getcellerror
+  getEntries = xform0 c_th3i_getentries
+  getEffectiveEntries = xform0 c_th3i_geteffectiveentries
+  getFunction = xform1 c_th3i_getfunction
+  getDimension = xform0 c_th3i_getdimension
+  getKurtosis = xform1 c_th3i_getkurtosis
+  getLowEdge = xform1 c_th3i_getlowedge
+  getMaximum = xform1 c_th3i_getmaximum
+  getMaximumBin = xform0 c_th3i_getmaximumbin
+  getMaximumStored = xform0 c_th3i_getmaximumstored
+  getMinimum = xform1 c_th3i_getminimum
+  getMinimumBin = xform0 c_th3i_getminimumbin
+  getMinimumStored = xform0 c_th3i_getminimumstored
+  getMean = xform1 c_th3i_getmean
+  getMeanError = xform1 c_th3i_getmeanerror
+  getNbinsX = xform0 c_th3i_getnbinsx
+  getNbinsY = xform0 c_th3i_getnbinsy
+  getNbinsZ = xform0 c_th3i_getnbinsz
+  getQuantiles = xform3 c_th3i_getquantiles
+  getRandom = xform0 c_th3i_getrandom
+  getStats = xform1 c_th3i_getstats
+  getSumOfWeights = xform0 c_th3i_getsumofweights
+  getSumw2 = xform0 c_th3i_getsumw2
+  getSumw2N = xform0 c_th3i_getsumw2n
+  getRMS = xform1 c_th3i_getrms
+  getRMSError = xform1 c_th3i_getrmserror
+  getSkewness = xform1 c_th3i_getskewness
+  integral1 = xform3 c_th3i_integral1
+  interpolate1 = xform1 c_th3i_interpolate1
+  interpolate2 = xform2 c_th3i_interpolate2
+  interpolate3 = xform3 c_th3i_interpolate3
+  kolmogorovTest = xform2 c_th3i_kolmogorovtest
+  labelsDeflate = xform1 c_th3i_labelsdeflate
+  labelsInflate = xform1 c_th3i_labelsinflate
+  labelsOption = xform2 c_th3i_labelsoption
+  multiflyF = xform2 c_th3i_multiflyf
+  multiply = xform5 c_th3i_multiply
+  paint = xform0 c_th3i_paint
+  putStats = xform1 c_th3i_putstats
+  rebin = xform3 c_th3i_rebin
+  rebinAxis = xform2 c_th3i_rebinaxis
+  rebuild = xform1 c_th3i_rebuild
+  recursiveRemove = xform1 c_th3i_recursiveremove
+  reset = xform1 c_th3i_reset
+  resetStats = xform0 c_th3i_resetstats
+  scale = xform2 c_th3i_scale
+  setAxisColorA = xform2 c_th3i_setaxiscolora
+  setAxisRange = xform3 c_th3i_setaxisrange
+  setBarOffset = xform1 c_th3i_setbaroffset
+  setBarWidth = xform1 c_th3i_setbarwidth
+  setBinContent1 = xform2 c_th3i_setbincontent1
+  setBinContent2 = xform3 c_th3i_setbincontent2
+  setBinContent3 = xform4 c_th3i_setbincontent3
+  setBinError1 = xform2 c_th3i_setbinerror1
+  setBinError2 = xform3 c_th3i_setbinerror2
+  setBinError3 = xform4 c_th3i_setbinerror3
+  setBins1 = xform2 c_th3i_setbins1
+  setBins2 = xform4 c_th3i_setbins2
+  setBins3 = xform6 c_th3i_setbins3
+  setBinsLength = xform1 c_th3i_setbinslength
+  setBuffer = xform2 c_th3i_setbuffer
+  setCellContent = xform3 c_th3i_setcellcontent
+  setContent = xform1 c_th3i_setcontent
+  setContour = xform2 c_th3i_setcontour
+  setContourLevel = xform2 c_th3i_setcontourlevel
+  setDirectory = xform1 c_th3i_setdirectory
+  setEntries = xform1 c_th3i_setentries
+  setError = xform1 c_th3i_seterror
+  setLabelColorA = xform2 c_th3i_setlabelcolora
+  setLabelSizeA = xform2 c_th3i_setlabelsizea
+  setLabelFontA = xform2 c_th3i_setlabelfonta
+  setLabelOffsetA = xform2 c_th3i_setlabeloffseta
+  setMaximum = xform1 c_th3i_setmaximum
+  setMinimum = xform1 c_th3i_setminimum
+  setNormFactor = xform1 c_th3i_setnormfactor
+  setStats = xform1 c_th3i_setstats
+  setOption = xform1 c_th3i_setoption
+  setXTitle = xform1 c_th3i_setxtitle
+  setYTitle = xform1 c_th3i_setytitle
+  setZTitle = xform1 c_th3i_setztitle
+  showBackground = xform2 c_th3i_showbackground
+  showPeaks = xform3 c_th3i_showpeaks
+  smooth = xform2 c_th3i_smooth
+  sumw2 = xform0 c_th3i_sumw2
+
+instance ITH1 TH3F where
+  add = xform2 c_th3f_add
+  addBinContent = xform2 c_th3f_addbincontent
+  chi2Test = xform3 c_th3f_chi2test
+  computeIntegral = xform0 c_th3f_computeintegral
+  directoryAutoAdd = xform1 c_th3f_directoryautoadd
+  distancetoPrimitive = xform2 c_th3f_distancetoprimitive
+  divide = xform5 c_th3f_divide
+  drawCopy = xform1 c_th3f_drawcopy
+  drawNormalized = xform2 c_th3f_drawnormalized
+  drawPanel = xform0 c_th3f_drawpanel
+  bufferEmpty = xform1 c_th3f_bufferempty
+  eval = xform2 c_th3f_eval
+  executeEvent = xform3 c_th3f_executeevent
+  fFT = xform2 c_th3f_fft
+  fill1 = xform1 c_th3f_fill1
+  fillN = xform4 c_th3f_filln
+  fillRandom = xform2 c_th3f_fillrandom
+  findBin = xform3 c_th3f_findbin
+  findFixBin = xform3 c_th3f_findfixbin
+  findFirstBinAbove = xform2 c_th3f_findfirstbinabove
+  findLastBinAbove = xform2 c_th3f_findlastbinabove
+  fitPanel = xform0 c_th3f_fitpanel
+  getNdivisionA = xform1 c_th3f_getndivisiona
+  getAxisColorA = xform1 c_th3f_getaxiscolora
+  getLabelColorA = xform1 c_th3f_getlabelcolora
+  getLabelFontA = xform1 c_th3f_getlabelfonta
+  getLabelOffsetA = xform1 c_th3f_getlabeloffseta
+  getLabelSizeA = xform1 c_th3f_getlabelsizea
+  getTitleFontA = xform1 c_th3f_gettitlefonta
+  getTitleOffsetA = xform1 c_th3f_gettitleoffseta
+  getTitleSizeA = xform1 c_th3f_gettitlesizea
+  getTickLengthA = xform1 c_th3f_getticklengtha
+  getBarOffset = xform0 c_th3f_getbaroffset
+  getBarWidth = xform0 c_th3f_getbarwidth
+  getContour = xform1 c_th3f_getcontour
+  getContourLevel = xform1 c_th3f_getcontourlevel
+  getContourLevelPad = xform1 c_th3f_getcontourlevelpad
+  getBin = xform3 c_th3f_getbin
+  getBinCenter = xform1 c_th3f_getbincenter
+  getBinContent1 = xform1 c_th3f_getbincontent1
+  getBinContent2 = xform2 c_th3f_getbincontent2
+  getBinContent3 = xform3 c_th3f_getbincontent3
+  getBinError1 = xform1 c_th3f_getbinerror1
+  getBinError2 = xform2 c_th3f_getbinerror2
+  getBinError3 = xform3 c_th3f_getbinerror3
+  getBinLowEdge = xform1 c_th3f_getbinlowedge
+  getBinWidth = xform1 c_th3f_getbinwidth
+  getCellContent = xform2 c_th3f_getcellcontent
+  getCellError = xform2 c_th3f_getcellerror
+  getEntries = xform0 c_th3f_getentries
+  getEffectiveEntries = xform0 c_th3f_geteffectiveentries
+  getFunction = xform1 c_th3f_getfunction
+  getDimension = xform0 c_th3f_getdimension
+  getKurtosis = xform1 c_th3f_getkurtosis
+  getLowEdge = xform1 c_th3f_getlowedge
+  getMaximum = xform1 c_th3f_getmaximum
+  getMaximumBin = xform0 c_th3f_getmaximumbin
+  getMaximumStored = xform0 c_th3f_getmaximumstored
+  getMinimum = xform1 c_th3f_getminimum
+  getMinimumBin = xform0 c_th3f_getminimumbin
+  getMinimumStored = xform0 c_th3f_getminimumstored
+  getMean = xform1 c_th3f_getmean
+  getMeanError = xform1 c_th3f_getmeanerror
+  getNbinsX = xform0 c_th3f_getnbinsx
+  getNbinsY = xform0 c_th3f_getnbinsy
+  getNbinsZ = xform0 c_th3f_getnbinsz
+  getQuantiles = xform3 c_th3f_getquantiles
+  getRandom = xform0 c_th3f_getrandom
+  getStats = xform1 c_th3f_getstats
+  getSumOfWeights = xform0 c_th3f_getsumofweights
+  getSumw2 = xform0 c_th3f_getsumw2
+  getSumw2N = xform0 c_th3f_getsumw2n
+  getRMS = xform1 c_th3f_getrms
+  getRMSError = xform1 c_th3f_getrmserror
+  getSkewness = xform1 c_th3f_getskewness
+  integral1 = xform3 c_th3f_integral1
+  interpolate1 = xform1 c_th3f_interpolate1
+  interpolate2 = xform2 c_th3f_interpolate2
+  interpolate3 = xform3 c_th3f_interpolate3
+  kolmogorovTest = xform2 c_th3f_kolmogorovtest
+  labelsDeflate = xform1 c_th3f_labelsdeflate
+  labelsInflate = xform1 c_th3f_labelsinflate
+  labelsOption = xform2 c_th3f_labelsoption
+  multiflyF = xform2 c_th3f_multiflyf
+  multiply = xform5 c_th3f_multiply
+  paint = xform0 c_th3f_paint
+  putStats = xform1 c_th3f_putstats
+  rebin = xform3 c_th3f_rebin
+  rebinAxis = xform2 c_th3f_rebinaxis
+  rebuild = xform1 c_th3f_rebuild
+  recursiveRemove = xform1 c_th3f_recursiveremove
+  reset = xform1 c_th3f_reset
+  resetStats = xform0 c_th3f_resetstats
+  scale = xform2 c_th3f_scale
+  setAxisColorA = xform2 c_th3f_setaxiscolora
+  setAxisRange = xform3 c_th3f_setaxisrange
+  setBarOffset = xform1 c_th3f_setbaroffset
+  setBarWidth = xform1 c_th3f_setbarwidth
+  setBinContent1 = xform2 c_th3f_setbincontent1
+  setBinContent2 = xform3 c_th3f_setbincontent2
+  setBinContent3 = xform4 c_th3f_setbincontent3
+  setBinError1 = xform2 c_th3f_setbinerror1
+  setBinError2 = xform3 c_th3f_setbinerror2
+  setBinError3 = xform4 c_th3f_setbinerror3
+  setBins1 = xform2 c_th3f_setbins1
+  setBins2 = xform4 c_th3f_setbins2
+  setBins3 = xform6 c_th3f_setbins3
+  setBinsLength = xform1 c_th3f_setbinslength
+  setBuffer = xform2 c_th3f_setbuffer
+  setCellContent = xform3 c_th3f_setcellcontent
+  setContent = xform1 c_th3f_setcontent
+  setContour = xform2 c_th3f_setcontour
+  setContourLevel = xform2 c_th3f_setcontourlevel
+  setDirectory = xform1 c_th3f_setdirectory
+  setEntries = xform1 c_th3f_setentries
+  setError = xform1 c_th3f_seterror
+  setLabelColorA = xform2 c_th3f_setlabelcolora
+  setLabelSizeA = xform2 c_th3f_setlabelsizea
+  setLabelFontA = xform2 c_th3f_setlabelfonta
+  setLabelOffsetA = xform2 c_th3f_setlabeloffseta
+  setMaximum = xform1 c_th3f_setmaximum
+  setMinimum = xform1 c_th3f_setminimum
+  setNormFactor = xform1 c_th3f_setnormfactor
+  setStats = xform1 c_th3f_setstats
+  setOption = xform1 c_th3f_setoption
+  setXTitle = xform1 c_th3f_setxtitle
+  setYTitle = xform1 c_th3f_setytitle
+  setZTitle = xform1 c_th3f_setztitle
+  showBackground = xform2 c_th3f_showbackground
+  showPeaks = xform3 c_th3f_showpeaks
+  smooth = xform2 c_th3f_smooth
+  sumw2 = xform0 c_th3f_sumw2
+
+instance ITH1 TH3D where
+  add = xform2 c_th3d_add
+  addBinContent = xform2 c_th3d_addbincontent
+  chi2Test = xform3 c_th3d_chi2test
+  computeIntegral = xform0 c_th3d_computeintegral
+  directoryAutoAdd = xform1 c_th3d_directoryautoadd
+  distancetoPrimitive = xform2 c_th3d_distancetoprimitive
+  divide = xform5 c_th3d_divide
+  drawCopy = xform1 c_th3d_drawcopy
+  drawNormalized = xform2 c_th3d_drawnormalized
+  drawPanel = xform0 c_th3d_drawpanel
+  bufferEmpty = xform1 c_th3d_bufferempty
+  eval = xform2 c_th3d_eval
+  executeEvent = xform3 c_th3d_executeevent
+  fFT = xform2 c_th3d_fft
+  fill1 = xform1 c_th3d_fill1
+  fillN = xform4 c_th3d_filln
+  fillRandom = xform2 c_th3d_fillrandom
+  findBin = xform3 c_th3d_findbin
+  findFixBin = xform3 c_th3d_findfixbin
+  findFirstBinAbove = xform2 c_th3d_findfirstbinabove
+  findLastBinAbove = xform2 c_th3d_findlastbinabove
+  fitPanel = xform0 c_th3d_fitpanel
+  getNdivisionA = xform1 c_th3d_getndivisiona
+  getAxisColorA = xform1 c_th3d_getaxiscolora
+  getLabelColorA = xform1 c_th3d_getlabelcolora
+  getLabelFontA = xform1 c_th3d_getlabelfonta
+  getLabelOffsetA = xform1 c_th3d_getlabeloffseta
+  getLabelSizeA = xform1 c_th3d_getlabelsizea
+  getTitleFontA = xform1 c_th3d_gettitlefonta
+  getTitleOffsetA = xform1 c_th3d_gettitleoffseta
+  getTitleSizeA = xform1 c_th3d_gettitlesizea
+  getTickLengthA = xform1 c_th3d_getticklengtha
+  getBarOffset = xform0 c_th3d_getbaroffset
+  getBarWidth = xform0 c_th3d_getbarwidth
+  getContour = xform1 c_th3d_getcontour
+  getContourLevel = xform1 c_th3d_getcontourlevel
+  getContourLevelPad = xform1 c_th3d_getcontourlevelpad
+  getBin = xform3 c_th3d_getbin
+  getBinCenter = xform1 c_th3d_getbincenter
+  getBinContent1 = xform1 c_th3d_getbincontent1
+  getBinContent2 = xform2 c_th3d_getbincontent2
+  getBinContent3 = xform3 c_th3d_getbincontent3
+  getBinError1 = xform1 c_th3d_getbinerror1
+  getBinError2 = xform2 c_th3d_getbinerror2
+  getBinError3 = xform3 c_th3d_getbinerror3
+  getBinLowEdge = xform1 c_th3d_getbinlowedge
+  getBinWidth = xform1 c_th3d_getbinwidth
+  getCellContent = xform2 c_th3d_getcellcontent
+  getCellError = xform2 c_th3d_getcellerror
+  getEntries = xform0 c_th3d_getentries
+  getEffectiveEntries = xform0 c_th3d_geteffectiveentries
+  getFunction = xform1 c_th3d_getfunction
+  getDimension = xform0 c_th3d_getdimension
+  getKurtosis = xform1 c_th3d_getkurtosis
+  getLowEdge = xform1 c_th3d_getlowedge
+  getMaximum = xform1 c_th3d_getmaximum
+  getMaximumBin = xform0 c_th3d_getmaximumbin
+  getMaximumStored = xform0 c_th3d_getmaximumstored
+  getMinimum = xform1 c_th3d_getminimum
+  getMinimumBin = xform0 c_th3d_getminimumbin
+  getMinimumStored = xform0 c_th3d_getminimumstored
+  getMean = xform1 c_th3d_getmean
+  getMeanError = xform1 c_th3d_getmeanerror
+  getNbinsX = xform0 c_th3d_getnbinsx
+  getNbinsY = xform0 c_th3d_getnbinsy
+  getNbinsZ = xform0 c_th3d_getnbinsz
+  getQuantiles = xform3 c_th3d_getquantiles
+  getRandom = xform0 c_th3d_getrandom
+  getStats = xform1 c_th3d_getstats
+  getSumOfWeights = xform0 c_th3d_getsumofweights
+  getSumw2 = xform0 c_th3d_getsumw2
+  getSumw2N = xform0 c_th3d_getsumw2n
+  getRMS = xform1 c_th3d_getrms
+  getRMSError = xform1 c_th3d_getrmserror
+  getSkewness = xform1 c_th3d_getskewness
+  integral1 = xform3 c_th3d_integral1
+  interpolate1 = xform1 c_th3d_interpolate1
+  interpolate2 = xform2 c_th3d_interpolate2
+  interpolate3 = xform3 c_th3d_interpolate3
+  kolmogorovTest = xform2 c_th3d_kolmogorovtest
+  labelsDeflate = xform1 c_th3d_labelsdeflate
+  labelsInflate = xform1 c_th3d_labelsinflate
+  labelsOption = xform2 c_th3d_labelsoption
+  multiflyF = xform2 c_th3d_multiflyf
+  multiply = xform5 c_th3d_multiply
+  paint = xform0 c_th3d_paint
+  putStats = xform1 c_th3d_putstats
+  rebin = xform3 c_th3d_rebin
+  rebinAxis = xform2 c_th3d_rebinaxis
+  rebuild = xform1 c_th3d_rebuild
+  recursiveRemove = xform1 c_th3d_recursiveremove
+  reset = xform1 c_th3d_reset
+  resetStats = xform0 c_th3d_resetstats
+  scale = xform2 c_th3d_scale
+  setAxisColorA = xform2 c_th3d_setaxiscolora
+  setAxisRange = xform3 c_th3d_setaxisrange
+  setBarOffset = xform1 c_th3d_setbaroffset
+  setBarWidth = xform1 c_th3d_setbarwidth
+  setBinContent1 = xform2 c_th3d_setbincontent1
+  setBinContent2 = xform3 c_th3d_setbincontent2
+  setBinContent3 = xform4 c_th3d_setbincontent3
+  setBinError1 = xform2 c_th3d_setbinerror1
+  setBinError2 = xform3 c_th3d_setbinerror2
+  setBinError3 = xform4 c_th3d_setbinerror3
+  setBins1 = xform2 c_th3d_setbins1
+  setBins2 = xform4 c_th3d_setbins2
+  setBins3 = xform6 c_th3d_setbins3
+  setBinsLength = xform1 c_th3d_setbinslength
+  setBuffer = xform2 c_th3d_setbuffer
+  setCellContent = xform3 c_th3d_setcellcontent
+  setContent = xform1 c_th3d_setcontent
+  setContour = xform2 c_th3d_setcontour
+  setContourLevel = xform2 c_th3d_setcontourlevel
+  setDirectory = xform1 c_th3d_setdirectory
+  setEntries = xform1 c_th3d_setentries
+  setError = xform1 c_th3d_seterror
+  setLabelColorA = xform2 c_th3d_setlabelcolora
+  setLabelSizeA = xform2 c_th3d_setlabelsizea
+  setLabelFontA = xform2 c_th3d_setlabelfonta
+  setLabelOffsetA = xform2 c_th3d_setlabeloffseta
+  setMaximum = xform1 c_th3d_setmaximum
+  setMinimum = xform1 c_th3d_setminimum
+  setNormFactor = xform1 c_th3d_setnormfactor
+  setStats = xform1 c_th3d_setstats
+  setOption = xform1 c_th3d_setoption
+  setXTitle = xform1 c_th3d_setxtitle
+  setYTitle = xform1 c_th3d_setytitle
+  setZTitle = xform1 c_th3d_setztitle
+  showBackground = xform2 c_th3d_showbackground
+  showPeaks = xform3 c_th3d_showpeaks
+  smooth = xform2 c_th3d_smooth
+  sumw2 = xform0 c_th3d_sumw2
+
+instance ITH1 TH3C where
+  add = xform2 c_th3c_add
+  addBinContent = xform2 c_th3c_addbincontent
+  chi2Test = xform3 c_th3c_chi2test
+  computeIntegral = xform0 c_th3c_computeintegral
+  directoryAutoAdd = xform1 c_th3c_directoryautoadd
+  distancetoPrimitive = xform2 c_th3c_distancetoprimitive
+  divide = xform5 c_th3c_divide
+  drawCopy = xform1 c_th3c_drawcopy
+  drawNormalized = xform2 c_th3c_drawnormalized
+  drawPanel = xform0 c_th3c_drawpanel
+  bufferEmpty = xform1 c_th3c_bufferempty
+  eval = xform2 c_th3c_eval
+  executeEvent = xform3 c_th3c_executeevent
+  fFT = xform2 c_th3c_fft
+  fill1 = xform1 c_th3c_fill1
+  fillN = xform4 c_th3c_filln
+  fillRandom = xform2 c_th3c_fillrandom
+  findBin = xform3 c_th3c_findbin
+  findFixBin = xform3 c_th3c_findfixbin
+  findFirstBinAbove = xform2 c_th3c_findfirstbinabove
+  findLastBinAbove = xform2 c_th3c_findlastbinabove
+  fitPanel = xform0 c_th3c_fitpanel
+  getNdivisionA = xform1 c_th3c_getndivisiona
+  getAxisColorA = xform1 c_th3c_getaxiscolora
+  getLabelColorA = xform1 c_th3c_getlabelcolora
+  getLabelFontA = xform1 c_th3c_getlabelfonta
+  getLabelOffsetA = xform1 c_th3c_getlabeloffseta
+  getLabelSizeA = xform1 c_th3c_getlabelsizea
+  getTitleFontA = xform1 c_th3c_gettitlefonta
+  getTitleOffsetA = xform1 c_th3c_gettitleoffseta
+  getTitleSizeA = xform1 c_th3c_gettitlesizea
+  getTickLengthA = xform1 c_th3c_getticklengtha
+  getBarOffset = xform0 c_th3c_getbaroffset
+  getBarWidth = xform0 c_th3c_getbarwidth
+  getContour = xform1 c_th3c_getcontour
+  getContourLevel = xform1 c_th3c_getcontourlevel
+  getContourLevelPad = xform1 c_th3c_getcontourlevelpad
+  getBin = xform3 c_th3c_getbin
+  getBinCenter = xform1 c_th3c_getbincenter
+  getBinContent1 = xform1 c_th3c_getbincontent1
+  getBinContent2 = xform2 c_th3c_getbincontent2
+  getBinContent3 = xform3 c_th3c_getbincontent3
+  getBinError1 = xform1 c_th3c_getbinerror1
+  getBinError2 = xform2 c_th3c_getbinerror2
+  getBinError3 = xform3 c_th3c_getbinerror3
+  getBinLowEdge = xform1 c_th3c_getbinlowedge
+  getBinWidth = xform1 c_th3c_getbinwidth
+  getCellContent = xform2 c_th3c_getcellcontent
+  getCellError = xform2 c_th3c_getcellerror
+  getEntries = xform0 c_th3c_getentries
+  getEffectiveEntries = xform0 c_th3c_geteffectiveentries
+  getFunction = xform1 c_th3c_getfunction
+  getDimension = xform0 c_th3c_getdimension
+  getKurtosis = xform1 c_th3c_getkurtosis
+  getLowEdge = xform1 c_th3c_getlowedge
+  getMaximum = xform1 c_th3c_getmaximum
+  getMaximumBin = xform0 c_th3c_getmaximumbin
+  getMaximumStored = xform0 c_th3c_getmaximumstored
+  getMinimum = xform1 c_th3c_getminimum
+  getMinimumBin = xform0 c_th3c_getminimumbin
+  getMinimumStored = xform0 c_th3c_getminimumstored
+  getMean = xform1 c_th3c_getmean
+  getMeanError = xform1 c_th3c_getmeanerror
+  getNbinsX = xform0 c_th3c_getnbinsx
+  getNbinsY = xform0 c_th3c_getnbinsy
+  getNbinsZ = xform0 c_th3c_getnbinsz
+  getQuantiles = xform3 c_th3c_getquantiles
+  getRandom = xform0 c_th3c_getrandom
+  getStats = xform1 c_th3c_getstats
+  getSumOfWeights = xform0 c_th3c_getsumofweights
+  getSumw2 = xform0 c_th3c_getsumw2
+  getSumw2N = xform0 c_th3c_getsumw2n
+  getRMS = xform1 c_th3c_getrms
+  getRMSError = xform1 c_th3c_getrmserror
+  getSkewness = xform1 c_th3c_getskewness
+  integral1 = xform3 c_th3c_integral1
+  interpolate1 = xform1 c_th3c_interpolate1
+  interpolate2 = xform2 c_th3c_interpolate2
+  interpolate3 = xform3 c_th3c_interpolate3
+  kolmogorovTest = xform2 c_th3c_kolmogorovtest
+  labelsDeflate = xform1 c_th3c_labelsdeflate
+  labelsInflate = xform1 c_th3c_labelsinflate
+  labelsOption = xform2 c_th3c_labelsoption
+  multiflyF = xform2 c_th3c_multiflyf
+  multiply = xform5 c_th3c_multiply
+  paint = xform0 c_th3c_paint
+  putStats = xform1 c_th3c_putstats
+  rebin = xform3 c_th3c_rebin
+  rebinAxis = xform2 c_th3c_rebinaxis
+  rebuild = xform1 c_th3c_rebuild
+  recursiveRemove = xform1 c_th3c_recursiveremove
+  reset = xform1 c_th3c_reset
+  resetStats = xform0 c_th3c_resetstats
+  scale = xform2 c_th3c_scale
+  setAxisColorA = xform2 c_th3c_setaxiscolora
+  setAxisRange = xform3 c_th3c_setaxisrange
+  setBarOffset = xform1 c_th3c_setbaroffset
+  setBarWidth = xform1 c_th3c_setbarwidth
+  setBinContent1 = xform2 c_th3c_setbincontent1
+  setBinContent2 = xform3 c_th3c_setbincontent2
+  setBinContent3 = xform4 c_th3c_setbincontent3
+  setBinError1 = xform2 c_th3c_setbinerror1
+  setBinError2 = xform3 c_th3c_setbinerror2
+  setBinError3 = xform4 c_th3c_setbinerror3
+  setBins1 = xform2 c_th3c_setbins1
+  setBins2 = xform4 c_th3c_setbins2
+  setBins3 = xform6 c_th3c_setbins3
+  setBinsLength = xform1 c_th3c_setbinslength
+  setBuffer = xform2 c_th3c_setbuffer
+  setCellContent = xform3 c_th3c_setcellcontent
+  setContent = xform1 c_th3c_setcontent
+  setContour = xform2 c_th3c_setcontour
+  setContourLevel = xform2 c_th3c_setcontourlevel
+  setDirectory = xform1 c_th3c_setdirectory
+  setEntries = xform1 c_th3c_setentries
+  setError = xform1 c_th3c_seterror
+  setLabelColorA = xform2 c_th3c_setlabelcolora
+  setLabelSizeA = xform2 c_th3c_setlabelsizea
+  setLabelFontA = xform2 c_th3c_setlabelfonta
+  setLabelOffsetA = xform2 c_th3c_setlabeloffseta
+  setMaximum = xform1 c_th3c_setmaximum
+  setMinimum = xform1 c_th3c_setminimum
+  setNormFactor = xform1 c_th3c_setnormfactor
+  setStats = xform1 c_th3c_setstats
+  setOption = xform1 c_th3c_setoption
+  setXTitle = xform1 c_th3c_setxtitle
+  setYTitle = xform1 c_th3c_setytitle
+  setZTitle = xform1 c_th3c_setztitle
+  showBackground = xform2 c_th3c_showbackground
+  showPeaks = xform3 c_th3c_showpeaks
+  smooth = xform2 c_th3c_smooth
+  sumw2 = xform0 c_th3c_sumw2
+
+instance ITH1 TH2S where
+  add = xform2 c_th2s_add
+  addBinContent = xform2 c_th2s_addbincontent
+  chi2Test = xform3 c_th2s_chi2test
+  computeIntegral = xform0 c_th2s_computeintegral
+  directoryAutoAdd = xform1 c_th2s_directoryautoadd
+  distancetoPrimitive = xform2 c_th2s_distancetoprimitive
+  divide = xform5 c_th2s_divide
+  drawCopy = xform1 c_th2s_drawcopy
+  drawNormalized = xform2 c_th2s_drawnormalized
+  drawPanel = xform0 c_th2s_drawpanel
+  bufferEmpty = xform1 c_th2s_bufferempty
+  eval = xform2 c_th2s_eval
+  executeEvent = xform3 c_th2s_executeevent
+  fFT = xform2 c_th2s_fft
+  fill1 = xform1 c_th2s_fill1
+  fillN = xform4 c_th2s_filln
+  fillRandom = xform2 c_th2s_fillrandom
+  findBin = xform3 c_th2s_findbin
+  findFixBin = xform3 c_th2s_findfixbin
+  findFirstBinAbove = xform2 c_th2s_findfirstbinabove
+  findLastBinAbove = xform2 c_th2s_findlastbinabove
+  fitPanel = xform0 c_th2s_fitpanel
+  getNdivisionA = xform1 c_th2s_getndivisiona
+  getAxisColorA = xform1 c_th2s_getaxiscolora
+  getLabelColorA = xform1 c_th2s_getlabelcolora
+  getLabelFontA = xform1 c_th2s_getlabelfonta
+  getLabelOffsetA = xform1 c_th2s_getlabeloffseta
+  getLabelSizeA = xform1 c_th2s_getlabelsizea
+  getTitleFontA = xform1 c_th2s_gettitlefonta
+  getTitleOffsetA = xform1 c_th2s_gettitleoffseta
+  getTitleSizeA = xform1 c_th2s_gettitlesizea
+  getTickLengthA = xform1 c_th2s_getticklengtha
+  getBarOffset = xform0 c_th2s_getbaroffset
+  getBarWidth = xform0 c_th2s_getbarwidth
+  getContour = xform1 c_th2s_getcontour
+  getContourLevel = xform1 c_th2s_getcontourlevel
+  getContourLevelPad = xform1 c_th2s_getcontourlevelpad
+  getBin = xform3 c_th2s_getbin
+  getBinCenter = xform1 c_th2s_getbincenter
+  getBinContent1 = xform1 c_th2s_getbincontent1
+  getBinContent2 = xform2 c_th2s_getbincontent2
+  getBinContent3 = xform3 c_th2s_getbincontent3
+  getBinError1 = xform1 c_th2s_getbinerror1
+  getBinError2 = xform2 c_th2s_getbinerror2
+  getBinError3 = xform3 c_th2s_getbinerror3
+  getBinLowEdge = xform1 c_th2s_getbinlowedge
+  getBinWidth = xform1 c_th2s_getbinwidth
+  getCellContent = xform2 c_th2s_getcellcontent
+  getCellError = xform2 c_th2s_getcellerror
+  getEntries = xform0 c_th2s_getentries
+  getEffectiveEntries = xform0 c_th2s_geteffectiveentries
+  getFunction = xform1 c_th2s_getfunction
+  getDimension = xform0 c_th2s_getdimension
+  getKurtosis = xform1 c_th2s_getkurtosis
+  getLowEdge = xform1 c_th2s_getlowedge
+  getMaximum = xform1 c_th2s_getmaximum
+  getMaximumBin = xform0 c_th2s_getmaximumbin
+  getMaximumStored = xform0 c_th2s_getmaximumstored
+  getMinimum = xform1 c_th2s_getminimum
+  getMinimumBin = xform0 c_th2s_getminimumbin
+  getMinimumStored = xform0 c_th2s_getminimumstored
+  getMean = xform1 c_th2s_getmean
+  getMeanError = xform1 c_th2s_getmeanerror
+  getNbinsX = xform0 c_th2s_getnbinsx
+  getNbinsY = xform0 c_th2s_getnbinsy
+  getNbinsZ = xform0 c_th2s_getnbinsz
+  getQuantiles = xform3 c_th2s_getquantiles
+  getRandom = xform0 c_th2s_getrandom
+  getStats = xform1 c_th2s_getstats
+  getSumOfWeights = xform0 c_th2s_getsumofweights
+  getSumw2 = xform0 c_th2s_getsumw2
+  getSumw2N = xform0 c_th2s_getsumw2n
+  getRMS = xform1 c_th2s_getrms
+  getRMSError = xform1 c_th2s_getrmserror
+  getSkewness = xform1 c_th2s_getskewness
+  integral1 = xform3 c_th2s_integral1
+  interpolate1 = xform1 c_th2s_interpolate1
+  interpolate2 = xform2 c_th2s_interpolate2
+  interpolate3 = xform3 c_th2s_interpolate3
+  kolmogorovTest = xform2 c_th2s_kolmogorovtest
+  labelsDeflate = xform1 c_th2s_labelsdeflate
+  labelsInflate = xform1 c_th2s_labelsinflate
+  labelsOption = xform2 c_th2s_labelsoption
+  multiflyF = xform2 c_th2s_multiflyf
+  multiply = xform5 c_th2s_multiply
+  paint = xform0 c_th2s_paint
+  putStats = xform1 c_th2s_putstats
+  rebin = xform3 c_th2s_rebin
+  rebinAxis = xform2 c_th2s_rebinaxis
+  rebuild = xform1 c_th2s_rebuild
+  recursiveRemove = xform1 c_th2s_recursiveremove
+  reset = xform1 c_th2s_reset
+  resetStats = xform0 c_th2s_resetstats
+  scale = xform2 c_th2s_scale
+  setAxisColorA = xform2 c_th2s_setaxiscolora
+  setAxisRange = xform3 c_th2s_setaxisrange
+  setBarOffset = xform1 c_th2s_setbaroffset
+  setBarWidth = xform1 c_th2s_setbarwidth
+  setBinContent1 = xform2 c_th2s_setbincontent1
+  setBinContent2 = xform3 c_th2s_setbincontent2
+  setBinContent3 = xform4 c_th2s_setbincontent3
+  setBinError1 = xform2 c_th2s_setbinerror1
+  setBinError2 = xform3 c_th2s_setbinerror2
+  setBinError3 = xform4 c_th2s_setbinerror3
+  setBins1 = xform2 c_th2s_setbins1
+  setBins2 = xform4 c_th2s_setbins2
+  setBins3 = xform6 c_th2s_setbins3
+  setBinsLength = xform1 c_th2s_setbinslength
+  setBuffer = xform2 c_th2s_setbuffer
+  setCellContent = xform3 c_th2s_setcellcontent
+  setContent = xform1 c_th2s_setcontent
+  setContour = xform2 c_th2s_setcontour
+  setContourLevel = xform2 c_th2s_setcontourlevel
+  setDirectory = xform1 c_th2s_setdirectory
+  setEntries = xform1 c_th2s_setentries
+  setError = xform1 c_th2s_seterror
+  setLabelColorA = xform2 c_th2s_setlabelcolora
+  setLabelSizeA = xform2 c_th2s_setlabelsizea
+  setLabelFontA = xform2 c_th2s_setlabelfonta
+  setLabelOffsetA = xform2 c_th2s_setlabeloffseta
+  setMaximum = xform1 c_th2s_setmaximum
+  setMinimum = xform1 c_th2s_setminimum
+  setNormFactor = xform1 c_th2s_setnormfactor
+  setStats = xform1 c_th2s_setstats
+  setOption = xform1 c_th2s_setoption
+  setXTitle = xform1 c_th2s_setxtitle
+  setYTitle = xform1 c_th2s_setytitle
+  setZTitle = xform1 c_th2s_setztitle
+  showBackground = xform2 c_th2s_showbackground
+  showPeaks = xform3 c_th2s_showpeaks
+  smooth = xform2 c_th2s_smooth
+  sumw2 = xform0 c_th2s_sumw2
+
+instance ITH1 TH2Poly where
+  add = xform2 c_th2poly_add
+  addBinContent = xform2 c_th2poly_addbincontent
+  chi2Test = xform3 c_th2poly_chi2test
+  computeIntegral = xform0 c_th2poly_computeintegral
+  directoryAutoAdd = xform1 c_th2poly_directoryautoadd
+  distancetoPrimitive = xform2 c_th2poly_distancetoprimitive
+  divide = xform5 c_th2poly_divide
+  drawCopy = xform1 c_th2poly_drawcopy
+  drawNormalized = xform2 c_th2poly_drawnormalized
+  drawPanel = xform0 c_th2poly_drawpanel
+  bufferEmpty = xform1 c_th2poly_bufferempty
+  eval = xform2 c_th2poly_eval
+  executeEvent = xform3 c_th2poly_executeevent
+  fFT = xform2 c_th2poly_fft
+  fill1 = xform1 c_th2poly_fill1
+  fillN = xform4 c_th2poly_filln
+  fillRandom = xform2 c_th2poly_fillrandom
+  findBin = xform3 c_th2poly_findbin
+  findFixBin = xform3 c_th2poly_findfixbin
+  findFirstBinAbove = xform2 c_th2poly_findfirstbinabove
+  findLastBinAbove = xform2 c_th2poly_findlastbinabove
+  fitPanel = xform0 c_th2poly_fitpanel
+  getNdivisionA = xform1 c_th2poly_getndivisiona
+  getAxisColorA = xform1 c_th2poly_getaxiscolora
+  getLabelColorA = xform1 c_th2poly_getlabelcolora
+  getLabelFontA = xform1 c_th2poly_getlabelfonta
+  getLabelOffsetA = xform1 c_th2poly_getlabeloffseta
+  getLabelSizeA = xform1 c_th2poly_getlabelsizea
+  getTitleFontA = xform1 c_th2poly_gettitlefonta
+  getTitleOffsetA = xform1 c_th2poly_gettitleoffseta
+  getTitleSizeA = xform1 c_th2poly_gettitlesizea
+  getTickLengthA = xform1 c_th2poly_getticklengtha
+  getBarOffset = xform0 c_th2poly_getbaroffset
+  getBarWidth = xform0 c_th2poly_getbarwidth
+  getContour = xform1 c_th2poly_getcontour
+  getContourLevel = xform1 c_th2poly_getcontourlevel
+  getContourLevelPad = xform1 c_th2poly_getcontourlevelpad
+  getBin = xform3 c_th2poly_getbin
+  getBinCenter = xform1 c_th2poly_getbincenter
+  getBinContent1 = xform1 c_th2poly_getbincontent1
+  getBinContent2 = xform2 c_th2poly_getbincontent2
+  getBinContent3 = xform3 c_th2poly_getbincontent3
+  getBinError1 = xform1 c_th2poly_getbinerror1
+  getBinError2 = xform2 c_th2poly_getbinerror2
+  getBinError3 = xform3 c_th2poly_getbinerror3
+  getBinLowEdge = xform1 c_th2poly_getbinlowedge
+  getBinWidth = xform1 c_th2poly_getbinwidth
+  getCellContent = xform2 c_th2poly_getcellcontent
+  getCellError = xform2 c_th2poly_getcellerror
+  getEntries = xform0 c_th2poly_getentries
+  getEffectiveEntries = xform0 c_th2poly_geteffectiveentries
+  getFunction = xform1 c_th2poly_getfunction
+  getDimension = xform0 c_th2poly_getdimension
+  getKurtosis = xform1 c_th2poly_getkurtosis
+  getLowEdge = xform1 c_th2poly_getlowedge
+  getMaximum = xform1 c_th2poly_getmaximum
+  getMaximumBin = xform0 c_th2poly_getmaximumbin
+  getMaximumStored = xform0 c_th2poly_getmaximumstored
+  getMinimum = xform1 c_th2poly_getminimum
+  getMinimumBin = xform0 c_th2poly_getminimumbin
+  getMinimumStored = xform0 c_th2poly_getminimumstored
+  getMean = xform1 c_th2poly_getmean
+  getMeanError = xform1 c_th2poly_getmeanerror
+  getNbinsX = xform0 c_th2poly_getnbinsx
+  getNbinsY = xform0 c_th2poly_getnbinsy
+  getNbinsZ = xform0 c_th2poly_getnbinsz
+  getQuantiles = xform3 c_th2poly_getquantiles
+  getRandom = xform0 c_th2poly_getrandom
+  getStats = xform1 c_th2poly_getstats
+  getSumOfWeights = xform0 c_th2poly_getsumofweights
+  getSumw2 = xform0 c_th2poly_getsumw2
+  getSumw2N = xform0 c_th2poly_getsumw2n
+  getRMS = xform1 c_th2poly_getrms
+  getRMSError = xform1 c_th2poly_getrmserror
+  getSkewness = xform1 c_th2poly_getskewness
+  integral1 = xform3 c_th2poly_integral1
+  interpolate1 = xform1 c_th2poly_interpolate1
+  interpolate2 = xform2 c_th2poly_interpolate2
+  interpolate3 = xform3 c_th2poly_interpolate3
+  kolmogorovTest = xform2 c_th2poly_kolmogorovtest
+  labelsDeflate = xform1 c_th2poly_labelsdeflate
+  labelsInflate = xform1 c_th2poly_labelsinflate
+  labelsOption = xform2 c_th2poly_labelsoption
+  multiflyF = xform2 c_th2poly_multiflyf
+  multiply = xform5 c_th2poly_multiply
+  paint = xform0 c_th2poly_paint
+  putStats = xform1 c_th2poly_putstats
+  rebin = xform3 c_th2poly_rebin
+  rebinAxis = xform2 c_th2poly_rebinaxis
+  rebuild = xform1 c_th2poly_rebuild
+  recursiveRemove = xform1 c_th2poly_recursiveremove
+  reset = xform1 c_th2poly_reset
+  resetStats = xform0 c_th2poly_resetstats
+  scale = xform2 c_th2poly_scale
+  setAxisColorA = xform2 c_th2poly_setaxiscolora
+  setAxisRange = xform3 c_th2poly_setaxisrange
+  setBarOffset = xform1 c_th2poly_setbaroffset
+  setBarWidth = xform1 c_th2poly_setbarwidth
+  setBinContent1 = xform2 c_th2poly_setbincontent1
+  setBinContent2 = xform3 c_th2poly_setbincontent2
+  setBinContent3 = xform4 c_th2poly_setbincontent3
+  setBinError1 = xform2 c_th2poly_setbinerror1
+  setBinError2 = xform3 c_th2poly_setbinerror2
+  setBinError3 = xform4 c_th2poly_setbinerror3
+  setBins1 = xform2 c_th2poly_setbins1
+  setBins2 = xform4 c_th2poly_setbins2
+  setBins3 = xform6 c_th2poly_setbins3
+  setBinsLength = xform1 c_th2poly_setbinslength
+  setBuffer = xform2 c_th2poly_setbuffer
+  setCellContent = xform3 c_th2poly_setcellcontent
+  setContent = xform1 c_th2poly_setcontent
+  setContour = xform2 c_th2poly_setcontour
+  setContourLevel = xform2 c_th2poly_setcontourlevel
+  setDirectory = xform1 c_th2poly_setdirectory
+  setEntries = xform1 c_th2poly_setentries
+  setError = xform1 c_th2poly_seterror
+  setLabelColorA = xform2 c_th2poly_setlabelcolora
+  setLabelSizeA = xform2 c_th2poly_setlabelsizea
+  setLabelFontA = xform2 c_th2poly_setlabelfonta
+  setLabelOffsetA = xform2 c_th2poly_setlabeloffseta
+  setMaximum = xform1 c_th2poly_setmaximum
+  setMinimum = xform1 c_th2poly_setminimum
+  setNormFactor = xform1 c_th2poly_setnormfactor
+  setStats = xform1 c_th2poly_setstats
+  setOption = xform1 c_th2poly_setoption
+  setXTitle = xform1 c_th2poly_setxtitle
+  setYTitle = xform1 c_th2poly_setytitle
+  setZTitle = xform1 c_th2poly_setztitle
+  showBackground = xform2 c_th2poly_showbackground
+  showPeaks = xform3 c_th2poly_showpeaks
+  smooth = xform2 c_th2poly_smooth
+  sumw2 = xform0 c_th2poly_sumw2
+
+instance ITH1 TH2I where
+  add = xform2 c_th2i_add
+  addBinContent = xform2 c_th2i_addbincontent
+  chi2Test = xform3 c_th2i_chi2test
+  computeIntegral = xform0 c_th2i_computeintegral
+  directoryAutoAdd = xform1 c_th2i_directoryautoadd
+  distancetoPrimitive = xform2 c_th2i_distancetoprimitive
+  divide = xform5 c_th2i_divide
+  drawCopy = xform1 c_th2i_drawcopy
+  drawNormalized = xform2 c_th2i_drawnormalized
+  drawPanel = xform0 c_th2i_drawpanel
+  bufferEmpty = xform1 c_th2i_bufferempty
+  eval = xform2 c_th2i_eval
+  executeEvent = xform3 c_th2i_executeevent
+  fFT = xform2 c_th2i_fft
+  fill1 = xform1 c_th2i_fill1
+  fillN = xform4 c_th2i_filln
+  fillRandom = xform2 c_th2i_fillrandom
+  findBin = xform3 c_th2i_findbin
+  findFixBin = xform3 c_th2i_findfixbin
+  findFirstBinAbove = xform2 c_th2i_findfirstbinabove
+  findLastBinAbove = xform2 c_th2i_findlastbinabove
+  fitPanel = xform0 c_th2i_fitpanel
+  getNdivisionA = xform1 c_th2i_getndivisiona
+  getAxisColorA = xform1 c_th2i_getaxiscolora
+  getLabelColorA = xform1 c_th2i_getlabelcolora
+  getLabelFontA = xform1 c_th2i_getlabelfonta
+  getLabelOffsetA = xform1 c_th2i_getlabeloffseta
+  getLabelSizeA = xform1 c_th2i_getlabelsizea
+  getTitleFontA = xform1 c_th2i_gettitlefonta
+  getTitleOffsetA = xform1 c_th2i_gettitleoffseta
+  getTitleSizeA = xform1 c_th2i_gettitlesizea
+  getTickLengthA = xform1 c_th2i_getticklengtha
+  getBarOffset = xform0 c_th2i_getbaroffset
+  getBarWidth = xform0 c_th2i_getbarwidth
+  getContour = xform1 c_th2i_getcontour
+  getContourLevel = xform1 c_th2i_getcontourlevel
+  getContourLevelPad = xform1 c_th2i_getcontourlevelpad
+  getBin = xform3 c_th2i_getbin
+  getBinCenter = xform1 c_th2i_getbincenter
+  getBinContent1 = xform1 c_th2i_getbincontent1
+  getBinContent2 = xform2 c_th2i_getbincontent2
+  getBinContent3 = xform3 c_th2i_getbincontent3
+  getBinError1 = xform1 c_th2i_getbinerror1
+  getBinError2 = xform2 c_th2i_getbinerror2
+  getBinError3 = xform3 c_th2i_getbinerror3
+  getBinLowEdge = xform1 c_th2i_getbinlowedge
+  getBinWidth = xform1 c_th2i_getbinwidth
+  getCellContent = xform2 c_th2i_getcellcontent
+  getCellError = xform2 c_th2i_getcellerror
+  getEntries = xform0 c_th2i_getentries
+  getEffectiveEntries = xform0 c_th2i_geteffectiveentries
+  getFunction = xform1 c_th2i_getfunction
+  getDimension = xform0 c_th2i_getdimension
+  getKurtosis = xform1 c_th2i_getkurtosis
+  getLowEdge = xform1 c_th2i_getlowedge
+  getMaximum = xform1 c_th2i_getmaximum
+  getMaximumBin = xform0 c_th2i_getmaximumbin
+  getMaximumStored = xform0 c_th2i_getmaximumstored
+  getMinimum = xform1 c_th2i_getminimum
+  getMinimumBin = xform0 c_th2i_getminimumbin
+  getMinimumStored = xform0 c_th2i_getminimumstored
+  getMean = xform1 c_th2i_getmean
+  getMeanError = xform1 c_th2i_getmeanerror
+  getNbinsX = xform0 c_th2i_getnbinsx
+  getNbinsY = xform0 c_th2i_getnbinsy
+  getNbinsZ = xform0 c_th2i_getnbinsz
+  getQuantiles = xform3 c_th2i_getquantiles
+  getRandom = xform0 c_th2i_getrandom
+  getStats = xform1 c_th2i_getstats
+  getSumOfWeights = xform0 c_th2i_getsumofweights
+  getSumw2 = xform0 c_th2i_getsumw2
+  getSumw2N = xform0 c_th2i_getsumw2n
+  getRMS = xform1 c_th2i_getrms
+  getRMSError = xform1 c_th2i_getrmserror
+  getSkewness = xform1 c_th2i_getskewness
+  integral1 = xform3 c_th2i_integral1
+  interpolate1 = xform1 c_th2i_interpolate1
+  interpolate2 = xform2 c_th2i_interpolate2
+  interpolate3 = xform3 c_th2i_interpolate3
+  kolmogorovTest = xform2 c_th2i_kolmogorovtest
+  labelsDeflate = xform1 c_th2i_labelsdeflate
+  labelsInflate = xform1 c_th2i_labelsinflate
+  labelsOption = xform2 c_th2i_labelsoption
+  multiflyF = xform2 c_th2i_multiflyf
+  multiply = xform5 c_th2i_multiply
+  paint = xform0 c_th2i_paint
+  putStats = xform1 c_th2i_putstats
+  rebin = xform3 c_th2i_rebin
+  rebinAxis = xform2 c_th2i_rebinaxis
+  rebuild = xform1 c_th2i_rebuild
+  recursiveRemove = xform1 c_th2i_recursiveremove
+  reset = xform1 c_th2i_reset
+  resetStats = xform0 c_th2i_resetstats
+  scale = xform2 c_th2i_scale
+  setAxisColorA = xform2 c_th2i_setaxiscolora
+  setAxisRange = xform3 c_th2i_setaxisrange
+  setBarOffset = xform1 c_th2i_setbaroffset
+  setBarWidth = xform1 c_th2i_setbarwidth
+  setBinContent1 = xform2 c_th2i_setbincontent1
+  setBinContent2 = xform3 c_th2i_setbincontent2
+  setBinContent3 = xform4 c_th2i_setbincontent3
+  setBinError1 = xform2 c_th2i_setbinerror1
+  setBinError2 = xform3 c_th2i_setbinerror2
+  setBinError3 = xform4 c_th2i_setbinerror3
+  setBins1 = xform2 c_th2i_setbins1
+  setBins2 = xform4 c_th2i_setbins2
+  setBins3 = xform6 c_th2i_setbins3
+  setBinsLength = xform1 c_th2i_setbinslength
+  setBuffer = xform2 c_th2i_setbuffer
+  setCellContent = xform3 c_th2i_setcellcontent
+  setContent = xform1 c_th2i_setcontent
+  setContour = xform2 c_th2i_setcontour
+  setContourLevel = xform2 c_th2i_setcontourlevel
+  setDirectory = xform1 c_th2i_setdirectory
+  setEntries = xform1 c_th2i_setentries
+  setError = xform1 c_th2i_seterror
+  setLabelColorA = xform2 c_th2i_setlabelcolora
+  setLabelSizeA = xform2 c_th2i_setlabelsizea
+  setLabelFontA = xform2 c_th2i_setlabelfonta
+  setLabelOffsetA = xform2 c_th2i_setlabeloffseta
+  setMaximum = xform1 c_th2i_setmaximum
+  setMinimum = xform1 c_th2i_setminimum
+  setNormFactor = xform1 c_th2i_setnormfactor
+  setStats = xform1 c_th2i_setstats
+  setOption = xform1 c_th2i_setoption
+  setXTitle = xform1 c_th2i_setxtitle
+  setYTitle = xform1 c_th2i_setytitle
+  setZTitle = xform1 c_th2i_setztitle
+  showBackground = xform2 c_th2i_showbackground
+  showPeaks = xform3 c_th2i_showpeaks
+  smooth = xform2 c_th2i_smooth
+  sumw2 = xform0 c_th2i_sumw2
+
+instance ITH1 TH2F where
+  add = xform2 c_th2f_add
+  addBinContent = xform2 c_th2f_addbincontent
+  chi2Test = xform3 c_th2f_chi2test
+  computeIntegral = xform0 c_th2f_computeintegral
+  directoryAutoAdd = xform1 c_th2f_directoryautoadd
+  distancetoPrimitive = xform2 c_th2f_distancetoprimitive
+  divide = xform5 c_th2f_divide
+  drawCopy = xform1 c_th2f_drawcopy
+  drawNormalized = xform2 c_th2f_drawnormalized
+  drawPanel = xform0 c_th2f_drawpanel
+  bufferEmpty = xform1 c_th2f_bufferempty
+  eval = xform2 c_th2f_eval
+  executeEvent = xform3 c_th2f_executeevent
+  fFT = xform2 c_th2f_fft
+  fill1 = xform1 c_th2f_fill1
+  fillN = xform4 c_th2f_filln
+  fillRandom = xform2 c_th2f_fillrandom
+  findBin = xform3 c_th2f_findbin
+  findFixBin = xform3 c_th2f_findfixbin
+  findFirstBinAbove = xform2 c_th2f_findfirstbinabove
+  findLastBinAbove = xform2 c_th2f_findlastbinabove
+  fitPanel = xform0 c_th2f_fitpanel
+  getNdivisionA = xform1 c_th2f_getndivisiona
+  getAxisColorA = xform1 c_th2f_getaxiscolora
+  getLabelColorA = xform1 c_th2f_getlabelcolora
+  getLabelFontA = xform1 c_th2f_getlabelfonta
+  getLabelOffsetA = xform1 c_th2f_getlabeloffseta
+  getLabelSizeA = xform1 c_th2f_getlabelsizea
+  getTitleFontA = xform1 c_th2f_gettitlefonta
+  getTitleOffsetA = xform1 c_th2f_gettitleoffseta
+  getTitleSizeA = xform1 c_th2f_gettitlesizea
+  getTickLengthA = xform1 c_th2f_getticklengtha
+  getBarOffset = xform0 c_th2f_getbaroffset
+  getBarWidth = xform0 c_th2f_getbarwidth
+  getContour = xform1 c_th2f_getcontour
+  getContourLevel = xform1 c_th2f_getcontourlevel
+  getContourLevelPad = xform1 c_th2f_getcontourlevelpad
+  getBin = xform3 c_th2f_getbin
+  getBinCenter = xform1 c_th2f_getbincenter
+  getBinContent1 = xform1 c_th2f_getbincontent1
+  getBinContent2 = xform2 c_th2f_getbincontent2
+  getBinContent3 = xform3 c_th2f_getbincontent3
+  getBinError1 = xform1 c_th2f_getbinerror1
+  getBinError2 = xform2 c_th2f_getbinerror2
+  getBinError3 = xform3 c_th2f_getbinerror3
+  getBinLowEdge = xform1 c_th2f_getbinlowedge
+  getBinWidth = xform1 c_th2f_getbinwidth
+  getCellContent = xform2 c_th2f_getcellcontent
+  getCellError = xform2 c_th2f_getcellerror
+  getEntries = xform0 c_th2f_getentries
+  getEffectiveEntries = xform0 c_th2f_geteffectiveentries
+  getFunction = xform1 c_th2f_getfunction
+  getDimension = xform0 c_th2f_getdimension
+  getKurtosis = xform1 c_th2f_getkurtosis
+  getLowEdge = xform1 c_th2f_getlowedge
+  getMaximum = xform1 c_th2f_getmaximum
+  getMaximumBin = xform0 c_th2f_getmaximumbin
+  getMaximumStored = xform0 c_th2f_getmaximumstored
+  getMinimum = xform1 c_th2f_getminimum
+  getMinimumBin = xform0 c_th2f_getminimumbin
+  getMinimumStored = xform0 c_th2f_getminimumstored
+  getMean = xform1 c_th2f_getmean
+  getMeanError = xform1 c_th2f_getmeanerror
+  getNbinsX = xform0 c_th2f_getnbinsx
+  getNbinsY = xform0 c_th2f_getnbinsy
+  getNbinsZ = xform0 c_th2f_getnbinsz
+  getQuantiles = xform3 c_th2f_getquantiles
+  getRandom = xform0 c_th2f_getrandom
+  getStats = xform1 c_th2f_getstats
+  getSumOfWeights = xform0 c_th2f_getsumofweights
+  getSumw2 = xform0 c_th2f_getsumw2
+  getSumw2N = xform0 c_th2f_getsumw2n
+  getRMS = xform1 c_th2f_getrms
+  getRMSError = xform1 c_th2f_getrmserror
+  getSkewness = xform1 c_th2f_getskewness
+  integral1 = xform3 c_th2f_integral1
+  interpolate1 = xform1 c_th2f_interpolate1
+  interpolate2 = xform2 c_th2f_interpolate2
+  interpolate3 = xform3 c_th2f_interpolate3
+  kolmogorovTest = xform2 c_th2f_kolmogorovtest
+  labelsDeflate = xform1 c_th2f_labelsdeflate
+  labelsInflate = xform1 c_th2f_labelsinflate
+  labelsOption = xform2 c_th2f_labelsoption
+  multiflyF = xform2 c_th2f_multiflyf
+  multiply = xform5 c_th2f_multiply
+  paint = xform0 c_th2f_paint
+  putStats = xform1 c_th2f_putstats
+  rebin = xform3 c_th2f_rebin
+  rebinAxis = xform2 c_th2f_rebinaxis
+  rebuild = xform1 c_th2f_rebuild
+  recursiveRemove = xform1 c_th2f_recursiveremove
+  reset = xform1 c_th2f_reset
+  resetStats = xform0 c_th2f_resetstats
+  scale = xform2 c_th2f_scale
+  setAxisColorA = xform2 c_th2f_setaxiscolora
+  setAxisRange = xform3 c_th2f_setaxisrange
+  setBarOffset = xform1 c_th2f_setbaroffset
+  setBarWidth = xform1 c_th2f_setbarwidth
+  setBinContent1 = xform2 c_th2f_setbincontent1
+  setBinContent2 = xform3 c_th2f_setbincontent2
+  setBinContent3 = xform4 c_th2f_setbincontent3
+  setBinError1 = xform2 c_th2f_setbinerror1
+  setBinError2 = xform3 c_th2f_setbinerror2
+  setBinError3 = xform4 c_th2f_setbinerror3
+  setBins1 = xform2 c_th2f_setbins1
+  setBins2 = xform4 c_th2f_setbins2
+  setBins3 = xform6 c_th2f_setbins3
+  setBinsLength = xform1 c_th2f_setbinslength
+  setBuffer = xform2 c_th2f_setbuffer
+  setCellContent = xform3 c_th2f_setcellcontent
+  setContent = xform1 c_th2f_setcontent
+  setContour = xform2 c_th2f_setcontour
+  setContourLevel = xform2 c_th2f_setcontourlevel
+  setDirectory = xform1 c_th2f_setdirectory
+  setEntries = xform1 c_th2f_setentries
+  setError = xform1 c_th2f_seterror
+  setLabelColorA = xform2 c_th2f_setlabelcolora
+  setLabelSizeA = xform2 c_th2f_setlabelsizea
+  setLabelFontA = xform2 c_th2f_setlabelfonta
+  setLabelOffsetA = xform2 c_th2f_setlabeloffseta
+  setMaximum = xform1 c_th2f_setmaximum
+  setMinimum = xform1 c_th2f_setminimum
+  setNormFactor = xform1 c_th2f_setnormfactor
+  setStats = xform1 c_th2f_setstats
+  setOption = xform1 c_th2f_setoption
+  setXTitle = xform1 c_th2f_setxtitle
+  setYTitle = xform1 c_th2f_setytitle
+  setZTitle = xform1 c_th2f_setztitle
+  showBackground = xform2 c_th2f_showbackground
+  showPeaks = xform3 c_th2f_showpeaks
+  smooth = xform2 c_th2f_smooth
+  sumw2 = xform0 c_th2f_sumw2
+
+instance ITH1 TH2D where
+  add = xform2 c_th2d_add
+  addBinContent = xform2 c_th2d_addbincontent
+  chi2Test = xform3 c_th2d_chi2test
+  computeIntegral = xform0 c_th2d_computeintegral
+  directoryAutoAdd = xform1 c_th2d_directoryautoadd
+  distancetoPrimitive = xform2 c_th2d_distancetoprimitive
+  divide = xform5 c_th2d_divide
+  drawCopy = xform1 c_th2d_drawcopy
+  drawNormalized = xform2 c_th2d_drawnormalized
+  drawPanel = xform0 c_th2d_drawpanel
+  bufferEmpty = xform1 c_th2d_bufferempty
+  eval = xform2 c_th2d_eval
+  executeEvent = xform3 c_th2d_executeevent
+  fFT = xform2 c_th2d_fft
+  fill1 = xform1 c_th2d_fill1
+  fillN = xform4 c_th2d_filln
+  fillRandom = xform2 c_th2d_fillrandom
+  findBin = xform3 c_th2d_findbin
+  findFixBin = xform3 c_th2d_findfixbin
+  findFirstBinAbove = xform2 c_th2d_findfirstbinabove
+  findLastBinAbove = xform2 c_th2d_findlastbinabove
+  fitPanel = xform0 c_th2d_fitpanel
+  getNdivisionA = xform1 c_th2d_getndivisiona
+  getAxisColorA = xform1 c_th2d_getaxiscolora
+  getLabelColorA = xform1 c_th2d_getlabelcolora
+  getLabelFontA = xform1 c_th2d_getlabelfonta
+  getLabelOffsetA = xform1 c_th2d_getlabeloffseta
+  getLabelSizeA = xform1 c_th2d_getlabelsizea
+  getTitleFontA = xform1 c_th2d_gettitlefonta
+  getTitleOffsetA = xform1 c_th2d_gettitleoffseta
+  getTitleSizeA = xform1 c_th2d_gettitlesizea
+  getTickLengthA = xform1 c_th2d_getticklengtha
+  getBarOffset = xform0 c_th2d_getbaroffset
+  getBarWidth = xform0 c_th2d_getbarwidth
+  getContour = xform1 c_th2d_getcontour
+  getContourLevel = xform1 c_th2d_getcontourlevel
+  getContourLevelPad = xform1 c_th2d_getcontourlevelpad
+  getBin = xform3 c_th2d_getbin
+  getBinCenter = xform1 c_th2d_getbincenter
+  getBinContent1 = xform1 c_th2d_getbincontent1
+  getBinContent2 = xform2 c_th2d_getbincontent2
+  getBinContent3 = xform3 c_th2d_getbincontent3
+  getBinError1 = xform1 c_th2d_getbinerror1
+  getBinError2 = xform2 c_th2d_getbinerror2
+  getBinError3 = xform3 c_th2d_getbinerror3
+  getBinLowEdge = xform1 c_th2d_getbinlowedge
+  getBinWidth = xform1 c_th2d_getbinwidth
+  getCellContent = xform2 c_th2d_getcellcontent
+  getCellError = xform2 c_th2d_getcellerror
+  getEntries = xform0 c_th2d_getentries
+  getEffectiveEntries = xform0 c_th2d_geteffectiveentries
+  getFunction = xform1 c_th2d_getfunction
+  getDimension = xform0 c_th2d_getdimension
+  getKurtosis = xform1 c_th2d_getkurtosis
+  getLowEdge = xform1 c_th2d_getlowedge
+  getMaximum = xform1 c_th2d_getmaximum
+  getMaximumBin = xform0 c_th2d_getmaximumbin
+  getMaximumStored = xform0 c_th2d_getmaximumstored
+  getMinimum = xform1 c_th2d_getminimum
+  getMinimumBin = xform0 c_th2d_getminimumbin
+  getMinimumStored = xform0 c_th2d_getminimumstored
+  getMean = xform1 c_th2d_getmean
+  getMeanError = xform1 c_th2d_getmeanerror
+  getNbinsX = xform0 c_th2d_getnbinsx
+  getNbinsY = xform0 c_th2d_getnbinsy
+  getNbinsZ = xform0 c_th2d_getnbinsz
+  getQuantiles = xform3 c_th2d_getquantiles
+  getRandom = xform0 c_th2d_getrandom
+  getStats = xform1 c_th2d_getstats
+  getSumOfWeights = xform0 c_th2d_getsumofweights
+  getSumw2 = xform0 c_th2d_getsumw2
+  getSumw2N = xform0 c_th2d_getsumw2n
+  getRMS = xform1 c_th2d_getrms
+  getRMSError = xform1 c_th2d_getrmserror
+  getSkewness = xform1 c_th2d_getskewness
+  integral1 = xform3 c_th2d_integral1
+  interpolate1 = xform1 c_th2d_interpolate1
+  interpolate2 = xform2 c_th2d_interpolate2
+  interpolate3 = xform3 c_th2d_interpolate3
+  kolmogorovTest = xform2 c_th2d_kolmogorovtest
+  labelsDeflate = xform1 c_th2d_labelsdeflate
+  labelsInflate = xform1 c_th2d_labelsinflate
+  labelsOption = xform2 c_th2d_labelsoption
+  multiflyF = xform2 c_th2d_multiflyf
+  multiply = xform5 c_th2d_multiply
+  paint = xform0 c_th2d_paint
+  putStats = xform1 c_th2d_putstats
+  rebin = xform3 c_th2d_rebin
+  rebinAxis = xform2 c_th2d_rebinaxis
+  rebuild = xform1 c_th2d_rebuild
+  recursiveRemove = xform1 c_th2d_recursiveremove
+  reset = xform1 c_th2d_reset
+  resetStats = xform0 c_th2d_resetstats
+  scale = xform2 c_th2d_scale
+  setAxisColorA = xform2 c_th2d_setaxiscolora
+  setAxisRange = xform3 c_th2d_setaxisrange
+  setBarOffset = xform1 c_th2d_setbaroffset
+  setBarWidth = xform1 c_th2d_setbarwidth
+  setBinContent1 = xform2 c_th2d_setbincontent1
+  setBinContent2 = xform3 c_th2d_setbincontent2
+  setBinContent3 = xform4 c_th2d_setbincontent3
+  setBinError1 = xform2 c_th2d_setbinerror1
+  setBinError2 = xform3 c_th2d_setbinerror2
+  setBinError3 = xform4 c_th2d_setbinerror3
+  setBins1 = xform2 c_th2d_setbins1
+  setBins2 = xform4 c_th2d_setbins2
+  setBins3 = xform6 c_th2d_setbins3
+  setBinsLength = xform1 c_th2d_setbinslength
+  setBuffer = xform2 c_th2d_setbuffer
+  setCellContent = xform3 c_th2d_setcellcontent
+  setContent = xform1 c_th2d_setcontent
+  setContour = xform2 c_th2d_setcontour
+  setContourLevel = xform2 c_th2d_setcontourlevel
+  setDirectory = xform1 c_th2d_setdirectory
+  setEntries = xform1 c_th2d_setentries
+  setError = xform1 c_th2d_seterror
+  setLabelColorA = xform2 c_th2d_setlabelcolora
+  setLabelSizeA = xform2 c_th2d_setlabelsizea
+  setLabelFontA = xform2 c_th2d_setlabelfonta
+  setLabelOffsetA = xform2 c_th2d_setlabeloffseta
+  setMaximum = xform1 c_th2d_setmaximum
+  setMinimum = xform1 c_th2d_setminimum
+  setNormFactor = xform1 c_th2d_setnormfactor
+  setStats = xform1 c_th2d_setstats
+  setOption = xform1 c_th2d_setoption
+  setXTitle = xform1 c_th2d_setxtitle
+  setYTitle = xform1 c_th2d_setytitle
+  setZTitle = xform1 c_th2d_setztitle
+  showBackground = xform2 c_th2d_showbackground
+  showPeaks = xform3 c_th2d_showpeaks
+  smooth = xform2 c_th2d_smooth
+  sumw2 = xform0 c_th2d_sumw2
+
+instance ITH1 TH2C where
+  add = xform2 c_th2c_add
+  addBinContent = xform2 c_th2c_addbincontent
+  chi2Test = xform3 c_th2c_chi2test
+  computeIntegral = xform0 c_th2c_computeintegral
+  directoryAutoAdd = xform1 c_th2c_directoryautoadd
+  distancetoPrimitive = xform2 c_th2c_distancetoprimitive
+  divide = xform5 c_th2c_divide
+  drawCopy = xform1 c_th2c_drawcopy
+  drawNormalized = xform2 c_th2c_drawnormalized
+  drawPanel = xform0 c_th2c_drawpanel
+  bufferEmpty = xform1 c_th2c_bufferempty
+  eval = xform2 c_th2c_eval
+  executeEvent = xform3 c_th2c_executeevent
+  fFT = xform2 c_th2c_fft
+  fill1 = xform1 c_th2c_fill1
+  fillN = xform4 c_th2c_filln
+  fillRandom = xform2 c_th2c_fillrandom
+  findBin = xform3 c_th2c_findbin
+  findFixBin = xform3 c_th2c_findfixbin
+  findFirstBinAbove = xform2 c_th2c_findfirstbinabove
+  findLastBinAbove = xform2 c_th2c_findlastbinabove
+  fitPanel = xform0 c_th2c_fitpanel
+  getNdivisionA = xform1 c_th2c_getndivisiona
+  getAxisColorA = xform1 c_th2c_getaxiscolora
+  getLabelColorA = xform1 c_th2c_getlabelcolora
+  getLabelFontA = xform1 c_th2c_getlabelfonta
+  getLabelOffsetA = xform1 c_th2c_getlabeloffseta
+  getLabelSizeA = xform1 c_th2c_getlabelsizea
+  getTitleFontA = xform1 c_th2c_gettitlefonta
+  getTitleOffsetA = xform1 c_th2c_gettitleoffseta
+  getTitleSizeA = xform1 c_th2c_gettitlesizea
+  getTickLengthA = xform1 c_th2c_getticklengtha
+  getBarOffset = xform0 c_th2c_getbaroffset
+  getBarWidth = xform0 c_th2c_getbarwidth
+  getContour = xform1 c_th2c_getcontour
+  getContourLevel = xform1 c_th2c_getcontourlevel
+  getContourLevelPad = xform1 c_th2c_getcontourlevelpad
+  getBin = xform3 c_th2c_getbin
+  getBinCenter = xform1 c_th2c_getbincenter
+  getBinContent1 = xform1 c_th2c_getbincontent1
+  getBinContent2 = xform2 c_th2c_getbincontent2
+  getBinContent3 = xform3 c_th2c_getbincontent3
+  getBinError1 = xform1 c_th2c_getbinerror1
+  getBinError2 = xform2 c_th2c_getbinerror2
+  getBinError3 = xform3 c_th2c_getbinerror3
+  getBinLowEdge = xform1 c_th2c_getbinlowedge
+  getBinWidth = xform1 c_th2c_getbinwidth
+  getCellContent = xform2 c_th2c_getcellcontent
+  getCellError = xform2 c_th2c_getcellerror
+  getEntries = xform0 c_th2c_getentries
+  getEffectiveEntries = xform0 c_th2c_geteffectiveentries
+  getFunction = xform1 c_th2c_getfunction
+  getDimension = xform0 c_th2c_getdimension
+  getKurtosis = xform1 c_th2c_getkurtosis
+  getLowEdge = xform1 c_th2c_getlowedge
+  getMaximum = xform1 c_th2c_getmaximum
+  getMaximumBin = xform0 c_th2c_getmaximumbin
+  getMaximumStored = xform0 c_th2c_getmaximumstored
+  getMinimum = xform1 c_th2c_getminimum
+  getMinimumBin = xform0 c_th2c_getminimumbin
+  getMinimumStored = xform0 c_th2c_getminimumstored
+  getMean = xform1 c_th2c_getmean
+  getMeanError = xform1 c_th2c_getmeanerror
+  getNbinsX = xform0 c_th2c_getnbinsx
+  getNbinsY = xform0 c_th2c_getnbinsy
+  getNbinsZ = xform0 c_th2c_getnbinsz
+  getQuantiles = xform3 c_th2c_getquantiles
+  getRandom = xform0 c_th2c_getrandom
+  getStats = xform1 c_th2c_getstats
+  getSumOfWeights = xform0 c_th2c_getsumofweights
+  getSumw2 = xform0 c_th2c_getsumw2
+  getSumw2N = xform0 c_th2c_getsumw2n
+  getRMS = xform1 c_th2c_getrms
+  getRMSError = xform1 c_th2c_getrmserror
+  getSkewness = xform1 c_th2c_getskewness
+  integral1 = xform3 c_th2c_integral1
+  interpolate1 = xform1 c_th2c_interpolate1
+  interpolate2 = xform2 c_th2c_interpolate2
+  interpolate3 = xform3 c_th2c_interpolate3
+  kolmogorovTest = xform2 c_th2c_kolmogorovtest
+  labelsDeflate = xform1 c_th2c_labelsdeflate
+  labelsInflate = xform1 c_th2c_labelsinflate
+  labelsOption = xform2 c_th2c_labelsoption
+  multiflyF = xform2 c_th2c_multiflyf
+  multiply = xform5 c_th2c_multiply
+  paint = xform0 c_th2c_paint
+  putStats = xform1 c_th2c_putstats
+  rebin = xform3 c_th2c_rebin
+  rebinAxis = xform2 c_th2c_rebinaxis
+  rebuild = xform1 c_th2c_rebuild
+  recursiveRemove = xform1 c_th2c_recursiveremove
+  reset = xform1 c_th2c_reset
+  resetStats = xform0 c_th2c_resetstats
+  scale = xform2 c_th2c_scale
+  setAxisColorA = xform2 c_th2c_setaxiscolora
+  setAxisRange = xform3 c_th2c_setaxisrange
+  setBarOffset = xform1 c_th2c_setbaroffset
+  setBarWidth = xform1 c_th2c_setbarwidth
+  setBinContent1 = xform2 c_th2c_setbincontent1
+  setBinContent2 = xform3 c_th2c_setbincontent2
+  setBinContent3 = xform4 c_th2c_setbincontent3
+  setBinError1 = xform2 c_th2c_setbinerror1
+  setBinError2 = xform3 c_th2c_setbinerror2
+  setBinError3 = xform4 c_th2c_setbinerror3
+  setBins1 = xform2 c_th2c_setbins1
+  setBins2 = xform4 c_th2c_setbins2
+  setBins3 = xform6 c_th2c_setbins3
+  setBinsLength = xform1 c_th2c_setbinslength
+  setBuffer = xform2 c_th2c_setbuffer
+  setCellContent = xform3 c_th2c_setcellcontent
+  setContent = xform1 c_th2c_setcontent
+  setContour = xform2 c_th2c_setcontour
+  setContourLevel = xform2 c_th2c_setcontourlevel
+  setDirectory = xform1 c_th2c_setdirectory
+  setEntries = xform1 c_th2c_setentries
+  setError = xform1 c_th2c_seterror
+  setLabelColorA = xform2 c_th2c_setlabelcolora
+  setLabelSizeA = xform2 c_th2c_setlabelsizea
+  setLabelFontA = xform2 c_th2c_setlabelfonta
+  setLabelOffsetA = xform2 c_th2c_setlabeloffseta
+  setMaximum = xform1 c_th2c_setmaximum
+  setMinimum = xform1 c_th2c_setminimum
+  setNormFactor = xform1 c_th2c_setnormfactor
+  setStats = xform1 c_th2c_setstats
+  setOption = xform1 c_th2c_setoption
+  setXTitle = xform1 c_th2c_setxtitle
+  setYTitle = xform1 c_th2c_setytitle
+  setZTitle = xform1 c_th2c_setztitle
+  showBackground = xform2 c_th2c_showbackground
+  showPeaks = xform3 c_th2c_showpeaks
+  smooth = xform2 c_th2c_smooth
+  sumw2 = xform0 c_th2c_sumw2
+
+instance ITH1 TH1S where
+  add = xform2 c_th1s_add
+  addBinContent = xform2 c_th1s_addbincontent
+  chi2Test = xform3 c_th1s_chi2test
+  computeIntegral = xform0 c_th1s_computeintegral
+  directoryAutoAdd = xform1 c_th1s_directoryautoadd
+  distancetoPrimitive = xform2 c_th1s_distancetoprimitive
+  divide = xform5 c_th1s_divide
+  drawCopy = xform1 c_th1s_drawcopy
+  drawNormalized = xform2 c_th1s_drawnormalized
+  drawPanel = xform0 c_th1s_drawpanel
+  bufferEmpty = xform1 c_th1s_bufferempty
+  eval = xform2 c_th1s_eval
+  executeEvent = xform3 c_th1s_executeevent
+  fFT = xform2 c_th1s_fft
+  fill1 = xform1 c_th1s_fill1
+  fillN = xform4 c_th1s_filln
+  fillRandom = xform2 c_th1s_fillrandom
+  findBin = xform3 c_th1s_findbin
+  findFixBin = xform3 c_th1s_findfixbin
+  findFirstBinAbove = xform2 c_th1s_findfirstbinabove
+  findLastBinAbove = xform2 c_th1s_findlastbinabove
+  fitPanel = xform0 c_th1s_fitpanel
+  getNdivisionA = xform1 c_th1s_getndivisiona
+  getAxisColorA = xform1 c_th1s_getaxiscolora
+  getLabelColorA = xform1 c_th1s_getlabelcolora
+  getLabelFontA = xform1 c_th1s_getlabelfonta
+  getLabelOffsetA = xform1 c_th1s_getlabeloffseta
+  getLabelSizeA = xform1 c_th1s_getlabelsizea
+  getTitleFontA = xform1 c_th1s_gettitlefonta
+  getTitleOffsetA = xform1 c_th1s_gettitleoffseta
+  getTitleSizeA = xform1 c_th1s_gettitlesizea
+  getTickLengthA = xform1 c_th1s_getticklengtha
+  getBarOffset = xform0 c_th1s_getbaroffset
+  getBarWidth = xform0 c_th1s_getbarwidth
+  getContour = xform1 c_th1s_getcontour
+  getContourLevel = xform1 c_th1s_getcontourlevel
+  getContourLevelPad = xform1 c_th1s_getcontourlevelpad
+  getBin = xform3 c_th1s_getbin
+  getBinCenter = xform1 c_th1s_getbincenter
+  getBinContent1 = xform1 c_th1s_getbincontent1
+  getBinContent2 = xform2 c_th1s_getbincontent2
+  getBinContent3 = xform3 c_th1s_getbincontent3
+  getBinError1 = xform1 c_th1s_getbinerror1
+  getBinError2 = xform2 c_th1s_getbinerror2
+  getBinError3 = xform3 c_th1s_getbinerror3
+  getBinLowEdge = xform1 c_th1s_getbinlowedge
+  getBinWidth = xform1 c_th1s_getbinwidth
+  getCellContent = xform2 c_th1s_getcellcontent
+  getCellError = xform2 c_th1s_getcellerror
+  getEntries = xform0 c_th1s_getentries
+  getEffectiveEntries = xform0 c_th1s_geteffectiveentries
+  getFunction = xform1 c_th1s_getfunction
+  getDimension = xform0 c_th1s_getdimension
+  getKurtosis = xform1 c_th1s_getkurtosis
+  getLowEdge = xform1 c_th1s_getlowedge
+  getMaximum = xform1 c_th1s_getmaximum
+  getMaximumBin = xform0 c_th1s_getmaximumbin
+  getMaximumStored = xform0 c_th1s_getmaximumstored
+  getMinimum = xform1 c_th1s_getminimum
+  getMinimumBin = xform0 c_th1s_getminimumbin
+  getMinimumStored = xform0 c_th1s_getminimumstored
+  getMean = xform1 c_th1s_getmean
+  getMeanError = xform1 c_th1s_getmeanerror
+  getNbinsX = xform0 c_th1s_getnbinsx
+  getNbinsY = xform0 c_th1s_getnbinsy
+  getNbinsZ = xform0 c_th1s_getnbinsz
+  getQuantiles = xform3 c_th1s_getquantiles
+  getRandom = xform0 c_th1s_getrandom
+  getStats = xform1 c_th1s_getstats
+  getSumOfWeights = xform0 c_th1s_getsumofweights
+  getSumw2 = xform0 c_th1s_getsumw2
+  getSumw2N = xform0 c_th1s_getsumw2n
+  getRMS = xform1 c_th1s_getrms
+  getRMSError = xform1 c_th1s_getrmserror
+  getSkewness = xform1 c_th1s_getskewness
+  integral1 = xform3 c_th1s_integral1
+  interpolate1 = xform1 c_th1s_interpolate1
+  interpolate2 = xform2 c_th1s_interpolate2
+  interpolate3 = xform3 c_th1s_interpolate3
+  kolmogorovTest = xform2 c_th1s_kolmogorovtest
+  labelsDeflate = xform1 c_th1s_labelsdeflate
+  labelsInflate = xform1 c_th1s_labelsinflate
+  labelsOption = xform2 c_th1s_labelsoption
+  multiflyF = xform2 c_th1s_multiflyf
+  multiply = xform5 c_th1s_multiply
+  paint = xform0 c_th1s_paint
+  putStats = xform1 c_th1s_putstats
+  rebin = xform3 c_th1s_rebin
+  rebinAxis = xform2 c_th1s_rebinaxis
+  rebuild = xform1 c_th1s_rebuild
+  recursiveRemove = xform1 c_th1s_recursiveremove
+  reset = xform1 c_th1s_reset
+  resetStats = xform0 c_th1s_resetstats
+  scale = xform2 c_th1s_scale
+  setAxisColorA = xform2 c_th1s_setaxiscolora
+  setAxisRange = xform3 c_th1s_setaxisrange
+  setBarOffset = xform1 c_th1s_setbaroffset
+  setBarWidth = xform1 c_th1s_setbarwidth
+  setBinContent1 = xform2 c_th1s_setbincontent1
+  setBinContent2 = xform3 c_th1s_setbincontent2
+  setBinContent3 = xform4 c_th1s_setbincontent3
+  setBinError1 = xform2 c_th1s_setbinerror1
+  setBinError2 = xform3 c_th1s_setbinerror2
+  setBinError3 = xform4 c_th1s_setbinerror3
+  setBins1 = xform2 c_th1s_setbins1
+  setBins2 = xform4 c_th1s_setbins2
+  setBins3 = xform6 c_th1s_setbins3
+  setBinsLength = xform1 c_th1s_setbinslength
+  setBuffer = xform2 c_th1s_setbuffer
+  setCellContent = xform3 c_th1s_setcellcontent
+  setContent = xform1 c_th1s_setcontent
+  setContour = xform2 c_th1s_setcontour
+  setContourLevel = xform2 c_th1s_setcontourlevel
+  setDirectory = xform1 c_th1s_setdirectory
+  setEntries = xform1 c_th1s_setentries
+  setError = xform1 c_th1s_seterror
+  setLabelColorA = xform2 c_th1s_setlabelcolora
+  setLabelSizeA = xform2 c_th1s_setlabelsizea
+  setLabelFontA = xform2 c_th1s_setlabelfonta
+  setLabelOffsetA = xform2 c_th1s_setlabeloffseta
+  setMaximum = xform1 c_th1s_setmaximum
+  setMinimum = xform1 c_th1s_setminimum
+  setNormFactor = xform1 c_th1s_setnormfactor
+  setStats = xform1 c_th1s_setstats
+  setOption = xform1 c_th1s_setoption
+  setXTitle = xform1 c_th1s_setxtitle
+  setYTitle = xform1 c_th1s_setytitle
+  setZTitle = xform1 c_th1s_setztitle
+  showBackground = xform2 c_th1s_showbackground
+  showPeaks = xform3 c_th1s_showpeaks
+  smooth = xform2 c_th1s_smooth
+  sumw2 = xform0 c_th1s_sumw2
+
+instance ITH1 TH1I where
+  add = xform2 c_th1i_add
+  addBinContent = xform2 c_th1i_addbincontent
+  chi2Test = xform3 c_th1i_chi2test
+  computeIntegral = xform0 c_th1i_computeintegral
+  directoryAutoAdd = xform1 c_th1i_directoryautoadd
+  distancetoPrimitive = xform2 c_th1i_distancetoprimitive
+  divide = xform5 c_th1i_divide
+  drawCopy = xform1 c_th1i_drawcopy
+  drawNormalized = xform2 c_th1i_drawnormalized
+  drawPanel = xform0 c_th1i_drawpanel
+  bufferEmpty = xform1 c_th1i_bufferempty
+  eval = xform2 c_th1i_eval
+  executeEvent = xform3 c_th1i_executeevent
+  fFT = xform2 c_th1i_fft
+  fill1 = xform1 c_th1i_fill1
+  fillN = xform4 c_th1i_filln
+  fillRandom = xform2 c_th1i_fillrandom
+  findBin = xform3 c_th1i_findbin
+  findFixBin = xform3 c_th1i_findfixbin
+  findFirstBinAbove = xform2 c_th1i_findfirstbinabove
+  findLastBinAbove = xform2 c_th1i_findlastbinabove
+  fitPanel = xform0 c_th1i_fitpanel
+  getNdivisionA = xform1 c_th1i_getndivisiona
+  getAxisColorA = xform1 c_th1i_getaxiscolora
+  getLabelColorA = xform1 c_th1i_getlabelcolora
+  getLabelFontA = xform1 c_th1i_getlabelfonta
+  getLabelOffsetA = xform1 c_th1i_getlabeloffseta
+  getLabelSizeA = xform1 c_th1i_getlabelsizea
+  getTitleFontA = xform1 c_th1i_gettitlefonta
+  getTitleOffsetA = xform1 c_th1i_gettitleoffseta
+  getTitleSizeA = xform1 c_th1i_gettitlesizea
+  getTickLengthA = xform1 c_th1i_getticklengtha
+  getBarOffset = xform0 c_th1i_getbaroffset
+  getBarWidth = xform0 c_th1i_getbarwidth
+  getContour = xform1 c_th1i_getcontour
+  getContourLevel = xform1 c_th1i_getcontourlevel
+  getContourLevelPad = xform1 c_th1i_getcontourlevelpad
+  getBin = xform3 c_th1i_getbin
+  getBinCenter = xform1 c_th1i_getbincenter
+  getBinContent1 = xform1 c_th1i_getbincontent1
+  getBinContent2 = xform2 c_th1i_getbincontent2
+  getBinContent3 = xform3 c_th1i_getbincontent3
+  getBinError1 = xform1 c_th1i_getbinerror1
+  getBinError2 = xform2 c_th1i_getbinerror2
+  getBinError3 = xform3 c_th1i_getbinerror3
+  getBinLowEdge = xform1 c_th1i_getbinlowedge
+  getBinWidth = xform1 c_th1i_getbinwidth
+  getCellContent = xform2 c_th1i_getcellcontent
+  getCellError = xform2 c_th1i_getcellerror
+  getEntries = xform0 c_th1i_getentries
+  getEffectiveEntries = xform0 c_th1i_geteffectiveentries
+  getFunction = xform1 c_th1i_getfunction
+  getDimension = xform0 c_th1i_getdimension
+  getKurtosis = xform1 c_th1i_getkurtosis
+  getLowEdge = xform1 c_th1i_getlowedge
+  getMaximum = xform1 c_th1i_getmaximum
+  getMaximumBin = xform0 c_th1i_getmaximumbin
+  getMaximumStored = xform0 c_th1i_getmaximumstored
+  getMinimum = xform1 c_th1i_getminimum
+  getMinimumBin = xform0 c_th1i_getminimumbin
+  getMinimumStored = xform0 c_th1i_getminimumstored
+  getMean = xform1 c_th1i_getmean
+  getMeanError = xform1 c_th1i_getmeanerror
+  getNbinsX = xform0 c_th1i_getnbinsx
+  getNbinsY = xform0 c_th1i_getnbinsy
+  getNbinsZ = xform0 c_th1i_getnbinsz
+  getQuantiles = xform3 c_th1i_getquantiles
+  getRandom = xform0 c_th1i_getrandom
+  getStats = xform1 c_th1i_getstats
+  getSumOfWeights = xform0 c_th1i_getsumofweights
+  getSumw2 = xform0 c_th1i_getsumw2
+  getSumw2N = xform0 c_th1i_getsumw2n
+  getRMS = xform1 c_th1i_getrms
+  getRMSError = xform1 c_th1i_getrmserror
+  getSkewness = xform1 c_th1i_getskewness
+  integral1 = xform3 c_th1i_integral1
+  interpolate1 = xform1 c_th1i_interpolate1
+  interpolate2 = xform2 c_th1i_interpolate2
+  interpolate3 = xform3 c_th1i_interpolate3
+  kolmogorovTest = xform2 c_th1i_kolmogorovtest
+  labelsDeflate = xform1 c_th1i_labelsdeflate
+  labelsInflate = xform1 c_th1i_labelsinflate
+  labelsOption = xform2 c_th1i_labelsoption
+  multiflyF = xform2 c_th1i_multiflyf
+  multiply = xform5 c_th1i_multiply
+  paint = xform0 c_th1i_paint
+  putStats = xform1 c_th1i_putstats
+  rebin = xform3 c_th1i_rebin
+  rebinAxis = xform2 c_th1i_rebinaxis
+  rebuild = xform1 c_th1i_rebuild
+  recursiveRemove = xform1 c_th1i_recursiveremove
+  reset = xform1 c_th1i_reset
+  resetStats = xform0 c_th1i_resetstats
+  scale = xform2 c_th1i_scale
+  setAxisColorA = xform2 c_th1i_setaxiscolora
+  setAxisRange = xform3 c_th1i_setaxisrange
+  setBarOffset = xform1 c_th1i_setbaroffset
+  setBarWidth = xform1 c_th1i_setbarwidth
+  setBinContent1 = xform2 c_th1i_setbincontent1
+  setBinContent2 = xform3 c_th1i_setbincontent2
+  setBinContent3 = xform4 c_th1i_setbincontent3
+  setBinError1 = xform2 c_th1i_setbinerror1
+  setBinError2 = xform3 c_th1i_setbinerror2
+  setBinError3 = xform4 c_th1i_setbinerror3
+  setBins1 = xform2 c_th1i_setbins1
+  setBins2 = xform4 c_th1i_setbins2
+  setBins3 = xform6 c_th1i_setbins3
+  setBinsLength = xform1 c_th1i_setbinslength
+  setBuffer = xform2 c_th1i_setbuffer
+  setCellContent = xform3 c_th1i_setcellcontent
+  setContent = xform1 c_th1i_setcontent
+  setContour = xform2 c_th1i_setcontour
+  setContourLevel = xform2 c_th1i_setcontourlevel
+  setDirectory = xform1 c_th1i_setdirectory
+  setEntries = xform1 c_th1i_setentries
+  setError = xform1 c_th1i_seterror
+  setLabelColorA = xform2 c_th1i_setlabelcolora
+  setLabelSizeA = xform2 c_th1i_setlabelsizea
+  setLabelFontA = xform2 c_th1i_setlabelfonta
+  setLabelOffsetA = xform2 c_th1i_setlabeloffseta
+  setMaximum = xform1 c_th1i_setmaximum
+  setMinimum = xform1 c_th1i_setminimum
+  setNormFactor = xform1 c_th1i_setnormfactor
+  setStats = xform1 c_th1i_setstats
+  setOption = xform1 c_th1i_setoption
+  setXTitle = xform1 c_th1i_setxtitle
+  setYTitle = xform1 c_th1i_setytitle
+  setZTitle = xform1 c_th1i_setztitle
+  showBackground = xform2 c_th1i_showbackground
+  showPeaks = xform3 c_th1i_showpeaks
+  smooth = xform2 c_th1i_smooth
+  sumw2 = xform0 c_th1i_sumw2
+
+instance ITH1 TH1F where
+  add = xform2 c_th1f_add
+  addBinContent = xform2 c_th1f_addbincontent
+  chi2Test = xform3 c_th1f_chi2test
+  computeIntegral = xform0 c_th1f_computeintegral
+  directoryAutoAdd = xform1 c_th1f_directoryautoadd
+  distancetoPrimitive = xform2 c_th1f_distancetoprimitive
+  divide = xform5 c_th1f_divide
+  drawCopy = xform1 c_th1f_drawcopy
+  drawNormalized = xform2 c_th1f_drawnormalized
+  drawPanel = xform0 c_th1f_drawpanel
+  bufferEmpty = xform1 c_th1f_bufferempty
+  eval = xform2 c_th1f_eval
+  executeEvent = xform3 c_th1f_executeevent
+  fFT = xform2 c_th1f_fft
+  fill1 = xform1 c_th1f_fill1
+  fillN = xform4 c_th1f_filln
+  fillRandom = xform2 c_th1f_fillrandom
+  findBin = xform3 c_th1f_findbin
+  findFixBin = xform3 c_th1f_findfixbin
+  findFirstBinAbove = xform2 c_th1f_findfirstbinabove
+  findLastBinAbove = xform2 c_th1f_findlastbinabove
+  fitPanel = xform0 c_th1f_fitpanel
+  getNdivisionA = xform1 c_th1f_getndivisiona
+  getAxisColorA = xform1 c_th1f_getaxiscolora
+  getLabelColorA = xform1 c_th1f_getlabelcolora
+  getLabelFontA = xform1 c_th1f_getlabelfonta
+  getLabelOffsetA = xform1 c_th1f_getlabeloffseta
+  getLabelSizeA = xform1 c_th1f_getlabelsizea
+  getTitleFontA = xform1 c_th1f_gettitlefonta
+  getTitleOffsetA = xform1 c_th1f_gettitleoffseta
+  getTitleSizeA = xform1 c_th1f_gettitlesizea
+  getTickLengthA = xform1 c_th1f_getticklengtha
+  getBarOffset = xform0 c_th1f_getbaroffset
+  getBarWidth = xform0 c_th1f_getbarwidth
+  getContour = xform1 c_th1f_getcontour
+  getContourLevel = xform1 c_th1f_getcontourlevel
+  getContourLevelPad = xform1 c_th1f_getcontourlevelpad
+  getBin = xform3 c_th1f_getbin
+  getBinCenter = xform1 c_th1f_getbincenter
+  getBinContent1 = xform1 c_th1f_getbincontent1
+  getBinContent2 = xform2 c_th1f_getbincontent2
+  getBinContent3 = xform3 c_th1f_getbincontent3
+  getBinError1 = xform1 c_th1f_getbinerror1
+  getBinError2 = xform2 c_th1f_getbinerror2
+  getBinError3 = xform3 c_th1f_getbinerror3
+  getBinLowEdge = xform1 c_th1f_getbinlowedge
+  getBinWidth = xform1 c_th1f_getbinwidth
+  getCellContent = xform2 c_th1f_getcellcontent
+  getCellError = xform2 c_th1f_getcellerror
+  getEntries = xform0 c_th1f_getentries
+  getEffectiveEntries = xform0 c_th1f_geteffectiveentries
+  getFunction = xform1 c_th1f_getfunction
+  getDimension = xform0 c_th1f_getdimension
+  getKurtosis = xform1 c_th1f_getkurtosis
+  getLowEdge = xform1 c_th1f_getlowedge
+  getMaximum = xform1 c_th1f_getmaximum
+  getMaximumBin = xform0 c_th1f_getmaximumbin
+  getMaximumStored = xform0 c_th1f_getmaximumstored
+  getMinimum = xform1 c_th1f_getminimum
+  getMinimumBin = xform0 c_th1f_getminimumbin
+  getMinimumStored = xform0 c_th1f_getminimumstored
+  getMean = xform1 c_th1f_getmean
+  getMeanError = xform1 c_th1f_getmeanerror
+  getNbinsX = xform0 c_th1f_getnbinsx
+  getNbinsY = xform0 c_th1f_getnbinsy
+  getNbinsZ = xform0 c_th1f_getnbinsz
+  getQuantiles = xform3 c_th1f_getquantiles
+  getRandom = xform0 c_th1f_getrandom
+  getStats = xform1 c_th1f_getstats
+  getSumOfWeights = xform0 c_th1f_getsumofweights
+  getSumw2 = xform0 c_th1f_getsumw2
+  getSumw2N = xform0 c_th1f_getsumw2n
+  getRMS = xform1 c_th1f_getrms
+  getRMSError = xform1 c_th1f_getrmserror
+  getSkewness = xform1 c_th1f_getskewness
+  integral1 = xform3 c_th1f_integral1
+  interpolate1 = xform1 c_th1f_interpolate1
+  interpolate2 = xform2 c_th1f_interpolate2
+  interpolate3 = xform3 c_th1f_interpolate3
+  kolmogorovTest = xform2 c_th1f_kolmogorovtest
+  labelsDeflate = xform1 c_th1f_labelsdeflate
+  labelsInflate = xform1 c_th1f_labelsinflate
+  labelsOption = xform2 c_th1f_labelsoption
+  multiflyF = xform2 c_th1f_multiflyf
+  multiply = xform5 c_th1f_multiply
+  paint = xform0 c_th1f_paint
+  putStats = xform1 c_th1f_putstats
+  rebin = xform3 c_th1f_rebin
+  rebinAxis = xform2 c_th1f_rebinaxis
+  rebuild = xform1 c_th1f_rebuild
+  recursiveRemove = xform1 c_th1f_recursiveremove
+  reset = xform1 c_th1f_reset
+  resetStats = xform0 c_th1f_resetstats
+  scale = xform2 c_th1f_scale
+  setAxisColorA = xform2 c_th1f_setaxiscolora
+  setAxisRange = xform3 c_th1f_setaxisrange
+  setBarOffset = xform1 c_th1f_setbaroffset
+  setBarWidth = xform1 c_th1f_setbarwidth
+  setBinContent1 = xform2 c_th1f_setbincontent1
+  setBinContent2 = xform3 c_th1f_setbincontent2
+  setBinContent3 = xform4 c_th1f_setbincontent3
+  setBinError1 = xform2 c_th1f_setbinerror1
+  setBinError2 = xform3 c_th1f_setbinerror2
+  setBinError3 = xform4 c_th1f_setbinerror3
+  setBins1 = xform2 c_th1f_setbins1
+  setBins2 = xform4 c_th1f_setbins2
+  setBins3 = xform6 c_th1f_setbins3
+  setBinsLength = xform1 c_th1f_setbinslength
+  setBuffer = xform2 c_th1f_setbuffer
+  setCellContent = xform3 c_th1f_setcellcontent
+  setContent = xform1 c_th1f_setcontent
+  setContour = xform2 c_th1f_setcontour
+  setContourLevel = xform2 c_th1f_setcontourlevel
+  setDirectory = xform1 c_th1f_setdirectory
+  setEntries = xform1 c_th1f_setentries
+  setError = xform1 c_th1f_seterror
+  setLabelColorA = xform2 c_th1f_setlabelcolora
+  setLabelSizeA = xform2 c_th1f_setlabelsizea
+  setLabelFontA = xform2 c_th1f_setlabelfonta
+  setLabelOffsetA = xform2 c_th1f_setlabeloffseta
+  setMaximum = xform1 c_th1f_setmaximum
+  setMinimum = xform1 c_th1f_setminimum
+  setNormFactor = xform1 c_th1f_setnormfactor
+  setStats = xform1 c_th1f_setstats
+  setOption = xform1 c_th1f_setoption
+  setXTitle = xform1 c_th1f_setxtitle
+  setYTitle = xform1 c_th1f_setytitle
+  setZTitle = xform1 c_th1f_setztitle
+  showBackground = xform2 c_th1f_showbackground
+  showPeaks = xform3 c_th1f_showpeaks
+  smooth = xform2 c_th1f_smooth
+  sumw2 = xform0 c_th1f_sumw2
+
+instance ITH1 TH1D where
+  add = xform2 c_th1d_add
+  addBinContent = xform2 c_th1d_addbincontent
+  chi2Test = xform3 c_th1d_chi2test
+  computeIntegral = xform0 c_th1d_computeintegral
+  directoryAutoAdd = xform1 c_th1d_directoryautoadd
+  distancetoPrimitive = xform2 c_th1d_distancetoprimitive
+  divide = xform5 c_th1d_divide
+  drawCopy = xform1 c_th1d_drawcopy
+  drawNormalized = xform2 c_th1d_drawnormalized
+  drawPanel = xform0 c_th1d_drawpanel
+  bufferEmpty = xform1 c_th1d_bufferempty
+  eval = xform2 c_th1d_eval
+  executeEvent = xform3 c_th1d_executeevent
+  fFT = xform2 c_th1d_fft
+  fill1 = xform1 c_th1d_fill1
+  fillN = xform4 c_th1d_filln
+  fillRandom = xform2 c_th1d_fillrandom
+  findBin = xform3 c_th1d_findbin
+  findFixBin = xform3 c_th1d_findfixbin
+  findFirstBinAbove = xform2 c_th1d_findfirstbinabove
+  findLastBinAbove = xform2 c_th1d_findlastbinabove
+  fitPanel = xform0 c_th1d_fitpanel
+  getNdivisionA = xform1 c_th1d_getndivisiona
+  getAxisColorA = xform1 c_th1d_getaxiscolora
+  getLabelColorA = xform1 c_th1d_getlabelcolora
+  getLabelFontA = xform1 c_th1d_getlabelfonta
+  getLabelOffsetA = xform1 c_th1d_getlabeloffseta
+  getLabelSizeA = xform1 c_th1d_getlabelsizea
+  getTitleFontA = xform1 c_th1d_gettitlefonta
+  getTitleOffsetA = xform1 c_th1d_gettitleoffseta
+  getTitleSizeA = xform1 c_th1d_gettitlesizea
+  getTickLengthA = xform1 c_th1d_getticklengtha
+  getBarOffset = xform0 c_th1d_getbaroffset
+  getBarWidth = xform0 c_th1d_getbarwidth
+  getContour = xform1 c_th1d_getcontour
+  getContourLevel = xform1 c_th1d_getcontourlevel
+  getContourLevelPad = xform1 c_th1d_getcontourlevelpad
+  getBin = xform3 c_th1d_getbin
+  getBinCenter = xform1 c_th1d_getbincenter
+  getBinContent1 = xform1 c_th1d_getbincontent1
+  getBinContent2 = xform2 c_th1d_getbincontent2
+  getBinContent3 = xform3 c_th1d_getbincontent3
+  getBinError1 = xform1 c_th1d_getbinerror1
+  getBinError2 = xform2 c_th1d_getbinerror2
+  getBinError3 = xform3 c_th1d_getbinerror3
+  getBinLowEdge = xform1 c_th1d_getbinlowedge
+  getBinWidth = xform1 c_th1d_getbinwidth
+  getCellContent = xform2 c_th1d_getcellcontent
+  getCellError = xform2 c_th1d_getcellerror
+  getEntries = xform0 c_th1d_getentries
+  getEffectiveEntries = xform0 c_th1d_geteffectiveentries
+  getFunction = xform1 c_th1d_getfunction
+  getDimension = xform0 c_th1d_getdimension
+  getKurtosis = xform1 c_th1d_getkurtosis
+  getLowEdge = xform1 c_th1d_getlowedge
+  getMaximum = xform1 c_th1d_getmaximum
+  getMaximumBin = xform0 c_th1d_getmaximumbin
+  getMaximumStored = xform0 c_th1d_getmaximumstored
+  getMinimum = xform1 c_th1d_getminimum
+  getMinimumBin = xform0 c_th1d_getminimumbin
+  getMinimumStored = xform0 c_th1d_getminimumstored
+  getMean = xform1 c_th1d_getmean
+  getMeanError = xform1 c_th1d_getmeanerror
+  getNbinsX = xform0 c_th1d_getnbinsx
+  getNbinsY = xform0 c_th1d_getnbinsy
+  getNbinsZ = xform0 c_th1d_getnbinsz
+  getQuantiles = xform3 c_th1d_getquantiles
+  getRandom = xform0 c_th1d_getrandom
+  getStats = xform1 c_th1d_getstats
+  getSumOfWeights = xform0 c_th1d_getsumofweights
+  getSumw2 = xform0 c_th1d_getsumw2
+  getSumw2N = xform0 c_th1d_getsumw2n
+  getRMS = xform1 c_th1d_getrms
+  getRMSError = xform1 c_th1d_getrmserror
+  getSkewness = xform1 c_th1d_getskewness
+  integral1 = xform3 c_th1d_integral1
+  interpolate1 = xform1 c_th1d_interpolate1
+  interpolate2 = xform2 c_th1d_interpolate2
+  interpolate3 = xform3 c_th1d_interpolate3
+  kolmogorovTest = xform2 c_th1d_kolmogorovtest
+  labelsDeflate = xform1 c_th1d_labelsdeflate
+  labelsInflate = xform1 c_th1d_labelsinflate
+  labelsOption = xform2 c_th1d_labelsoption
+  multiflyF = xform2 c_th1d_multiflyf
+  multiply = xform5 c_th1d_multiply
+  paint = xform0 c_th1d_paint
+  putStats = xform1 c_th1d_putstats
+  rebin = xform3 c_th1d_rebin
+  rebinAxis = xform2 c_th1d_rebinaxis
+  rebuild = xform1 c_th1d_rebuild
+  recursiveRemove = xform1 c_th1d_recursiveremove
+  reset = xform1 c_th1d_reset
+  resetStats = xform0 c_th1d_resetstats
+  scale = xform2 c_th1d_scale
+  setAxisColorA = xform2 c_th1d_setaxiscolora
+  setAxisRange = xform3 c_th1d_setaxisrange
+  setBarOffset = xform1 c_th1d_setbaroffset
+  setBarWidth = xform1 c_th1d_setbarwidth
+  setBinContent1 = xform2 c_th1d_setbincontent1
+  setBinContent2 = xform3 c_th1d_setbincontent2
+  setBinContent3 = xform4 c_th1d_setbincontent3
+  setBinError1 = xform2 c_th1d_setbinerror1
+  setBinError2 = xform3 c_th1d_setbinerror2
+  setBinError3 = xform4 c_th1d_setbinerror3
+  setBins1 = xform2 c_th1d_setbins1
+  setBins2 = xform4 c_th1d_setbins2
+  setBins3 = xform6 c_th1d_setbins3
+  setBinsLength = xform1 c_th1d_setbinslength
+  setBuffer = xform2 c_th1d_setbuffer
+  setCellContent = xform3 c_th1d_setcellcontent
+  setContent = xform1 c_th1d_setcontent
+  setContour = xform2 c_th1d_setcontour
+  setContourLevel = xform2 c_th1d_setcontourlevel
+  setDirectory = xform1 c_th1d_setdirectory
+  setEntries = xform1 c_th1d_setentries
+  setError = xform1 c_th1d_seterror
+  setLabelColorA = xform2 c_th1d_setlabelcolora
+  setLabelSizeA = xform2 c_th1d_setlabelsizea
+  setLabelFontA = xform2 c_th1d_setlabelfonta
+  setLabelOffsetA = xform2 c_th1d_setlabeloffseta
+  setMaximum = xform1 c_th1d_setmaximum
+  setMinimum = xform1 c_th1d_setminimum
+  setNormFactor = xform1 c_th1d_setnormfactor
+  setStats = xform1 c_th1d_setstats
+  setOption = xform1 c_th1d_setoption
+  setXTitle = xform1 c_th1d_setxtitle
+  setYTitle = xform1 c_th1d_setytitle
+  setZTitle = xform1 c_th1d_setztitle
+  showBackground = xform2 c_th1d_showbackground
+  showPeaks = xform3 c_th1d_showpeaks
+  smooth = xform2 c_th1d_smooth
+  sumw2 = xform0 c_th1d_sumw2
+
+instance ITH1 TH1C where
+  add = xform2 c_th1c_add
+  addBinContent = xform2 c_th1c_addbincontent
+  chi2Test = xform3 c_th1c_chi2test
+  computeIntegral = xform0 c_th1c_computeintegral
+  directoryAutoAdd = xform1 c_th1c_directoryautoadd
+  distancetoPrimitive = xform2 c_th1c_distancetoprimitive
+  divide = xform5 c_th1c_divide
+  drawCopy = xform1 c_th1c_drawcopy
+  drawNormalized = xform2 c_th1c_drawnormalized
+  drawPanel = xform0 c_th1c_drawpanel
+  bufferEmpty = xform1 c_th1c_bufferempty
+  eval = xform2 c_th1c_eval
+  executeEvent = xform3 c_th1c_executeevent
+  fFT = xform2 c_th1c_fft
+  fill1 = xform1 c_th1c_fill1
+  fillN = xform4 c_th1c_filln
+  fillRandom = xform2 c_th1c_fillrandom
+  findBin = xform3 c_th1c_findbin
+  findFixBin = xform3 c_th1c_findfixbin
+  findFirstBinAbove = xform2 c_th1c_findfirstbinabove
+  findLastBinAbove = xform2 c_th1c_findlastbinabove
+  fitPanel = xform0 c_th1c_fitpanel
+  getNdivisionA = xform1 c_th1c_getndivisiona
+  getAxisColorA = xform1 c_th1c_getaxiscolora
+  getLabelColorA = xform1 c_th1c_getlabelcolora
+  getLabelFontA = xform1 c_th1c_getlabelfonta
+  getLabelOffsetA = xform1 c_th1c_getlabeloffseta
+  getLabelSizeA = xform1 c_th1c_getlabelsizea
+  getTitleFontA = xform1 c_th1c_gettitlefonta
+  getTitleOffsetA = xform1 c_th1c_gettitleoffseta
+  getTitleSizeA = xform1 c_th1c_gettitlesizea
+  getTickLengthA = xform1 c_th1c_getticklengtha
+  getBarOffset = xform0 c_th1c_getbaroffset
+  getBarWidth = xform0 c_th1c_getbarwidth
+  getContour = xform1 c_th1c_getcontour
+  getContourLevel = xform1 c_th1c_getcontourlevel
+  getContourLevelPad = xform1 c_th1c_getcontourlevelpad
+  getBin = xform3 c_th1c_getbin
+  getBinCenter = xform1 c_th1c_getbincenter
+  getBinContent1 = xform1 c_th1c_getbincontent1
+  getBinContent2 = xform2 c_th1c_getbincontent2
+  getBinContent3 = xform3 c_th1c_getbincontent3
+  getBinError1 = xform1 c_th1c_getbinerror1
+  getBinError2 = xform2 c_th1c_getbinerror2
+  getBinError3 = xform3 c_th1c_getbinerror3
+  getBinLowEdge = xform1 c_th1c_getbinlowedge
+  getBinWidth = xform1 c_th1c_getbinwidth
+  getCellContent = xform2 c_th1c_getcellcontent
+  getCellError = xform2 c_th1c_getcellerror
+  getEntries = xform0 c_th1c_getentries
+  getEffectiveEntries = xform0 c_th1c_geteffectiveentries
+  getFunction = xform1 c_th1c_getfunction
+  getDimension = xform0 c_th1c_getdimension
+  getKurtosis = xform1 c_th1c_getkurtosis
+  getLowEdge = xform1 c_th1c_getlowedge
+  getMaximum = xform1 c_th1c_getmaximum
+  getMaximumBin = xform0 c_th1c_getmaximumbin
+  getMaximumStored = xform0 c_th1c_getmaximumstored
+  getMinimum = xform1 c_th1c_getminimum
+  getMinimumBin = xform0 c_th1c_getminimumbin
+  getMinimumStored = xform0 c_th1c_getminimumstored
+  getMean = xform1 c_th1c_getmean
+  getMeanError = xform1 c_th1c_getmeanerror
+  getNbinsX = xform0 c_th1c_getnbinsx
+  getNbinsY = xform0 c_th1c_getnbinsy
+  getNbinsZ = xform0 c_th1c_getnbinsz
+  getQuantiles = xform3 c_th1c_getquantiles
+  getRandom = xform0 c_th1c_getrandom
+  getStats = xform1 c_th1c_getstats
+  getSumOfWeights = xform0 c_th1c_getsumofweights
+  getSumw2 = xform0 c_th1c_getsumw2
+  getSumw2N = xform0 c_th1c_getsumw2n
+  getRMS = xform1 c_th1c_getrms
+  getRMSError = xform1 c_th1c_getrmserror
+  getSkewness = xform1 c_th1c_getskewness
+  integral1 = xform3 c_th1c_integral1
+  interpolate1 = xform1 c_th1c_interpolate1
+  interpolate2 = xform2 c_th1c_interpolate2
+  interpolate3 = xform3 c_th1c_interpolate3
+  kolmogorovTest = xform2 c_th1c_kolmogorovtest
+  labelsDeflate = xform1 c_th1c_labelsdeflate
+  labelsInflate = xform1 c_th1c_labelsinflate
+  labelsOption = xform2 c_th1c_labelsoption
+  multiflyF = xform2 c_th1c_multiflyf
+  multiply = xform5 c_th1c_multiply
+  paint = xform0 c_th1c_paint
+  putStats = xform1 c_th1c_putstats
+  rebin = xform3 c_th1c_rebin
+  rebinAxis = xform2 c_th1c_rebinaxis
+  rebuild = xform1 c_th1c_rebuild
+  recursiveRemove = xform1 c_th1c_recursiveremove
+  reset = xform1 c_th1c_reset
+  resetStats = xform0 c_th1c_resetstats
+  scale = xform2 c_th1c_scale
+  setAxisColorA = xform2 c_th1c_setaxiscolora
+  setAxisRange = xform3 c_th1c_setaxisrange
+  setBarOffset = xform1 c_th1c_setbaroffset
+  setBarWidth = xform1 c_th1c_setbarwidth
+  setBinContent1 = xform2 c_th1c_setbincontent1
+  setBinContent2 = xform3 c_th1c_setbincontent2
+  setBinContent3 = xform4 c_th1c_setbincontent3
+  setBinError1 = xform2 c_th1c_setbinerror1
+  setBinError2 = xform3 c_th1c_setbinerror2
+  setBinError3 = xform4 c_th1c_setbinerror3
+  setBins1 = xform2 c_th1c_setbins1
+  setBins2 = xform4 c_th1c_setbins2
+  setBins3 = xform6 c_th1c_setbins3
+  setBinsLength = xform1 c_th1c_setbinslength
+  setBuffer = xform2 c_th1c_setbuffer
+  setCellContent = xform3 c_th1c_setcellcontent
+  setContent = xform1 c_th1c_setcontent
+  setContour = xform2 c_th1c_setcontour
+  setContourLevel = xform2 c_th1c_setcontourlevel
+  setDirectory = xform1 c_th1c_setdirectory
+  setEntries = xform1 c_th1c_setentries
+  setError = xform1 c_th1c_seterror
+  setLabelColorA = xform2 c_th1c_setlabelcolora
+  setLabelSizeA = xform2 c_th1c_setlabelsizea
+  setLabelFontA = xform2 c_th1c_setlabelfonta
+  setLabelOffsetA = xform2 c_th1c_setlabeloffseta
+  setMaximum = xform1 c_th1c_setmaximum
+  setMinimum = xform1 c_th1c_setminimum
+  setNormFactor = xform1 c_th1c_setnormfactor
+  setStats = xform1 c_th1c_setstats
+  setOption = xform1 c_th1c_setoption
+  setXTitle = xform1 c_th1c_setxtitle
+  setYTitle = xform1 c_th1c_setytitle
+  setZTitle = xform1 c_th1c_setztitle
+  showBackground = xform2 c_th1c_showbackground
+  showPeaks = xform3 c_th1c_showpeaks
+  smooth = xform2 c_th1c_smooth
+  sumw2 = xform0 c_th1c_sumw2
+
+instance ITH1 TH3 where
+  add = xform2 c_th3_add
+  addBinContent = xform2 c_th3_addbincontent
+  chi2Test = xform3 c_th3_chi2test
+  computeIntegral = xform0 c_th3_computeintegral
+  directoryAutoAdd = xform1 c_th3_directoryautoadd
+  distancetoPrimitive = xform2 c_th3_distancetoprimitive
+  divide = xform5 c_th3_divide
+  drawCopy = xform1 c_th3_drawcopy
+  drawNormalized = xform2 c_th3_drawnormalized
+  drawPanel = xform0 c_th3_drawpanel
+  bufferEmpty = xform1 c_th3_bufferempty
+  eval = xform2 c_th3_eval
+  executeEvent = xform3 c_th3_executeevent
+  fFT = xform2 c_th3_fft
+  fill1 = xform1 c_th3_fill1
+  fillN = xform4 c_th3_filln
+  fillRandom = xform2 c_th3_fillrandom
+  findBin = xform3 c_th3_findbin
+  findFixBin = xform3 c_th3_findfixbin
+  findFirstBinAbove = xform2 c_th3_findfirstbinabove
+  findLastBinAbove = xform2 c_th3_findlastbinabove
+  fitPanel = xform0 c_th3_fitpanel
+  getNdivisionA = xform1 c_th3_getndivisiona
+  getAxisColorA = xform1 c_th3_getaxiscolora
+  getLabelColorA = xform1 c_th3_getlabelcolora
+  getLabelFontA = xform1 c_th3_getlabelfonta
+  getLabelOffsetA = xform1 c_th3_getlabeloffseta
+  getLabelSizeA = xform1 c_th3_getlabelsizea
+  getTitleFontA = xform1 c_th3_gettitlefonta
+  getTitleOffsetA = xform1 c_th3_gettitleoffseta
+  getTitleSizeA = xform1 c_th3_gettitlesizea
+  getTickLengthA = xform1 c_th3_getticklengtha
+  getBarOffset = xform0 c_th3_getbaroffset
+  getBarWidth = xform0 c_th3_getbarwidth
+  getContour = xform1 c_th3_getcontour
+  getContourLevel = xform1 c_th3_getcontourlevel
+  getContourLevelPad = xform1 c_th3_getcontourlevelpad
+  getBin = xform3 c_th3_getbin
+  getBinCenter = xform1 c_th3_getbincenter
+  getBinContent1 = xform1 c_th3_getbincontent1
+  getBinContent2 = xform2 c_th3_getbincontent2
+  getBinContent3 = xform3 c_th3_getbincontent3
+  getBinError1 = xform1 c_th3_getbinerror1
+  getBinError2 = xform2 c_th3_getbinerror2
+  getBinError3 = xform3 c_th3_getbinerror3
+  getBinLowEdge = xform1 c_th3_getbinlowedge
+  getBinWidth = xform1 c_th3_getbinwidth
+  getCellContent = xform2 c_th3_getcellcontent
+  getCellError = xform2 c_th3_getcellerror
+  getEntries = xform0 c_th3_getentries
+  getEffectiveEntries = xform0 c_th3_geteffectiveentries
+  getFunction = xform1 c_th3_getfunction
+  getDimension = xform0 c_th3_getdimension
+  getKurtosis = xform1 c_th3_getkurtosis
+  getLowEdge = xform1 c_th3_getlowedge
+  getMaximum = xform1 c_th3_getmaximum
+  getMaximumBin = xform0 c_th3_getmaximumbin
+  getMaximumStored = xform0 c_th3_getmaximumstored
+  getMinimum = xform1 c_th3_getminimum
+  getMinimumBin = xform0 c_th3_getminimumbin
+  getMinimumStored = xform0 c_th3_getminimumstored
+  getMean = xform1 c_th3_getmean
+  getMeanError = xform1 c_th3_getmeanerror
+  getNbinsX = xform0 c_th3_getnbinsx
+  getNbinsY = xform0 c_th3_getnbinsy
+  getNbinsZ = xform0 c_th3_getnbinsz
+  getQuantiles = xform3 c_th3_getquantiles
+  getRandom = xform0 c_th3_getrandom
+  getStats = xform1 c_th3_getstats
+  getSumOfWeights = xform0 c_th3_getsumofweights
+  getSumw2 = xform0 c_th3_getsumw2
+  getSumw2N = xform0 c_th3_getsumw2n
+  getRMS = xform1 c_th3_getrms
+  getRMSError = xform1 c_th3_getrmserror
+  getSkewness = xform1 c_th3_getskewness
+  integral1 = xform3 c_th3_integral1
+  interpolate1 = xform1 c_th3_interpolate1
+  interpolate2 = xform2 c_th3_interpolate2
+  interpolate3 = xform3 c_th3_interpolate3
+  kolmogorovTest = xform2 c_th3_kolmogorovtest
+  labelsDeflate = xform1 c_th3_labelsdeflate
+  labelsInflate = xform1 c_th3_labelsinflate
+  labelsOption = xform2 c_th3_labelsoption
+  multiflyF = xform2 c_th3_multiflyf
+  multiply = xform5 c_th3_multiply
+  paint = xform0 c_th3_paint
+  putStats = xform1 c_th3_putstats
+  rebin = xform3 c_th3_rebin
+  rebinAxis = xform2 c_th3_rebinaxis
+  rebuild = xform1 c_th3_rebuild
+  recursiveRemove = xform1 c_th3_recursiveremove
+  reset = xform1 c_th3_reset
+  resetStats = xform0 c_th3_resetstats
+  scale = xform2 c_th3_scale
+  setAxisColorA = xform2 c_th3_setaxiscolora
+  setAxisRange = xform3 c_th3_setaxisrange
+  setBarOffset = xform1 c_th3_setbaroffset
+  setBarWidth = xform1 c_th3_setbarwidth
+  setBinContent1 = xform2 c_th3_setbincontent1
+  setBinContent2 = xform3 c_th3_setbincontent2
+  setBinContent3 = xform4 c_th3_setbincontent3
+  setBinError1 = xform2 c_th3_setbinerror1
+  setBinError2 = xform3 c_th3_setbinerror2
+  setBinError3 = xform4 c_th3_setbinerror3
+  setBins1 = xform2 c_th3_setbins1
+  setBins2 = xform4 c_th3_setbins2
+  setBins3 = xform6 c_th3_setbins3
+  setBinsLength = xform1 c_th3_setbinslength
+  setBuffer = xform2 c_th3_setbuffer
+  setCellContent = xform3 c_th3_setcellcontent
+  setContent = xform1 c_th3_setcontent
+  setContour = xform2 c_th3_setcontour
+  setContourLevel = xform2 c_th3_setcontourlevel
+  setDirectory = xform1 c_th3_setdirectory
+  setEntries = xform1 c_th3_setentries
+  setError = xform1 c_th3_seterror
+  setLabelColorA = xform2 c_th3_setlabelcolora
+  setLabelSizeA = xform2 c_th3_setlabelsizea
+  setLabelFontA = xform2 c_th3_setlabelfonta
+  setLabelOffsetA = xform2 c_th3_setlabeloffseta
+  setMaximum = xform1 c_th3_setmaximum
+  setMinimum = xform1 c_th3_setminimum
+  setNormFactor = xform1 c_th3_setnormfactor
+  setStats = xform1 c_th3_setstats
+  setOption = xform1 c_th3_setoption
+  setXTitle = xform1 c_th3_setxtitle
+  setYTitle = xform1 c_th3_setytitle
+  setZTitle = xform1 c_th3_setztitle
+  showBackground = xform2 c_th3_showbackground
+  showPeaks = xform3 c_th3_showpeaks
+  smooth = xform2 c_th3_smooth
+  sumw2 = xform0 c_th3_sumw2
+
+instance ITH1 TH2 where
+  add = xform2 c_th2_add
+  addBinContent = xform2 c_th2_addbincontent
+  chi2Test = xform3 c_th2_chi2test
+  computeIntegral = xform0 c_th2_computeintegral
+  directoryAutoAdd = xform1 c_th2_directoryautoadd
+  distancetoPrimitive = xform2 c_th2_distancetoprimitive
+  divide = xform5 c_th2_divide
+  drawCopy = xform1 c_th2_drawcopy
+  drawNormalized = xform2 c_th2_drawnormalized
+  drawPanel = xform0 c_th2_drawpanel
+  bufferEmpty = xform1 c_th2_bufferempty
+  eval = xform2 c_th2_eval
+  executeEvent = xform3 c_th2_executeevent
+  fFT = xform2 c_th2_fft
+  fill1 = xform1 c_th2_fill1
+  fillN = xform4 c_th2_filln
+  fillRandom = xform2 c_th2_fillrandom
+  findBin = xform3 c_th2_findbin
+  findFixBin = xform3 c_th2_findfixbin
+  findFirstBinAbove = xform2 c_th2_findfirstbinabove
+  findLastBinAbove = xform2 c_th2_findlastbinabove
+  fitPanel = xform0 c_th2_fitpanel
+  getNdivisionA = xform1 c_th2_getndivisiona
+  getAxisColorA = xform1 c_th2_getaxiscolora
+  getLabelColorA = xform1 c_th2_getlabelcolora
+  getLabelFontA = xform1 c_th2_getlabelfonta
+  getLabelOffsetA = xform1 c_th2_getlabeloffseta
+  getLabelSizeA = xform1 c_th2_getlabelsizea
+  getTitleFontA = xform1 c_th2_gettitlefonta
+  getTitleOffsetA = xform1 c_th2_gettitleoffseta
+  getTitleSizeA = xform1 c_th2_gettitlesizea
+  getTickLengthA = xform1 c_th2_getticklengtha
+  getBarOffset = xform0 c_th2_getbaroffset
+  getBarWidth = xform0 c_th2_getbarwidth
+  getContour = xform1 c_th2_getcontour
+  getContourLevel = xform1 c_th2_getcontourlevel
+  getContourLevelPad = xform1 c_th2_getcontourlevelpad
+  getBin = xform3 c_th2_getbin
+  getBinCenter = xform1 c_th2_getbincenter
+  getBinContent1 = xform1 c_th2_getbincontent1
+  getBinContent2 = xform2 c_th2_getbincontent2
+  getBinContent3 = xform3 c_th2_getbincontent3
+  getBinError1 = xform1 c_th2_getbinerror1
+  getBinError2 = xform2 c_th2_getbinerror2
+  getBinError3 = xform3 c_th2_getbinerror3
+  getBinLowEdge = xform1 c_th2_getbinlowedge
+  getBinWidth = xform1 c_th2_getbinwidth
+  getCellContent = xform2 c_th2_getcellcontent
+  getCellError = xform2 c_th2_getcellerror
+  getEntries = xform0 c_th2_getentries
+  getEffectiveEntries = xform0 c_th2_geteffectiveentries
+  getFunction = xform1 c_th2_getfunction
+  getDimension = xform0 c_th2_getdimension
+  getKurtosis = xform1 c_th2_getkurtosis
+  getLowEdge = xform1 c_th2_getlowedge
+  getMaximum = xform1 c_th2_getmaximum
+  getMaximumBin = xform0 c_th2_getmaximumbin
+  getMaximumStored = xform0 c_th2_getmaximumstored
+  getMinimum = xform1 c_th2_getminimum
+  getMinimumBin = xform0 c_th2_getminimumbin
+  getMinimumStored = xform0 c_th2_getminimumstored
+  getMean = xform1 c_th2_getmean
+  getMeanError = xform1 c_th2_getmeanerror
+  getNbinsX = xform0 c_th2_getnbinsx
+  getNbinsY = xform0 c_th2_getnbinsy
+  getNbinsZ = xform0 c_th2_getnbinsz
+  getQuantiles = xform3 c_th2_getquantiles
+  getRandom = xform0 c_th2_getrandom
+  getStats = xform1 c_th2_getstats
+  getSumOfWeights = xform0 c_th2_getsumofweights
+  getSumw2 = xform0 c_th2_getsumw2
+  getSumw2N = xform0 c_th2_getsumw2n
+  getRMS = xform1 c_th2_getrms
+  getRMSError = xform1 c_th2_getrmserror
+  getSkewness = xform1 c_th2_getskewness
+  integral1 = xform3 c_th2_integral1
+  interpolate1 = xform1 c_th2_interpolate1
+  interpolate2 = xform2 c_th2_interpolate2
+  interpolate3 = xform3 c_th2_interpolate3
+  kolmogorovTest = xform2 c_th2_kolmogorovtest
+  labelsDeflate = xform1 c_th2_labelsdeflate
+  labelsInflate = xform1 c_th2_labelsinflate
+  labelsOption = xform2 c_th2_labelsoption
+  multiflyF = xform2 c_th2_multiflyf
+  multiply = xform5 c_th2_multiply
+  paint = xform0 c_th2_paint
+  putStats = xform1 c_th2_putstats
+  rebin = xform3 c_th2_rebin
+  rebinAxis = xform2 c_th2_rebinaxis
+  rebuild = xform1 c_th2_rebuild
+  recursiveRemove = xform1 c_th2_recursiveremove
+  reset = xform1 c_th2_reset
+  resetStats = xform0 c_th2_resetstats
+  scale = xform2 c_th2_scale
+  setAxisColorA = xform2 c_th2_setaxiscolora
+  setAxisRange = xform3 c_th2_setaxisrange
+  setBarOffset = xform1 c_th2_setbaroffset
+  setBarWidth = xform1 c_th2_setbarwidth
+  setBinContent1 = xform2 c_th2_setbincontent1
+  setBinContent2 = xform3 c_th2_setbincontent2
+  setBinContent3 = xform4 c_th2_setbincontent3
+  setBinError1 = xform2 c_th2_setbinerror1
+  setBinError2 = xform3 c_th2_setbinerror2
+  setBinError3 = xform4 c_th2_setbinerror3
+  setBins1 = xform2 c_th2_setbins1
+  setBins2 = xform4 c_th2_setbins2
+  setBins3 = xform6 c_th2_setbins3
+  setBinsLength = xform1 c_th2_setbinslength
+  setBuffer = xform2 c_th2_setbuffer
+  setCellContent = xform3 c_th2_setcellcontent
+  setContent = xform1 c_th2_setcontent
+  setContour = xform2 c_th2_setcontour
+  setContourLevel = xform2 c_th2_setcontourlevel
+  setDirectory = xform1 c_th2_setdirectory
+  setEntries = xform1 c_th2_setentries
+  setError = xform1 c_th2_seterror
+  setLabelColorA = xform2 c_th2_setlabelcolora
+  setLabelSizeA = xform2 c_th2_setlabelsizea
+  setLabelFontA = xform2 c_th2_setlabelfonta
+  setLabelOffsetA = xform2 c_th2_setlabeloffseta
+  setMaximum = xform1 c_th2_setmaximum
+  setMinimum = xform1 c_th2_setminimum
+  setNormFactor = xform1 c_th2_setnormfactor
+  setStats = xform1 c_th2_setstats
+  setOption = xform1 c_th2_setoption
+  setXTitle = xform1 c_th2_setxtitle
+  setYTitle = xform1 c_th2_setytitle
+  setZTitle = xform1 c_th2_setztitle
+  showBackground = xform2 c_th2_showbackground
+  showPeaks = xform3 c_th2_showpeaks
+  smooth = xform2 c_th2_smooth
+  sumw2 = xform0 c_th2_sumw2
+
+instance ITH2 TH2S where
+  fill2 = xform2 c_th2s_fill2
+  fillRandom2 = xform2 c_th2s_fillrandom2
+  findFirstBinAbove2 = xform2 c_th2s_findfirstbinabove2
+  findLastBinAbove2 = xform2 c_th2s_findlastbinabove2
+  fitSlicesX = xform6 c_th2s_fitslicesx
+  fitSlicesY = xform6 c_th2s_fitslicesy
+  getCorrelationFactor = xform2 c_th2s_getcorrelationfactor
+  getCovariance = xform2 c_th2s_getcovariance
+  integral2 = xform5 c_th2s_integral2
+  rebinX = xform2 c_th2s_rebinx
+  rebinY = xform2 c_th2s_rebiny
+  rebin2D = xform3 c_th2s_rebin2d
+  setShowProjectionX = xform1 c_th2s_setshowprojectionx
+  setShowProjectionY = xform1 c_th2s_setshowprojectiony
+
+instance ITH2 TH2Poly where
+  fill2 = xform2 c_th2poly_fill2
+  fillRandom2 = xform2 c_th2poly_fillrandom2
+  findFirstBinAbove2 = xform2 c_th2poly_findfirstbinabove2
+  findLastBinAbove2 = xform2 c_th2poly_findlastbinabove2
+  fitSlicesX = xform6 c_th2poly_fitslicesx
+  fitSlicesY = xform6 c_th2poly_fitslicesy
+  getCorrelationFactor = xform2 c_th2poly_getcorrelationfactor
+  getCovariance = xform2 c_th2poly_getcovariance
+  integral2 = xform5 c_th2poly_integral2
+  rebinX = xform2 c_th2poly_rebinx
+  rebinY = xform2 c_th2poly_rebiny
+  rebin2D = xform3 c_th2poly_rebin2d
+  setShowProjectionX = xform1 c_th2poly_setshowprojectionx
+  setShowProjectionY = xform1 c_th2poly_setshowprojectiony
+
+instance ITH2 TH2I where
+  fill2 = xform2 c_th2i_fill2
+  fillRandom2 = xform2 c_th2i_fillrandom2
+  findFirstBinAbove2 = xform2 c_th2i_findfirstbinabove2
+  findLastBinAbove2 = xform2 c_th2i_findlastbinabove2
+  fitSlicesX = xform6 c_th2i_fitslicesx
+  fitSlicesY = xform6 c_th2i_fitslicesy
+  getCorrelationFactor = xform2 c_th2i_getcorrelationfactor
+  getCovariance = xform2 c_th2i_getcovariance
+  integral2 = xform5 c_th2i_integral2
+  rebinX = xform2 c_th2i_rebinx
+  rebinY = xform2 c_th2i_rebiny
+  rebin2D = xform3 c_th2i_rebin2d
+  setShowProjectionX = xform1 c_th2i_setshowprojectionx
+  setShowProjectionY = xform1 c_th2i_setshowprojectiony
+
+instance ITH2 TH2F where
+  fill2 = xform2 c_th2f_fill2
+  fillRandom2 = xform2 c_th2f_fillrandom2
+  findFirstBinAbove2 = xform2 c_th2f_findfirstbinabove2
+  findLastBinAbove2 = xform2 c_th2f_findlastbinabove2
+  fitSlicesX = xform6 c_th2f_fitslicesx
+  fitSlicesY = xform6 c_th2f_fitslicesy
+  getCorrelationFactor = xform2 c_th2f_getcorrelationfactor
+  getCovariance = xform2 c_th2f_getcovariance
+  integral2 = xform5 c_th2f_integral2
+  rebinX = xform2 c_th2f_rebinx
+  rebinY = xform2 c_th2f_rebiny
+  rebin2D = xform3 c_th2f_rebin2d
+  setShowProjectionX = xform1 c_th2f_setshowprojectionx
+  setShowProjectionY = xform1 c_th2f_setshowprojectiony
+
+instance ITH2 TH2D where
+  fill2 = xform2 c_th2d_fill2
+  fillRandom2 = xform2 c_th2d_fillrandom2
+  findFirstBinAbove2 = xform2 c_th2d_findfirstbinabove2
+  findLastBinAbove2 = xform2 c_th2d_findlastbinabove2
+  fitSlicesX = xform6 c_th2d_fitslicesx
+  fitSlicesY = xform6 c_th2d_fitslicesy
+  getCorrelationFactor = xform2 c_th2d_getcorrelationfactor
+  getCovariance = xform2 c_th2d_getcovariance
+  integral2 = xform5 c_th2d_integral2
+  rebinX = xform2 c_th2d_rebinx
+  rebinY = xform2 c_th2d_rebiny
+  rebin2D = xform3 c_th2d_rebin2d
+  setShowProjectionX = xform1 c_th2d_setshowprojectionx
+  setShowProjectionY = xform1 c_th2d_setshowprojectiony
+
+instance ITH2 TH2C where
+  fill2 = xform2 c_th2c_fill2
+  fillRandom2 = xform2 c_th2c_fillrandom2
+  findFirstBinAbove2 = xform2 c_th2c_findfirstbinabove2
+  findLastBinAbove2 = xform2 c_th2c_findlastbinabove2
+  fitSlicesX = xform6 c_th2c_fitslicesx
+  fitSlicesY = xform6 c_th2c_fitslicesy
+  getCorrelationFactor = xform2 c_th2c_getcorrelationfactor
+  getCovariance = xform2 c_th2c_getcovariance
+  integral2 = xform5 c_th2c_integral2
+  rebinX = xform2 c_th2c_rebinx
+  rebinY = xform2 c_th2c_rebiny
+  rebin2D = xform3 c_th2c_rebin2d
+  setShowProjectionX = xform1 c_th2c_setshowprojectionx
+  setShowProjectionY = xform1 c_th2c_setshowprojectiony
+
+instance ITH3 TH3S where
+
+instance ITH3 TH3I where
+
+instance ITH3 TH3F where
+
+instance ITH3 TH3D where
+
+instance ITH3 TH3C where
+
+instance ITLine TGaxis where
+
+instance ITLine TArrow where
+
+instance ITNamed TKey where
+  setName = xform1 c_tkey_setname
+  setNameTitle = xform2 c_tkey_setnametitle
+  setTitle = xform1 c_tkey_settitle
+
+instance ITNamed TRandom where
+  setName = xform1 c_trandom_setname
+  setNameTitle = xform2 c_trandom_setnametitle
+  setTitle = xform1 c_trandom_settitle
+
+instance ITNamed TH3S where
+  setName = xform1 c_th3s_setname
+  setNameTitle = xform2 c_th3s_setnametitle
+  setTitle = xform1 c_th3s_settitle
+
+instance ITNamed TH3I where
+  setName = xform1 c_th3i_setname
+  setNameTitle = xform2 c_th3i_setnametitle
+  setTitle = xform1 c_th3i_settitle
+
+instance ITNamed TH3F where
+  setName = xform1 c_th3f_setname
+  setNameTitle = xform2 c_th3f_setnametitle
+  setTitle = xform1 c_th3f_settitle
+
+instance ITNamed TH3D where
+  setName = xform1 c_th3d_setname
+  setNameTitle = xform2 c_th3d_setnametitle
+  setTitle = xform1 c_th3d_settitle
+
+instance ITNamed TH3C where
+  setName = xform1 c_th3c_setname
+  setNameTitle = xform2 c_th3c_setnametitle
+  setTitle = xform1 c_th3c_settitle
+
+instance ITNamed TH2S where
+  setName = xform1 c_th2s_setname
+  setNameTitle = xform2 c_th2s_setnametitle
+  setTitle = xform1 c_th2s_settitle
+
+instance ITNamed TH2Poly where
+  setName = xform1 c_th2poly_setname
+  setNameTitle = xform2 c_th2poly_setnametitle
+  setTitle = xform1 c_th2poly_settitle
+
+instance ITNamed TH2I where
+  setName = xform1 c_th2i_setname
+  setNameTitle = xform2 c_th2i_setnametitle
+  setTitle = xform1 c_th2i_settitle
+
+instance ITNamed TH2F where
+  setName = xform1 c_th2f_setname
+  setNameTitle = xform2 c_th2f_setnametitle
+  setTitle = xform1 c_th2f_settitle
+
+instance ITNamed TH2D where
+  setName = xform1 c_th2d_setname
+  setNameTitle = xform2 c_th2d_setnametitle
+  setTitle = xform1 c_th2d_settitle
+
+instance ITNamed TH2C where
+  setName = xform1 c_th2c_setname
+  setNameTitle = xform2 c_th2c_setnametitle
+  setTitle = xform1 c_th2c_settitle
+
+instance ITNamed TH1S where
+  setName = xform1 c_th1s_setname
+  setNameTitle = xform2 c_th1s_setnametitle
+  setTitle = xform1 c_th1s_settitle
+
+instance ITNamed TH1I where
+  setName = xform1 c_th1i_setname
+  setNameTitle = xform2 c_th1i_setnametitle
+  setTitle = xform1 c_th1i_settitle
+
+instance ITNamed TH1F where
+  setName = xform1 c_th1f_setname
+  setNameTitle = xform2 c_th1f_setnametitle
+  setTitle = xform1 c_th1f_settitle
+
+instance ITNamed TH1D where
+  setName = xform1 c_th1d_setname
+  setNameTitle = xform2 c_th1d_setnametitle
+  setTitle = xform1 c_th1d_settitle
+
+instance ITNamed TH1C where
+  setName = xform1 c_th1c_setname
+  setNameTitle = xform2 c_th1c_setnametitle
+  setTitle = xform1 c_th1c_settitle
+
+instance ITNamed TH3 where
+  setName = xform1 c_th3_setname
+  setNameTitle = xform2 c_th3_setnametitle
+  setTitle = xform1 c_th3_settitle
+
+instance ITNamed TH2 where
+  setName = xform1 c_th2_setname
+  setNameTitle = xform2 c_th2_setnametitle
+  setTitle = xform1 c_th2_settitle
+
+instance ITNamed TH1 where
+  setName = xform1 c_th1_setname
+  setNameTitle = xform2 c_th1_setnametitle
+  setTitle = xform1 c_th1_settitle
+
+instance ITNamed TBranch where
+  setName = xform1 c_tbranch_setname
+  setNameTitle = xform2 c_tbranch_setnametitle
+  setTitle = xform1 c_tbranch_settitle
+
+instance ITNamed TFile where
+  setName = xform1 c_tfile_setname
+  setNameTitle = xform2 c_tfile_setnametitle
+  setTitle = xform1 c_tfile_settitle
+
+instance ITNamed TDirectoryFile where
+  setName = xform1 c_tdirectoryfile_setname
+  setNameTitle = xform2 c_tdirectoryfile_setnametitle
+  setTitle = xform1 c_tdirectoryfile_settitle
+
+instance ITNamed TDirectory where
+  setName = xform1 c_tdirectory_setname
+  setNameTitle = xform2 c_tdirectory_setnametitle
+  setTitle = xform1 c_tdirectory_settitle
+
+instance ITNamed TText where
+  setName = xform1 c_ttext_setname
+  setNameTitle = xform2 c_ttext_setnametitle
+  setTitle = xform1 c_ttext_settitle
+
+instance ITNamed TLatex where
+  setName = xform1 c_tlatex_setname
+  setNameTitle = xform2 c_tlatex_setnametitle
+  setTitle = xform1 c_tlatex_settitle
+
+instance ITNamed TAxis where
+  setName = xform1 c_taxis_setname
+  setNameTitle = xform2 c_taxis_setnametitle
+  setTitle = xform1 c_taxis_settitle
+
+instance ITNamed TEfficiency where
+  setName = xform1 c_tefficiency_setname
+  setNameTitle = xform2 c_tefficiency_setnametitle
+  setTitle = xform1 c_tefficiency_settitle
+
+instance ITNamed TTreeSQL where
+  setName = xform1 c_ttreesql_setname
+  setNameTitle = xform2 c_ttreesql_setnametitle
+  setTitle = xform1 c_ttreesql_settitle
+
+instance ITNamed TNtupleD where
+  setName = xform1 c_tntupled_setname
+  setNameTitle = xform2 c_tntupled_setnametitle
+  setTitle = xform1 c_tntupled_settitle
+
+instance ITNamed TNtuple where
+  setName = xform1 c_tntuple_setname
+  setNameTitle = xform2 c_tntuple_setnametitle
+  setTitle = xform1 c_tntuple_settitle
+
+instance ITNamed TChain where
+  setName = xform1 c_tchain_setname
+  setNameTitle = xform2 c_tchain_setnametitle
+  setTitle = xform1 c_tchain_settitle
+
+instance ITNamed TTree where
+  setName = xform1 c_ttree_setname
+  setNameTitle = xform2 c_ttree_setnametitle
+  setTitle = xform1 c_ttree_settitle
+
+instance ITNamed TXTRU where
+  setName = xform1 c_txtru_setname
+  setNameTitle = xform2 c_txtru_setnametitle
+  setTitle = xform1 c_txtru_settitle
+
+instance ITNamed TSPHE where
+  setName = xform1 c_tsphe_setname
+  setNameTitle = xform2 c_tsphe_setnametitle
+  setTitle = xform1 c_tsphe_settitle
+
+instance ITNamed TPCON where
+  setName = xform1 c_tpcon_setname
+  setNameTitle = xform2 c_tpcon_setnametitle
+  setTitle = xform1 c_tpcon_settitle
+
+instance ITNamed TTUBE where
+  setName = xform1 c_ttube_setname
+  setNameTitle = xform2 c_ttube_setnametitle
+  setTitle = xform1 c_ttube_settitle
+
+instance ITNamed TBRIK where
+  setName = xform1 c_tbrik_setname
+  setNameTitle = xform2 c_tbrik_setnametitle
+  setTitle = xform1 c_tbrik_settitle
+
+instance ITNamed TShape where
+  setName = xform1 c_tshape_setname
+  setNameTitle = xform2 c_tshape_setnametitle
+  setTitle = xform1 c_tshape_settitle
+
+instance ITNamed TGraphQQ where
+  setName = xform1 c_tgraphqq_setname
+  setNameTitle = xform2 c_tgraphqq_setnametitle
+  setTitle = xform1 c_tgraphqq_settitle
+
+instance ITNamed TGraphPolar where
+  setName = xform1 c_tgraphpolar_setname
+  setNameTitle = xform2 c_tgraphpolar_setnametitle
+  setTitle = xform1 c_tgraphpolar_settitle
+
+instance ITNamed TGraphErrors where
+  setName = xform1 c_tgrapherrors_setname
+  setNameTitle = xform2 c_tgrapherrors_setnametitle
+  setTitle = xform1 c_tgrapherrors_settitle
+
+instance ITNamed TGraphBentErrors where
+  setName = xform1 c_tgraphbenterrors_setname
+  setNameTitle = xform2 c_tgraphbenterrors_setnametitle
+  setTitle = xform1 c_tgraphbenterrors_settitle
+
+instance ITNamed TCutG where
+  setName = xform1 c_tcutg_setname
+  setNameTitle = xform2 c_tcutg_setnametitle
+  setTitle = xform1 c_tcutg_settitle
+
+instance ITNamed TGraphAsymmErrors where
+  setName = xform1 c_tgraphasymmerrors_setname
+  setNameTitle = xform2 c_tgraphasymmerrors_setnametitle
+  setTitle = xform1 c_tgraphasymmerrors_settitle
+
+instance ITNamed TGraph where
+  setName = xform1 c_tgraph_setname
+  setNameTitle = xform2 c_tgraph_setnametitle
+  setTitle = xform1 c_tgraph_settitle
+
+instance ITNamed TF1 where
+  setName = xform1 c_tf1_setname
+  setNameTitle = xform2 c_tf1_setnametitle
+  setTitle = xform1 c_tf1_settitle
+
+instance ITNamed THStack where
+  setName = xform1 c_thstack_setname
+  setNameTitle = xform2 c_thstack_setnametitle
+  setTitle = xform1 c_thstack_settitle
+
+instance ITNamed TAttParticle where
+  setName = xform1 c_tattparticle_setname
+  setNameTitle = xform2 c_tattparticle_setnametitle
+  setTitle = xform1 c_tattparticle_settitle
+
+instance ITNamed TFormula where
+  setName = xform1 c_tformula_setname
+  setNameTitle = xform2 c_tformula_setnametitle
+  setTitle = xform1 c_tformula_settitle
+
+instance ITNamed TClass where
+  setName = xform1 c_tclass_setname
+  setNameTitle = xform2 c_tclass_setnametitle
+  setTitle = xform1 c_tclass_settitle
+
+
+
+
+
+instance ITObject TKey where
+  getName = xform0 c_tkey_getname
+  draw = xform1 c_tkey_draw
+  findObject = xform1 c_tkey_findobject
+  saveAs = xform2 c_tkey_saveas
+  write = xform3 c_tkey_write
+  isA = xform0 c_tkey_isa
+  printObj = xform1 c_tkey_printobj
+
+instance ITObject TList where
+  getName = xform0 c_tlist_getname
+  draw = xform1 c_tlist_draw
+  findObject = xform1 c_tlist_findobject
+  saveAs = xform2 c_tlist_saveas
+  write = xform3 c_tlist_write
+  isA = xform0 c_tlist_isa
+  printObj = xform1 c_tlist_printobj
+
+instance ITObject TObjArray where
+  getName = xform0 c_tobjarray_getname
+  draw = xform1 c_tobjarray_draw
+  findObject = xform1 c_tobjarray_findobject
+  saveAs = xform2 c_tobjarray_saveas
+  write = xform3 c_tobjarray_write
+  isA = xform0 c_tobjarray_isa
+  printObj = xform1 c_tobjarray_printobj
+
+instance ITObject TSeqCollection where
+  getName = xform0 c_tseqcollection_getname
+  draw = xform1 c_tseqcollection_draw
+  findObject = xform1 c_tseqcollection_findobject
+  saveAs = xform2 c_tseqcollection_saveas
+  write = xform3 c_tseqcollection_write
+  isA = xform0 c_tseqcollection_isa
+  printObj = xform1 c_tseqcollection_printobj
+
+instance ITObject TCollection where
+  getName = xform0 c_tcollection_getname
+  draw = xform1 c_tcollection_draw
+  findObject = xform1 c_tcollection_findobject
+  saveAs = xform2 c_tcollection_saveas
+  write = xform3 c_tcollection_write
+  isA = xform0 c_tcollection_isa
+  printObj = xform1 c_tcollection_printobj
+
+instance ITObject TRandom where
+  getName = xform0 c_trandom_getname
+  draw = xform1 c_trandom_draw
+  findObject = xform1 c_trandom_findobject
+  saveAs = xform2 c_trandom_saveas
+  write = xform3 c_trandom_write
+  isA = xform0 c_trandom_isa
+  printObj = xform1 c_trandom_printobj
+
+instance ITObject TRint where
+  getName = xform0 c_trint_getname
+  draw = xform1 c_trint_draw
+  findObject = xform1 c_trint_findobject
+  saveAs = xform2 c_trint_saveas
+  write = xform3 c_trint_write
+  isA = xform0 c_trint_isa
+  printObj = xform1 c_trint_printobj
+
+instance ITObject TApplication where
+  getName = xform0 c_tapplication_getname
+  draw = xform1 c_tapplication_draw
+  findObject = xform1 c_tapplication_findobject
+  saveAs = xform2 c_tapplication_saveas
+  write = xform3 c_tapplication_write
+  isA = xform0 c_tapplication_isa
+  printObj = xform1 c_tapplication_printobj
+
+instance ITObject TSlider where
+  getName = xform0 c_tslider_getname
+  draw = xform1 c_tslider_draw
+  findObject = xform1 c_tslider_findobject
+  saveAs = xform2 c_tslider_saveas
+  write = xform3 c_tslider_write
+  isA = xform0 c_tslider_isa
+  printObj = xform1 c_tslider_printobj
+
+instance ITObject TEvePad where
+  getName = xform0 c_tevepad_getname
+  draw = xform1 c_tevepad_draw
+  findObject = xform1 c_tevepad_findobject
+  saveAs = xform2 c_tevepad_saveas
+  write = xform3 c_tevepad_write
+  isA = xform0 c_tevepad_isa
+  printObj = xform1 c_tevepad_printobj
+
+instance ITObject TInspectCanvas where
+  getName = xform0 c_tinspectcanvas_getname
+  draw = xform1 c_tinspectcanvas_draw
+  findObject = xform1 c_tinspectcanvas_findobject
+  saveAs = xform2 c_tinspectcanvas_saveas
+  write = xform3 c_tinspectcanvas_write
+  isA = xform0 c_tinspectcanvas_isa
+  printObj = xform1 c_tinspectcanvas_printobj
+
+instance ITObject TDialogCanvas where
+  getName = xform0 c_tdialogcanvas_getname
+  draw = xform1 c_tdialogcanvas_draw
+  findObject = xform1 c_tdialogcanvas_findobject
+  saveAs = xform2 c_tdialogcanvas_saveas
+  write = xform3 c_tdialogcanvas_write
+  isA = xform0 c_tdialogcanvas_isa
+  printObj = xform1 c_tdialogcanvas_printobj
+
+instance ITObject TCanvas where
+  getName = xform0 c_tcanvas_getname
+  draw = xform1 c_tcanvas_draw
+  findObject = xform1 c_tcanvas_findobject
+  saveAs = xform2 c_tcanvas_saveas
+  write = xform3 c_tcanvas_write
+  isA = xform0 c_tcanvas_isa
+  printObj = xform1 c_tcanvas_printobj
+
+instance ITObject TGroupButton where
+  getName = xform0 c_tgroupbutton_getname
+  draw = xform1 c_tgroupbutton_draw
+  findObject = xform1 c_tgroupbutton_findobject
+  saveAs = xform2 c_tgroupbutton_saveas
+  write = xform3 c_tgroupbutton_write
+  isA = xform0 c_tgroupbutton_isa
+  printObj = xform1 c_tgroupbutton_printobj
+
+instance ITObject TButton where
+  getName = xform0 c_tbutton_getname
+  draw = xform1 c_tbutton_draw
+  findObject = xform1 c_tbutton_findobject
+  saveAs = xform2 c_tbutton_saveas
+  write = xform3 c_tbutton_write
+  isA = xform0 c_tbutton_isa
+  printObj = xform1 c_tbutton_printobj
+
+instance ITObject TPad where
+  getName = xform0 c_tpad_getname
+  draw = xform1 c_tpad_draw
+  findObject = xform1 c_tpad_findobject
+  saveAs = xform2 c_tpad_saveas
+  write = xform3 c_tpad_write
+  isA = xform0 c_tpad_isa
+  printObj = xform1 c_tpad_printobj
+
+instance ITObject TVirtualPad where
+  getName = xform0 c_tvirtualpad_getname
+  draw = xform1 c_tvirtualpad_draw
+  findObject = xform1 c_tvirtualpad_findobject
+  saveAs = xform2 c_tvirtualpad_saveas
+  write = xform3 c_tvirtualpad_write
+  isA = xform0 c_tvirtualpad_isa
+  printObj = xform1 c_tvirtualpad_printobj
+
+instance ITObject TH3S where
+  getName = xform0 c_th3s_getname
+  draw = xform1 c_th3s_draw
+  findObject = xform1 c_th3s_findobject
+  saveAs = xform2 c_th3s_saveas
+  write = xform3 c_th3s_write
+  isA = xform0 c_th3s_isa
+  printObj = xform1 c_th3s_printobj
+
+instance ITObject TH3I where
+  getName = xform0 c_th3i_getname
+  draw = xform1 c_th3i_draw
+  findObject = xform1 c_th3i_findobject
+  saveAs = xform2 c_th3i_saveas
+  write = xform3 c_th3i_write
+  isA = xform0 c_th3i_isa
+  printObj = xform1 c_th3i_printobj
+
+instance ITObject TH3F where
+  getName = xform0 c_th3f_getname
+  draw = xform1 c_th3f_draw
+  findObject = xform1 c_th3f_findobject
+  saveAs = xform2 c_th3f_saveas
+  write = xform3 c_th3f_write
+  isA = xform0 c_th3f_isa
+  printObj = xform1 c_th3f_printobj
+
+instance ITObject TH3D where
+  getName = xform0 c_th3d_getname
+  draw = xform1 c_th3d_draw
+  findObject = xform1 c_th3d_findobject
+  saveAs = xform2 c_th3d_saveas
+  write = xform3 c_th3d_write
+  isA = xform0 c_th3d_isa
+  printObj = xform1 c_th3d_printobj
+
+instance ITObject TH3C where
+  getName = xform0 c_th3c_getname
+  draw = xform1 c_th3c_draw
+  findObject = xform1 c_th3c_findobject
+  saveAs = xform2 c_th3c_saveas
+  write = xform3 c_th3c_write
+  isA = xform0 c_th3c_isa
+  printObj = xform1 c_th3c_printobj
+
+instance ITObject TH2S where
+  getName = xform0 c_th2s_getname
+  draw = xform1 c_th2s_draw
+  findObject = xform1 c_th2s_findobject
+  saveAs = xform2 c_th2s_saveas
+  write = xform3 c_th2s_write
+  isA = xform0 c_th2s_isa
+  printObj = xform1 c_th2s_printobj
+
+instance ITObject TH2Poly where
+  getName = xform0 c_th2poly_getname
+  draw = xform1 c_th2poly_draw
+  findObject = xform1 c_th2poly_findobject
+  saveAs = xform2 c_th2poly_saveas
+  write = xform3 c_th2poly_write
+  isA = xform0 c_th2poly_isa
+  printObj = xform1 c_th2poly_printobj
+
+instance ITObject TH2I where
+  getName = xform0 c_th2i_getname
+  draw = xform1 c_th2i_draw
+  findObject = xform1 c_th2i_findobject
+  saveAs = xform2 c_th2i_saveas
+  write = xform3 c_th2i_write
+  isA = xform0 c_th2i_isa
+  printObj = xform1 c_th2i_printobj
+
+instance ITObject TH2F where
+  getName = xform0 c_th2f_getname
+  draw = xform1 c_th2f_draw
+  findObject = xform1 c_th2f_findobject
+  saveAs = xform2 c_th2f_saveas
+  write = xform3 c_th2f_write
+  isA = xform0 c_th2f_isa
+  printObj = xform1 c_th2f_printobj
+
+instance ITObject TH2D where
+  getName = xform0 c_th2d_getname
+  draw = xform1 c_th2d_draw
+  findObject = xform1 c_th2d_findobject
+  saveAs = xform2 c_th2d_saveas
+  write = xform3 c_th2d_write
+  isA = xform0 c_th2d_isa
+  printObj = xform1 c_th2d_printobj
+
+instance ITObject TH2C where
+  getName = xform0 c_th2c_getname
+  draw = xform1 c_th2c_draw
+  findObject = xform1 c_th2c_findobject
+  saveAs = xform2 c_th2c_saveas
+  write = xform3 c_th2c_write
+  isA = xform0 c_th2c_isa
+  printObj = xform1 c_th2c_printobj
+
+instance ITObject TH1S where
+  getName = xform0 c_th1s_getname
+  draw = xform1 c_th1s_draw
+  findObject = xform1 c_th1s_findobject
+  saveAs = xform2 c_th1s_saveas
+  write = xform3 c_th1s_write
+  isA = xform0 c_th1s_isa
+  printObj = xform1 c_th1s_printobj
+
+instance ITObject TH1I where
+  getName = xform0 c_th1i_getname
+  draw = xform1 c_th1i_draw
+  findObject = xform1 c_th1i_findobject
+  saveAs = xform2 c_th1i_saveas
+  write = xform3 c_th1i_write
+  isA = xform0 c_th1i_isa
+  printObj = xform1 c_th1i_printobj
+
+instance ITObject TH1F where
+  getName = xform0 c_th1f_getname
+  draw = xform1 c_th1f_draw
+  findObject = xform1 c_th1f_findobject
+  saveAs = xform2 c_th1f_saveas
+  write = xform3 c_th1f_write
+  isA = xform0 c_th1f_isa
+  printObj = xform1 c_th1f_printobj
+
+instance ITObject TH1D where
+  getName = xform0 c_th1d_getname
+  draw = xform1 c_th1d_draw
+  findObject = xform1 c_th1d_findobject
+  saveAs = xform2 c_th1d_saveas
+  write = xform3 c_th1d_write
+  isA = xform0 c_th1d_isa
+  printObj = xform1 c_th1d_printobj
+
+instance ITObject TH1C where
+  getName = xform0 c_th1c_getname
+  draw = xform1 c_th1c_draw
+  findObject = xform1 c_th1c_findobject
+  saveAs = xform2 c_th1c_saveas
+  write = xform3 c_th1c_write
+  isA = xform0 c_th1c_isa
+  printObj = xform1 c_th1c_printobj
+
+instance ITObject TH3 where
+  getName = xform0 c_th3_getname
+  draw = xform1 c_th3_draw
+  findObject = xform1 c_th3_findobject
+  saveAs = xform2 c_th3_saveas
+  write = xform3 c_th3_write
+  isA = xform0 c_th3_isa
+  printObj = xform1 c_th3_printobj
+
+instance ITObject TH2 where
+  getName = xform0 c_th2_getname
+  draw = xform1 c_th2_draw
+  findObject = xform1 c_th2_findobject
+  saveAs = xform2 c_th2_saveas
+  write = xform3 c_th2_write
+  isA = xform0 c_th2_isa
+  printObj = xform1 c_th2_printobj
+
+instance ITObject TH1 where
+  getName = xform0 c_th1_getname
+  draw = xform1 c_th1_draw
+  findObject = xform1 c_th1_findobject
+  saveAs = xform2 c_th1_saveas
+  write = xform3 c_th1_write
+  isA = xform0 c_th1_isa
+  printObj = xform1 c_th1_printobj
+
+instance ITObject TTreePlayer where
+  getName = xform0 c_ttreeplayer_getname
+  draw = xform1 c_ttreeplayer_draw
+  findObject = xform1 c_ttreeplayer_findobject
+  saveAs = xform2 c_ttreeplayer_saveas
+  write = xform3 c_ttreeplayer_write
+  isA = xform0 c_ttreeplayer_isa
+  printObj = xform1 c_ttreeplayer_printobj
+
+instance ITObject TVirtualTreePlayer where
+  getName = xform0 c_tvirtualtreeplayer_getname
+  draw = xform1 c_tvirtualtreeplayer_draw
+  findObject = xform1 c_tvirtualtreeplayer_findobject
+  saveAs = xform2 c_tvirtualtreeplayer_saveas
+  write = xform3 c_tvirtualtreeplayer_write
+  isA = xform0 c_tvirtualtreeplayer_isa
+  printObj = xform1 c_tvirtualtreeplayer_printobj
+
+instance ITObject TBranch where
+  getName = xform0 c_tbranch_getname
+  draw = xform1 c_tbranch_draw
+  findObject = xform1 c_tbranch_findobject
+  saveAs = xform2 c_tbranch_saveas
+  write = xform3 c_tbranch_write
+  isA = xform0 c_tbranch_isa
+  printObj = xform1 c_tbranch_printobj
+
+instance ITObject TFile where
+  getName = xform0 c_tfile_getname
+  draw = xform1 c_tfile_draw
+  findObject = xform1 c_tfile_findobject
+  saveAs = xform2 c_tfile_saveas
+  write = xform3 c_tfile_write
+  isA = xform0 c_tfile_isa
+  printObj = xform1 c_tfile_printobj
+
+instance ITObject TDirectoryFile where
+  getName = xform0 c_tdirectoryfile_getname
+  draw = xform1 c_tdirectoryfile_draw
+  findObject = xform1 c_tdirectoryfile_findobject
+  saveAs = xform2 c_tdirectoryfile_saveas
+  write = xform3 c_tdirectoryfile_write
+  isA = xform0 c_tdirectoryfile_isa
+  printObj = xform1 c_tdirectoryfile_printobj
+
+instance ITObject TDirectory where
+  getName = xform0 c_tdirectory_getname
+  draw = xform1 c_tdirectory_draw
+  findObject = xform1 c_tdirectory_findobject
+  saveAs = xform2 c_tdirectory_saveas
+  write = xform3 c_tdirectory_write
+  isA = xform0 c_tdirectory_isa
+  printObj = xform1 c_tdirectory_printobj
+
+instance ITObject TText where
+  getName = xform0 c_ttext_getname
+  draw = xform1 c_ttext_draw
+  findObject = xform1 c_ttext_findobject
+  saveAs = xform2 c_ttext_saveas
+  write = xform3 c_ttext_write
+  isA = xform0 c_ttext_isa
+  printObj = xform1 c_ttext_printobj
+
+instance ITObject TLatex where
+  getName = xform0 c_tlatex_getname
+  draw = xform1 c_tlatex_draw
+  findObject = xform1 c_tlatex_findobject
+  saveAs = xform2 c_tlatex_saveas
+  write = xform3 c_tlatex_write
+  isA = xform0 c_tlatex_isa
+  printObj = xform1 c_tlatex_printobj
+
+instance ITObject TAxis where
+  getName = xform0 c_taxis_getname
+  draw = xform1 c_taxis_draw
+  findObject = xform1 c_taxis_findobject
+  saveAs = xform2 c_taxis_saveas
+  write = xform3 c_taxis_write
+  isA = xform0 c_taxis_isa
+  printObj = xform1 c_taxis_printobj
+
+instance ITObject TEfficiency where
+  getName = xform0 c_tefficiency_getname
+  draw = xform1 c_tefficiency_draw
+  findObject = xform1 c_tefficiency_findobject
+  saveAs = xform2 c_tefficiency_saveas
+  write = xform3 c_tefficiency_write
+  isA = xform0 c_tefficiency_isa
+  printObj = xform1 c_tefficiency_printobj
+
+instance ITObject TCurlyArc where
+  getName = xform0 c_tcurlyarc_getname
+  draw = xform1 c_tcurlyarc_draw
+  findObject = xform1 c_tcurlyarc_findobject
+  saveAs = xform2 c_tcurlyarc_saveas
+  write = xform3 c_tcurlyarc_write
+  isA = xform0 c_tcurlyarc_isa
+  printObj = xform1 c_tcurlyarc_printobj
+
+instance ITObject TCurlyLine where
+  getName = xform0 c_tcurlyline_getname
+  draw = xform1 c_tcurlyline_draw
+  findObject = xform1 c_tcurlyline_findobject
+  saveAs = xform2 c_tcurlyline_saveas
+  write = xform3 c_tcurlyline_write
+  isA = xform0 c_tcurlyline_isa
+  printObj = xform1 c_tcurlyline_printobj
+
+instance ITObject TPolyLine where
+  getName = xform0 c_tpolyline_getname
+  draw = xform1 c_tpolyline_draw
+  findObject = xform1 c_tpolyline_findobject
+  saveAs = xform2 c_tpolyline_saveas
+  write = xform3 c_tpolyline_write
+  isA = xform0 c_tpolyline_isa
+  printObj = xform1 c_tpolyline_printobj
+
+instance ITObject TTreeSQL where
+  getName = xform0 c_ttreesql_getname
+  draw = xform1 c_ttreesql_draw
+  findObject = xform1 c_ttreesql_findobject
+  saveAs = xform2 c_ttreesql_saveas
+  write = xform3 c_ttreesql_write
+  isA = xform0 c_ttreesql_isa
+  printObj = xform1 c_ttreesql_printobj
+
+instance ITObject TNtupleD where
+  getName = xform0 c_tntupled_getname
+  draw = xform1 c_tntupled_draw
+  findObject = xform1 c_tntupled_findobject
+  saveAs = xform2 c_tntupled_saveas
+  write = xform3 c_tntupled_write
+  isA = xform0 c_tntupled_isa
+  printObj = xform1 c_tntupled_printobj
+
+instance ITObject TNtuple where
+  getName = xform0 c_tntuple_getname
+  draw = xform1 c_tntuple_draw
+  findObject = xform1 c_tntuple_findobject
+  saveAs = xform2 c_tntuple_saveas
+  write = xform3 c_tntuple_write
+  isA = xform0 c_tntuple_isa
+  printObj = xform1 c_tntuple_printobj
+
+instance ITObject TChain where
+  getName = xform0 c_tchain_getname
+  draw = xform1 c_tchain_draw
+  findObject = xform1 c_tchain_findobject
+  saveAs = xform2 c_tchain_saveas
+  write = xform3 c_tchain_write
+  isA = xform0 c_tchain_isa
+  printObj = xform1 c_tchain_printobj
+
+instance ITObject TTree where
+  getName = xform0 c_ttree_getname
+  draw = xform1 c_ttree_draw
+  findObject = xform1 c_ttree_findobject
+  saveAs = xform2 c_ttree_saveas
+  write = xform3 c_ttree_write
+  isA = xform0 c_ttree_isa
+  printObj = xform1 c_ttree_printobj
+
+instance ITObject TSliderBox where
+  getName = xform0 c_tsliderbox_getname
+  draw = xform1 c_tsliderbox_draw
+  findObject = xform1 c_tsliderbox_findobject
+  saveAs = xform2 c_tsliderbox_saveas
+  write = xform3 c_tsliderbox_write
+  isA = xform0 c_tsliderbox_isa
+  printObj = xform1 c_tsliderbox_printobj
+
+instance ITObject TFrame where
+  getName = xform0 c_tframe_getname
+  draw = xform1 c_tframe_draw
+  findObject = xform1 c_tframe_findobject
+  saveAs = xform2 c_tframe_saveas
+  write = xform3 c_tframe_write
+  isA = xform0 c_tframe_isa
+  printObj = xform1 c_tframe_printobj
+
+instance ITObject TWbox where
+  getName = xform0 c_twbox_getname
+  draw = xform1 c_twbox_draw
+  findObject = xform1 c_twbox_findobject
+  saveAs = xform2 c_twbox_saveas
+  write = xform3 c_twbox_write
+  isA = xform0 c_twbox_isa
+  printObj = xform1 c_twbox_printobj
+
+instance ITObject TPaveClass where
+  getName = xform0 c_tpaveclass_getname
+  draw = xform1 c_tpaveclass_draw
+  findObject = xform1 c_tpaveclass_findobject
+  saveAs = xform2 c_tpaveclass_saveas
+  write = xform3 c_tpaveclass_write
+  isA = xform0 c_tpaveclass_isa
+  printObj = xform1 c_tpaveclass_printobj
+
+instance ITObject TPaveLabel where
+  getName = xform0 c_tpavelabel_getname
+  draw = xform1 c_tpavelabel_draw
+  findObject = xform1 c_tpavelabel_findobject
+  saveAs = xform2 c_tpavelabel_saveas
+  write = xform3 c_tpavelabel_write
+  isA = xform0 c_tpavelabel_isa
+  printObj = xform1 c_tpavelabel_printobj
+
+instance ITObject TLegendEntry where
+  getName = xform0 c_tlegendentry_getname
+  draw = xform1 c_tlegendentry_draw
+  findObject = xform1 c_tlegendentry_findobject
+  saveAs = xform2 c_tlegendentry_saveas
+  write = xform3 c_tlegendentry_write
+  isA = xform0 c_tlegendentry_isa
+  printObj = xform1 c_tlegendentry_printobj
+
+instance ITObject TLegend where
+  getName = xform0 c_tlegend_getname
+  draw = xform1 c_tlegend_draw
+  findObject = xform1 c_tlegend_findobject
+  saveAs = xform2 c_tlegend_saveas
+  write = xform3 c_tlegend_write
+  isA = xform0 c_tlegend_isa
+  printObj = xform1 c_tlegend_printobj
+
+instance ITObject TPavesText where
+  getName = xform0 c_tpavestext_getname
+  draw = xform1 c_tpavestext_draw
+  findObject = xform1 c_tpavestext_findobject
+  saveAs = xform2 c_tpavestext_saveas
+  write = xform3 c_tpavestext_write
+  isA = xform0 c_tpavestext_isa
+  printObj = xform1 c_tpavestext_printobj
+
+instance ITObject TPaveStats where
+  getName = xform0 c_tpavestats_getname
+  draw = xform1 c_tpavestats_draw
+  findObject = xform1 c_tpavestats_findobject
+  saveAs = xform2 c_tpavestats_saveas
+  write = xform3 c_tpavestats_write
+  isA = xform0 c_tpavestats_isa
+  printObj = xform1 c_tpavestats_printobj
+
+instance ITObject TDiamond where
+  getName = xform0 c_tdiamond_getname
+  draw = xform1 c_tdiamond_draw
+  findObject = xform1 c_tdiamond_findobject
+  saveAs = xform2 c_tdiamond_saveas
+  write = xform3 c_tdiamond_write
+  isA = xform0 c_tdiamond_isa
+  printObj = xform1 c_tdiamond_printobj
+
+instance ITObject TPaveText where
+  getName = xform0 c_tpavetext_getname
+  draw = xform1 c_tpavetext_draw
+  findObject = xform1 c_tpavetext_findobject
+  saveAs = xform2 c_tpavetext_saveas
+  write = xform3 c_tpavetext_write
+  isA = xform0 c_tpavetext_isa
+  printObj = xform1 c_tpavetext_printobj
+
+instance ITObject TPave where
+  getName = xform0 c_tpave_getname
+  draw = xform1 c_tpave_draw
+  findObject = xform1 c_tpave_findobject
+  saveAs = xform2 c_tpave_saveas
+  write = xform3 c_tpave_write
+  isA = xform0 c_tpave_isa
+  printObj = xform1 c_tpave_printobj
+
+instance ITObject TBox where
+  getName = xform0 c_tbox_getname
+  draw = xform1 c_tbox_draw
+  findObject = xform1 c_tbox_findobject
+  saveAs = xform2 c_tbox_saveas
+  write = xform3 c_tbox_write
+  isA = xform0 c_tbox_isa
+  printObj = xform1 c_tbox_printobj
+
+instance ITObject TXTRU where
+  getName = xform0 c_txtru_getname
+  draw = xform1 c_txtru_draw
+  findObject = xform1 c_txtru_findobject
+  saveAs = xform2 c_txtru_saveas
+  write = xform3 c_txtru_write
+  isA = xform0 c_txtru_isa
+  printObj = xform1 c_txtru_printobj
+
+instance ITObject TSPHE where
+  getName = xform0 c_tsphe_getname
+  draw = xform1 c_tsphe_draw
+  findObject = xform1 c_tsphe_findobject
+  saveAs = xform2 c_tsphe_saveas
+  write = xform3 c_tsphe_write
+  isA = xform0 c_tsphe_isa
+  printObj = xform1 c_tsphe_printobj
+
+instance ITObject TPCON where
+  getName = xform0 c_tpcon_getname
+  draw = xform1 c_tpcon_draw
+  findObject = xform1 c_tpcon_findobject
+  saveAs = xform2 c_tpcon_saveas
+  write = xform3 c_tpcon_write
+  isA = xform0 c_tpcon_isa
+  printObj = xform1 c_tpcon_printobj
+
+instance ITObject TTUBE where
+  getName = xform0 c_ttube_getname
+  draw = xform1 c_ttube_draw
+  findObject = xform1 c_ttube_findobject
+  saveAs = xform2 c_ttube_saveas
+  write = xform3 c_ttube_write
+  isA = xform0 c_ttube_isa
+  printObj = xform1 c_ttube_printobj
+
+instance ITObject TBRIK where
+  getName = xform0 c_tbrik_getname
+  draw = xform1 c_tbrik_draw
+  findObject = xform1 c_tbrik_findobject
+  saveAs = xform2 c_tbrik_saveas
+  write = xform3 c_tbrik_write
+  isA = xform0 c_tbrik_isa
+  printObj = xform1 c_tbrik_printobj
+
+instance ITObject TShape where
+  getName = xform0 c_tshape_getname
+  draw = xform1 c_tshape_draw
+  findObject = xform1 c_tshape_findobject
+  saveAs = xform2 c_tshape_saveas
+  write = xform3 c_tshape_write
+  isA = xform0 c_tshape_isa
+  printObj = xform1 c_tshape_printobj
+
+instance ITObject TGaxis where
+  getName = xform0 c_tgaxis_getname
+  draw = xform1 c_tgaxis_draw
+  findObject = xform1 c_tgaxis_findobject
+  saveAs = xform2 c_tgaxis_saveas
+  write = xform3 c_tgaxis_write
+  isA = xform0 c_tgaxis_isa
+  printObj = xform1 c_tgaxis_printobj
+
+instance ITObject TArrow where
+  getName = xform0 c_tarrow_getname
+  draw = xform1 c_tarrow_draw
+  findObject = xform1 c_tarrow_findobject
+  saveAs = xform2 c_tarrow_saveas
+  write = xform3 c_tarrow_write
+  isA = xform0 c_tarrow_isa
+  printObj = xform1 c_tarrow_printobj
+
+instance ITObject TLine where
+  getName = xform0 c_tline_getname
+  draw = xform1 c_tline_draw
+  findObject = xform1 c_tline_findobject
+  saveAs = xform2 c_tline_saveas
+  write = xform3 c_tline_write
+  isA = xform0 c_tline_isa
+  printObj = xform1 c_tline_printobj
+
+instance ITObject TCrown where
+  getName = xform0 c_tcrown_getname
+  draw = xform1 c_tcrown_draw
+  findObject = xform1 c_tcrown_findobject
+  saveAs = xform2 c_tcrown_saveas
+  write = xform3 c_tcrown_write
+  isA = xform0 c_tcrown_isa
+  printObj = xform1 c_tcrown_printobj
+
+instance ITObject TArc where
+  getName = xform0 c_tarc_getname
+  draw = xform1 c_tarc_draw
+  findObject = xform1 c_tarc_findobject
+  saveAs = xform2 c_tarc_saveas
+  write = xform3 c_tarc_write
+  isA = xform0 c_tarc_isa
+  printObj = xform1 c_tarc_printobj
+
+instance ITObject TEllipse where
+  getName = xform0 c_tellipse_getname
+  draw = xform1 c_tellipse_draw
+  findObject = xform1 c_tellipse_findobject
+  saveAs = xform2 c_tellipse_saveas
+  write = xform3 c_tellipse_write
+  isA = xform0 c_tellipse_isa
+  printObj = xform1 c_tellipse_printobj
+
+instance ITObject TGraphQQ where
+  getName = xform0 c_tgraphqq_getname
+  draw = xform1 c_tgraphqq_draw
+  findObject = xform1 c_tgraphqq_findobject
+  saveAs = xform2 c_tgraphqq_saveas
+  write = xform3 c_tgraphqq_write
+  isA = xform0 c_tgraphqq_isa
+  printObj = xform1 c_tgraphqq_printobj
+
+instance ITObject TGraphPolar where
+  getName = xform0 c_tgraphpolar_getname
+  draw = xform1 c_tgraphpolar_draw
+  findObject = xform1 c_tgraphpolar_findobject
+  saveAs = xform2 c_tgraphpolar_saveas
+  write = xform3 c_tgraphpolar_write
+  isA = xform0 c_tgraphpolar_isa
+  printObj = xform1 c_tgraphpolar_printobj
+
+instance ITObject TGraphErrors where
+  getName = xform0 c_tgrapherrors_getname
+  draw = xform1 c_tgrapherrors_draw
+  findObject = xform1 c_tgrapherrors_findobject
+  saveAs = xform2 c_tgrapherrors_saveas
+  write = xform3 c_tgrapherrors_write
+  isA = xform0 c_tgrapherrors_isa
+  printObj = xform1 c_tgrapherrors_printobj
+
+instance ITObject TGraphBentErrors where
+  getName = xform0 c_tgraphbenterrors_getname
+  draw = xform1 c_tgraphbenterrors_draw
+  findObject = xform1 c_tgraphbenterrors_findobject
+  saveAs = xform2 c_tgraphbenterrors_saveas
+  write = xform3 c_tgraphbenterrors_write
+  isA = xform0 c_tgraphbenterrors_isa
+  printObj = xform1 c_tgraphbenterrors_printobj
+
+instance ITObject TCutG where
+  getName = xform0 c_tcutg_getname
+  draw = xform1 c_tcutg_draw
+  findObject = xform1 c_tcutg_findobject
+  saveAs = xform2 c_tcutg_saveas
+  write = xform3 c_tcutg_write
+  isA = xform0 c_tcutg_isa
+  printObj = xform1 c_tcutg_printobj
+
+instance ITObject TGraphAsymmErrors where
+  getName = xform0 c_tgraphasymmerrors_getname
+  draw = xform1 c_tgraphasymmerrors_draw
+  findObject = xform1 c_tgraphasymmerrors_findobject
+  saveAs = xform2 c_tgraphasymmerrors_saveas
+  write = xform3 c_tgraphasymmerrors_write
+  isA = xform0 c_tgraphasymmerrors_isa
+  printObj = xform1 c_tgraphasymmerrors_printobj
+
+instance ITObject TGraph where
+  getName = xform0 c_tgraph_getname
+  draw = xform1 c_tgraph_draw
+  findObject = xform1 c_tgraph_findobject
+  saveAs = xform2 c_tgraph_saveas
+  write = xform3 c_tgraph_write
+  isA = xform0 c_tgraph_isa
+  printObj = xform1 c_tgraph_printobj
+
+instance ITObject TF1 where
+  getName = xform0 c_tf1_getname
+  draw = xform1 c_tf1_draw
+  findObject = xform1 c_tf1_findobject
+  saveAs = xform2 c_tf1_saveas
+  write = xform3 c_tf1_write
+  isA = xform0 c_tf1_isa
+  printObj = xform1 c_tf1_printobj
+
+instance ITObject THStack where
+  getName = xform0 c_thstack_getname
+  draw = xform1 c_thstack_draw
+  findObject = xform1 c_thstack_findobject
+  saveAs = xform2 c_thstack_saveas
+  write = xform3 c_thstack_write
+  isA = xform0 c_thstack_isa
+  printObj = xform1 c_thstack_printobj
+
+instance ITObject TAttParticle where
+  getName = xform0 c_tattparticle_getname
+  draw = xform1 c_tattparticle_draw
+  findObject = xform1 c_tattparticle_findobject
+  saveAs = xform2 c_tattparticle_saveas
+  write = xform3 c_tattparticle_write
+  isA = xform0 c_tattparticle_isa
+  printObj = xform1 c_tattparticle_printobj
+
+instance ITObject TFormula where
+  getName = xform0 c_tformula_getname
+  draw = xform1 c_tformula_draw
+  findObject = xform1 c_tformula_findobject
+  saveAs = xform2 c_tformula_saveas
+  write = xform3 c_tformula_write
+  isA = xform0 c_tformula_isa
+  printObj = xform1 c_tformula_printobj
+
+instance ITObject TClass where
+  getName = xform0 c_tclass_getname
+  draw = xform1 c_tclass_draw
+  findObject = xform1 c_tclass_findobject
+  saveAs = xform2 c_tclass_saveas
+  write = xform3 c_tclass_write
+  isA = xform0 c_tclass_isa
+  printObj = xform1 c_tclass_printobj
+
+
+
+instance ITObject TNamed where
+  getName = xform0 c_tnamed_getname
+  draw = xform1 c_tnamed_draw
+  findObject = xform1 c_tnamed_findobject
+  saveAs = xform2 c_tnamed_saveas
+  write = xform3 c_tnamed_write
+  isA = xform0 c_tnamed_isa
+  printObj = xform1 c_tnamed_printobj
+
+instance ITPad TSlider where
+
+instance ITPad TEvePad where
+
+instance ITPad TInspectCanvas where
+
+instance ITPad TDialogCanvas where
+
+instance ITPad TCanvas where
+
+instance ITPad TGroupButton where
+
+instance ITPad TButton where
+
+instance ITPave TPaveClass where
+
+instance ITPave TPaveLabel where
+
+instance ITPave TLegend where
+
+instance ITPave TPavesText where
+
+instance ITPave TPaveStats where
+
+instance ITPave TDiamond where
+
+instance ITPave TPaveText where
+
+instance ITPaveLabel TPaveClass where
+
+instance ITPaveText TPavesText where
+
+instance ITPaveText TPaveStats where
+
+instance ITPaveText TDiamond where
+
+instance ITPolyLine TCurlyArc where
+
+instance ITPolyLine TCurlyLine where
+
+instance ITQObject TRint where
+
+instance ITQObject TApplication where
+
+instance ITQObject TSlider where
+
+instance ITQObject TEvePad where
+
+instance ITQObject TInspectCanvas where
+
+instance ITQObject TDialogCanvas where
+
+instance ITQObject TCanvas where
+
+instance ITQObject TGroupButton where
+
+instance ITQObject TButton where
+
+instance ITQObject TPad where
+
+instance ITQObject TVirtualPad where
+
+instance ITSeqCollection TList where
+
+instance ITSeqCollection TObjArray where
+
+instance ITShape TXTRU where
+
+instance ITShape TSPHE where
+
+instance ITShape TPCON where
+
+instance ITShape TTUBE where
+
+instance ITShape TBRIK where
+
+instance ITText TLatex where
+
+instance ITTree TTreeSQL where
+
+instance ITTree TNtupleD where
+
+instance ITTree TNtuple where
+
+instance ITTree TChain where
+
+instance ITVirtualPad TSlider where
+  getFrame = xform0 c_tslider_getframe
+  range = xform4 c_tslider_range
+
+instance ITVirtualPad TEvePad where
+  getFrame = xform0 c_tevepad_getframe
+  range = xform4 c_tevepad_range
+
+instance ITVirtualPad TInspectCanvas where
+  getFrame = xform0 c_tinspectcanvas_getframe
+  range = xform4 c_tinspectcanvas_range
+
+instance ITVirtualPad TDialogCanvas where
+  getFrame = xform0 c_tdialogcanvas_getframe
+  range = xform4 c_tdialogcanvas_range
+
+instance ITVirtualPad TCanvas where
+  getFrame = xform0 c_tcanvas_getframe
+  range = xform4 c_tcanvas_range
+
+instance ITVirtualPad TGroupButton where
+  getFrame = xform0 c_tgroupbutton_getframe
+  range = xform4 c_tgroupbutton_range
+
+instance ITVirtualPad TButton where
+  getFrame = xform0 c_tbutton_getframe
+  range = xform4 c_tbutton_range
+
+instance ITVirtualPad TPad where
+  getFrame = xform0 c_tpad_getframe
+  range = xform4 c_tpad_range
+
+instance ITVirtualTreePlayer TTreePlayer where
+
+instance ITWbox TSliderBox where
+  setBorderMode = xform1 c_tsliderbox_setbordermode
+
+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
+
+
+newTH1D :: String -> String -> Int -> Double -> Double -> IO TH1D
+newTH1D = xform4 c_th1d_newth1d
+
+
+newTH1F :: String -> String -> Int -> Double -> Double -> IO TH1F
+newTH1F = xform4 c_th1f_newth1f
+
+
+newTH2D :: String -> String -> Int -> Double -> Double -> Int -> Double -> Double -> IO TH2D
+newTH2D = xform7 c_th2d_newth2d
+
+
+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
+
+
+newTKey :: String -> String -> TClass -> Int -> TDirectory -> IO TKey
+newTKey = xform4 c_tkey_newtkey
+
+
+newTDatime :: Int -> Int -> Int -> Int -> Int -> Int -> IO TDatime
+newTDatime = xform5 c_tdatime_newtdatime
+
+tLatexDrawLatex :: TLatex -> Double -> Double -> String -> IO TLatex
+tLatexDrawLatex = xform3 c_tlatex_tlatexdrawlatex
+
+tH1GetAsymmetry :: TH1 -> TH1 -> Double -> Double -> IO TH1
+tH1GetAsymmetry = xform3 c_th1_th1getasymmetry
+
+tH1GetBufferLength :: TH1 -> IO Int
+tH1GetBufferLength = xform0 c_th1_th1getbufferlength
+
+tH1GetBufferSize :: TH1 -> IO Int
+tH1GetBufferSize = xform0 c_th1_th1getbuffersize
+
+tH1GetDirectory :: TH1 -> IO TDirectory
+tH1GetDirectory = xform0 c_th1_th1getdirectory
+
+tH1GetXaxis :: TH1 -> IO TAxis
+tH1GetXaxis = xform0 c_th1_th1getxaxis
+
+tH1GetYaxis :: TH1 -> IO TAxis
+tH1GetYaxis = xform0 c_th1_th1getyaxis
+
+tH1GetZaxis :: TH1 -> IO TAxis
+tH1GetZaxis = xform0 c_th1_th1getzaxis
+
+tH1IsBinOverflow :: TH1 -> Int -> IO Int
+tH1IsBinOverflow = xform1 c_th1_th1isbinoverflow
+
+tH1IsBinUnderflow :: TH1 -> Int -> IO Int
+tH1IsBinUnderflow = xform1 c_th1_th1isbinunderflow
+
+tH1UseCurrentStyle :: TH1 -> IO ()
+tH1UseCurrentStyle = xform0 c_th1_th1usecurrentstyle
 
 tH2ProjectionX :: TH2 -> String -> Int -> Int -> String -> IO TH1D
 tH2ProjectionX = xform4 c_th2_th2projectionx
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
@@ -1195,6 +1195,10 @@
 --   reference : http://root.cern.ch
 
 class (ITObject a) => ITNamed a where
+
+    setName :: a -> String -> IO () 
+
+    setNameTitle :: a -> String -> String -> IO () 
     -- | SetTitle method
     --   
     --   > SetTitle( char* name, char* title ) 
@@ -1221,17 +1225,49 @@
 
 class (IDeletable a) => ITAttAxis a where
 
+    getNdivisions :: a -> IO Int 
+
+    getAxisColor :: a -> IO Int 
+
+    getLabelColor :: a -> IO Int 
+
+    getLabelFont :: a -> IO Int 
+
+    getLabelOffset :: a -> IO Double 
+
+    getLabelSize :: a -> IO Double 
+
+    getTitleOffset :: a -> IO Double 
+
+    getTitleSize :: a -> IO Double 
+
+    getTickLength :: a -> IO Double 
+
+    getTitleFont :: a -> IO Int 
+
+    setNdivisions :: a -> Int -> Int -> IO () 
+
+    setAxisColor :: a -> Int -> IO () 
+
     setLabelColor :: a -> Int -> IO () 
 
+    setLabelFont :: a -> Int -> IO () 
+
+    setLabelOffset :: a -> Double -> IO () 
+
     setLabelSize :: a -> Double -> IO () 
 
     setTickLength :: a -> Double -> IO () 
 
     setTitleOffset :: a -> Double -> IO () 
 
-    setNdivisions :: a -> Int -> Int -> IO () 
+    setTitleSize :: a -> Double -> IO () 
 
+    setTitleColor :: a -> Int -> IO () 
 
+    setTitleFont :: a -> Int -> IO () 
+
+
 class (IDeletable a) => ITAttBBox a where
 
 
@@ -1553,25 +1589,25 @@
 
     fitPanel :: a -> IO () 
 
-    getNdivisions :: a -> String -> IO Int 
+    getNdivisionA :: a -> String -> IO Int 
 
-    getAxisColor :: a -> String -> IO Int 
+    getAxisColorA :: a -> String -> IO Int 
 
-    getLabelColor :: a -> String -> IO Int 
+    getLabelColorA :: a -> String -> IO Int 
 
-    getLabelFont :: a -> String -> IO Int 
+    getLabelFontA :: a -> String -> IO Int 
 
-    getLabelOffset :: a -> String -> IO Double 
+    getLabelOffsetA :: a -> String -> IO Double 
 
-    getLabelSize :: a -> String -> IO Double 
+    getLabelSizeA :: a -> String -> IO Double 
 
-    getTitleFont :: a -> String -> IO Int 
+    getTitleFontA :: a -> String -> IO Int 
 
-    getTitleOffset :: a -> String -> IO Double 
+    getTitleOffsetA :: a -> String -> IO Double 
 
-    getTitleSize :: a -> String -> IO Double 
+    getTitleSizeA :: a -> String -> IO Double 
 
-    getTickLength :: a -> String -> IO Double 
+    getTickLengthA :: a -> String -> IO Double 
 
     getBarOffset :: a -> IO Double 
 
@@ -1607,9 +1643,109 @@
 
     getCellError :: a -> Int -> Int -> IO Double 
 
+    getEntries :: a -> IO Double 
+
+    getEffectiveEntries :: a -> IO Double 
+
+    getFunction :: a -> String -> IO (Exist TF1) 
+
+    getDimension :: a -> IO Int 
+
+    getKurtosis :: a -> Int -> IO Double 
+
+    getLowEdge :: a -> [Double] -> IO () 
+
+    getMaximum :: a -> Double -> IO Double 
+
+    getMaximumBin :: a -> IO Int 
+
+    getMaximumStored :: a -> IO Double 
+
+    getMinimum :: a -> Double -> IO Double 
+
+    getMinimumBin :: a -> IO Int 
+
+    getMinimumStored :: a -> IO Double 
+
+    getMean :: a -> Int -> IO Double 
+
+    getMeanError :: a -> Int -> IO Double 
+
+    getNbinsX :: a -> IO Double 
+
+    getNbinsY :: a -> IO Double 
+
+    getNbinsZ :: a -> IO Double 
+
+    getQuantiles :: a -> Int -> [Double] -> [Double] -> IO Int 
+
+    getRandom :: a -> IO Double 
+    -- | 
+    --   > void     GetStats(Double_t *stats) const;
+    --   
+
+    getStats :: a -> [Double] -> IO () 
+
+    getSumOfWeights :: a -> IO Double 
+
+    getSumw2 :: a -> IO (Exist TArrayD) 
+
+    getSumw2N :: a -> IO Int 
+
+    getRMS :: a -> Int -> IO Double 
+
+    getRMSError :: a -> Int -> IO Double 
+
+    getSkewness :: a -> Int -> IO Double 
+
+    integral1 :: a -> Int -> Int -> String -> IO Double 
+
+    interpolate1 :: a -> Double -> IO Double 
+
+    interpolate2 :: a -> Double -> Double -> IO Double 
+
+    interpolate3 :: a -> Double -> Double -> Double -> IO Double 
+    -- | 
+    --   > Double_t KolmogorovTest(const TH1 *h2, Option_t *option="") const;
+    --   
+
+    kolmogorovTest :: (ITH1 c0, FPtr c0) => a -> c0 -> String -> IO Double 
+
+    labelsDeflate :: a -> String -> IO () 
+
+    labelsInflate :: a -> String -> IO () 
+
+    labelsOption :: a -> String -> String -> IO () 
+
+    multiflyF :: (ITF1 c0, FPtr c0) => a -> c0 -> Double -> IO () 
+
+    multiply :: (ITH1 c1, FPtr c1, ITH1 c0, FPtr c0) => a -> c0 -> c1 -> Double -> Double -> String -> IO () 
+
+    paint :: a -> IO () 
+    -- | 
+    --   > void     PutStats(Double_t *stats);
+    --   
+
+    putStats :: a -> [Double] -> IO () 
+
+    rebin :: a -> Int -> String -> [Double] -> IO (Exist TH1) 
+
+    rebinAxis :: (ITAxis c0, FPtr c0) => a -> Double -> c0 -> IO () 
+
+    rebuild :: a -> String -> IO () 
+
+    recursiveRemove :: (ITObject c0, FPtr c0) => a -> c0 -> IO () 
+    -- | 
+    --   > void     Reset(Option_t *option="");
+    --   
+
+    reset :: a -> String -> IO () 
+
+    resetStats :: a -> IO () 
+
     scale :: a -> Double -> String -> IO () 
 
-    setAxisColor :: a -> Int -> String -> IO () 
+    setAxisColorA :: a -> Int -> String -> IO () 
 
     setAxisRange :: a -> Double -> Double -> String -> IO () 
 
@@ -1635,17 +1771,66 @@
 
     setBins3 :: a -> Int -> [Double] -> Int -> [Double] -> Int -> [Double] -> IO () 
 
+    setBinsLength :: a -> Int -> IO () 
+
+    setBuffer :: a -> Int -> String -> IO () 
+
+    setCellContent :: a -> Int -> Int -> Double -> IO () 
+
+    setContent :: a -> [Double] -> IO () 
+
+    setContour :: a -> Int -> [Double] -> IO () 
+
+    setContourLevel :: a -> Int -> Double -> IO () 
+
+    setDirectory :: (ITDirectory c0, FPtr c0) => a -> c0 -> IO () 
+
+    setEntries :: a -> Double -> IO () 
+
+    setError :: a -> [Double] -> IO () 
+
+    setLabelColorA :: a -> Int -> String -> IO () 
+
+    setLabelSizeA :: a -> Double -> String -> IO () 
+
+    setLabelFontA :: a -> Int -> String -> IO () 
+
+    setLabelOffsetA :: a -> Double -> String -> IO () 
+
     setMaximum :: a -> Double -> IO () 
 
     setMinimum :: a -> Double -> IO () 
 
+    setNormFactor :: a -> Double -> IO () 
+
+    setStats :: a -> Int -> IO () 
+
+    setOption :: a -> String -> IO () 
+
     setXTitle :: a -> String -> IO () 
 
     setYTitle :: a -> String -> IO () 
 
     setZTitle :: a -> String -> IO () 
+    -- | 
+    --   > TH1     *ShowBackground(Int_t niter=20, Option_t *option="same");
+    --   
 
+    showBackground :: a -> Int -> String -> IO (Exist TH1) 
+    -- | 
+    --   > Int_t    ShowPeaks(Double_t sigma=2, Option_t *option="", Double_t threshold=0.05); // *MENU*
+    --   
 
+    showPeaks :: a -> Double -> String -> Double -> IO Int 
+    -- | 
+    --   > void     Smooth(Int_t ntimes=1, Option_t *option=""); // *MENU*
+    --   
+
+    smooth :: a -> Int -> String -> IO () 
+
+    sumw2 :: a -> IO () 
+
+
 class (ITH1 a) => ITH2 a where
     -- | 
     --   > Int_t    Fill(Double_t x, Double_t y);
@@ -1686,26 +1871,8 @@
     --   
 
     getCovariance :: a -> Int -> Int -> IO Double 
-    -- | 
-    --   > void     GetStats(Double_t *stats) const;
-    --   
 
-    getStats :: a -> [Double] -> IO () 
-    -- | 
-    --   > Double_t Integral(Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2, Option_t *option="") const;
-    --   
-
-    integral :: a -> Int -> Int -> Int -> Int -> String -> IO Double 
-    -- | 
-    --   > Double_t Interpolate(Double_t x, Double_t y, Double_t z);
-    --   
-
-    interpolate :: a -> Double -> Double -> Double -> IO Double 
-    -- | 
-    --   > Double_t KolmogorovTest(const TH1 *h2, Option_t *option="") const;
-    --   
-
-    kolmogorovTest :: (ITH1 c0, FPtr c0) => a -> c0 -> String -> IO Double 
+    integral2 :: a -> Int -> Int -> Int -> Int -> String -> IO Double 
     -- | 
     --   > TH2     *RebinX(Int_t ngroup=2, const char *newname="");
     --   
@@ -1722,16 +1889,6 @@
 
     rebin2D :: a -> Int -> Int -> String -> IO (Exist TH2) 
     -- | 
-    --   > void     PutStats(Double_t *stats);
-    --   
-
-    putStats :: a -> [Double] -> IO () 
-    -- | 
-    --   > void     Reset(Option_t *option="");
-    --   
-
-    reset :: a -> String -> IO () 
-    -- | 
     --   > void     SetShowProjectionX(Int_t nbins);  // *MENU*
     --   
 
@@ -1741,23 +1898,8 @@
     --   
 
     setShowProjectionY :: a -> Int -> IO () 
-    -- | 
-    --   > TH1     *ShowBackground(Int_t niter=20, Option_t *option="same");
-    --   
 
-    showBackground :: a -> Int -> String -> IO (Exist TH1) 
-    -- | 
-    --   > Int_t    ShowPeaks(Double_t sigma=2, Option_t *option="", Double_t threshold=0.05); // *MENU*
-    --   
 
-    showPeaks :: a -> Double -> String -> Double -> IO Int 
-    -- | 
-    --   > void     Smooth(Int_t ntimes=1, Option_t *option=""); // *MENU*
-    --   
-
-    smooth :: a -> Int -> String -> IO () 
-
-
 class (ITH1 a,ITAtt3D a) => ITH3 a where
 
 
@@ -1876,6 +2018,11 @@
 class (IDeletable a) => ITDatime a where
 
     convert :: a -> Int -> IO Word 
+
+
+class (ITObject a) => ITVirtualHistPainter a where
+
+    distanceToPrimitive :: a -> Int -> Int -> IO Int 
 
 upcastTObject :: (FPtr a, ITObject a) => a -> TObject
 upcastTObject h = let fh = get_fptr h
diff --git a/src/HROOT/Class/TVirtualHistPainter.hs b/src/HROOT/Class/TVirtualHistPainter.hs
new file mode 100644
--- /dev/null
+++ b/src/HROOT/Class/TVirtualHistPainter.hs
@@ -0,0 +1,8 @@
+module HROOT.Class.TVirtualHistPainter
+  (
+    ITVirtualHistPainter(..) 
+  ) where
+
+import HROOT.Class.Interface
+import HROOT.Class.Implementation ()
+
