// @(#)root/base:$Id$
// Author: Rene Brun   12/12/94

/*************************************************************************
 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#include "Riostream.h"
#include "TROOT.h"
#include "TColor.h"
#include "TObjArray.h"
#include "TVirtualPad.h"
#include "TVirtualX.h"
#include "TError.h"
#include "TMathBase.h"
#include "TApplication.h"
#include <cmath>

ClassImp(TColor)

Bool_t  TColor::fgGrayscaleMode = kFALSE;
Bool_t  TColor::fgInitDone = kFALSE;
TArrayI TColor::fgPalette(0);

using std::floor;

//______________________________________________________________________________
/* Begin_Html
<center><h2>The color creation and management class</h2></center>

<ul>
<li><a href="#C00">Introduction</li></a>
<li><a href="#C01">Basic colors</li></a>
<li><a href="#C02">The color wheel</li></a>
<li><a href="#C03">Bright and dark colors</li></a>
<li><a href="#C04">Gray scale view of of canvas with colors</li></a>
<li><a href="#C05">Color palettes</li></a>
<li><a href="#C06">Color transparency</li></a>
</ul>

<a name="C00"></a><h3>Introduction</h3>

Colors are defined by their red, green and blue components, simply called the
RGB components. The colors are also known by the hue, light and saturation
components also known as the HLS components. When a new color is created the
components of both color systems are computed.
<p>
At initialization time, a table of colors is generated. An existing color can
be retrieved by its index:
<br><pre>
   TColor *color = gROOT->GetColor(10);
</pre>
<br>Then it can be manipulated. For example its RGB components can be modified:
<p>
<pre>
   color->SetRGB(0.1, 0.2, 0.3);
</pre>
<br>A new color can be created the following way:
<p>
<pre>
   Int_t ci = 1756; // color index
   TColor *color = new TColor(ci, 0.1, 0.2, 0.3);
</pre>
<p>
Two sets of colors are initialized;
<ul>
<li> The basic colors: colors with index from 0 to 50.
<li> The color wheel: colors with indices from 300 to 1000.
</ul>

<a name="C01"></a><h3>Basic colors</h3>
The following image displays the 50 basic colors.
End_Html
Begin_Macro(source)
{
   TCanvas *c = new TCanvas("c","Fill Area colors",0,0,500,200);
   c->DrawColorTable();
   return c;
}
End_Macro
Begin_Html

<a name="C02"></a><h3>The color wheel</h3>
The wheel contains the recommended 216 colors to be used in web applications.

The colors in the color wheel are created by <tt>TColor::CreateColorWheel</tt>.
<p>
Using this color set for your text, background or graphics will give your
application a consistent appearance across different platforms and browsers.
<p>
Colors are grouped by hue, the aspect most important in human perception.
Touching color chips have the same hue, but with different brightness and
vividness.
<p>
Colors of slightly different hues <b>clash</b>. If you intend to display
colors of the same hue together, you should pick them from the same group.
<p>
Each color chip is identified by a mnemonic (e.g. kYellow) and a number.
The keywords, kRed, kBlue, kYellow, kPink, etc are defined in the header file
<b>Rtypes.h</b> that is included in all ROOT other header files. It is better
to use these keywords in user code instead of hardcoded color numbers, e.g.:
<pre>
   myObject.SetFillColor(kRed);
   myObject.SetFillColor(kYellow-10);
   myLine.SetLineColor(kMagenta+2);
</pre>

End_Html
Begin_Macro(source)
{
   TColorWheel *w = new TColorWheel();
   w->Draw();
   return w->GetCanvas();
}
End_Macro
Begin_Html

<a name="C03"></a><h3>Bright and dark colors</h3>
The dark and bright color are used to give 3-D effects when drawing various
boxes (see TWbox, TPave, TPaveText, TPaveLabel, etc).
<ul>
   <li>The dark colors have an index = color_index+100
   <li>The bright colors have an index = color_index+150
   <li>Two static functions return the bright and dark color number
       corresponding to a color index. If the bright or dark color does not
       exist, they are created:
   <pre>
      Int_t dark   = TColor::GetColorDark(color_index);
      Int_t bright = TColor::GetColorBright(color_index);
   </pre>
</ul>

<a name="C04"></a><h3>Grayscale view of of canvas with colors</h3>
One can toggle between a grayscale preview and the regular colored mode using
<tt>TCanvas::SetGrayscale()</tt>. Note that in grayscale mode, access via RGB
will return grayscale values according to ITU standards (and close to b&w
printer grayscales), while access via HLS returns de-saturated grayscales. The
image below shows the ROOT color wheel in grayscale mode.

End_Html
Begin_Macro(source)
{
   TColorWheel *w = new TColorWheel();
   w->Draw();
   w->GetCanvas()->SetGrayscale();
   w->GetCanvas()->Modified();
   w->GetCanvas()->Update();
   return w->GetCanvas();
}
End_Macro
Begin_Html

<a name="C05"></a><h3>Color palettes</h3>
It is often very useful to represent a variable with a color map. The concept
of "color palette" allows to do that. One color palette is active at any time.
This "current palette" is set using:
<p>
<pre>
gStyle->SetPalette(...);
</pre>
<p>
This function has two parameters: the number of colors in the palette and an
array of containing the indices of colors in the palette. The following small
example demonstrates how to define and use the color palette:

End_Html
Begin_Macro(source)
{
   TCanvas *c1  = new TCanvas("c1","c1",0,0,600,400);
   TF2 *f1 = new TF2("f1","0.1+(1-(x-2)*(x-2))*(1-(y-2)*(y-2))",1,3,1,3);
   Int_t palette[5];
   palette[0] = 15;
   palette[1] = 20;
   palette[2] = 23;
   palette[3] = 30;
   palette[4] = 32;
   gStyle->SetPalette(5,palette);
   f1->Draw("colz");
   return c1;
}
End_Macro
Begin_Html

<p> To define more a complex palette with a continuous gradient of color, one
should use the static function <tt>TColor::CreateGradientColorTable()</tt>.
The following example demonstrates how to proceed:

End_Html
Begin_Macro(source)
{
   TCanvas *c2  = new TCanvas("c2","c2",0,0,600,400);
   TF2 *f2 = new TF2("f2","0.1+(1-(x-2)*(x-2))*(1-(y-2)*(y-2))",1,3,1,3);
   const Int_t Number = 3;
   Double_t Red[Number]    = { 1.00, 0.00, 0.00};
   Double_t Green[Number]  = { 0.00, 1.00, 0.00};
   Double_t Blue[Number]   = { 1.00, 0.00, 1.00};
   Double_t Length[Number] = { 0.00, 0.50, 1.00 };
   Int_t nb=50;
   TColor::CreateGradientColorTable(Number,Length,Red,Green,Blue,nb);
   f2->SetContour(nb);
   f2->SetLineWidth(1);
   f2->SetLineColor(kBlack);
   f2->Draw("surf1z");
   return c2;
}
End_Macro
Begin_Html

<p>The function <tt>TColor::CreateGradientColorTable()</tt> automatically
calls </tt>gStyle->SetPalette()</tt>, so there is not need to add one.
<p>
After a call to <tt>TColor::CreateGradientColorTable()</tt> it is sometimes
useful to store the newly create palette for further use. In particular, it is
recommended to do if one wants to switch between several user define palettes.
To store a palette in an array it is enough to do:
<br>
<pre>
   Int_t MyPalette[100];
   Double_t r[]    = {0., 0.0, 1.0, 1.0, 1.0};
   Double_t g[]    = {0., 0.0, 0.0, 1.0, 1.0};
   Double_t b[]    = {0., 1.0, 0.0, 0.0, 1.0};
   Double_t stop[] = {0., .25, .50, .75, 1.0};
   Int_t FI = TColor::CreateGradientColorTable(5, stop, r, g, b, 100);
   for (int i=0;i<100;i++) MyPalette[i] = FI+i;
</pre>
<p>
Later on to reuse the palette <tt>MyPalette</tt> it will be enough to do
<p>
<pre>
   gStyle->SetPalette(100, MyPalette);
</pre>
<p>
As only one palette is active, one need to use <tt>TExec</tt> to be able to
display plots using different palettes on the same pad.
The following macro illustrate this feature.
End_Html
Begin_Macro(source)
../../../tutorials/graphs/multipalette.C
End_Macro
Begin_Html

<a name="C06"></a><h3>Color transparency</h3>
To make a graphics object transparent it is enough to set its color to a
transparent one. The color transparency is defined via its alpha component. The
alpha value varies from <tt>0.</tt> (fully transparent) to <tt>1.</tt> (fully
opaque). To set the alpha value of an existing color it is enough to do:
<p>
<pre>
   TColor *col26 = gROOT->GetColor(26);
   col26->SetAlpha(0.01);
</pre>
<p>
A new color can be created transparent the following way:
<p>
<pre>
   Int_t ci = 1756;
   TColor *color = new TColor(ci, 0.1, 0.2, 0.3, "", 0.5); // alpha = 0.5
</pre>
<p>
An example of tranparency usage with parallel coordinates can be found
in <tt>$ROOTSYS/tutorials/tree/parallelcoordtrans.C</tt>.
<p>
To ease the creation of a transparent color the static method
<tt>GetColorTransparent(Int_t color, Float_t a)</tt> is provided.
In the following example the <tt>trans_red</tt> color index point to
a red color 30% transparent. The alpha value of the color index
<tt>kRed</tt> is not modified.
<p>
<pre>
   Int_t trans_red = GetColorTransparent(kRed, 0.3);
</pre>
<p>
This function is also used in the methods
<tt>SetFillColorAlpha()</tt>, <tt>SetLineColorAlpha()</tt>,
<tt>SetMarkerColorAlpha()</tt> and <tt>SetTextColorAlpha()</tt>.
In the following example the fill color of the histogram <tt>histo</tt>
is set to blue with a transparency of 35%. The color <tt>kBlue</tt>
itself remains fully opaque.
<p>
<pre>
   histo->SetFillColorAlpha(kBlue, 0.35);
</pre>
<p>
The transparency is available on all platforms when the <tt>flagOpenGL.CanvasPreferGL</tt> is set to <tt>1</tt>
in <tt>$ROOTSYS/etc/system.rootrc</tt>, or on Mac with the Cocoa backend. On the file output
it is visible with PDF, PNG, Gif, JPEG, SVG ... but not PostScript.
End_Html */


//______________________________________________________________________________
TColor::TColor(): TNamed()
{
   /* Begin_html
   Default constructor.
   End_html */

   fNumber = -1;
   fRed = fGreen = fBlue = fHue = fLight = fSaturation = -1;
   fAlpha = 1;
}


//______________________________________________________________________________
TColor::TColor(Int_t color, Float_t r, Float_t g, Float_t b, const char *name,
               Float_t a)
      : TNamed(name,"")
{
   /* Begin_html
   Normal color constructor. Initialize a color structure.
   Compute the RGB and HLS color components.
   End_html */

   TColor::InitializeColors();
   // do not enter if color number already exist
   TColor *col = gROOT->GetColor(color);
   if (col) {
      Warning("TColor", "color %d already defined", color);
      fNumber = col->GetNumber();
      fRed    = col->GetRed();
      fGreen  = col->GetGreen();
      fBlue   = col->GetBlue();
      fHue    = col->GetHue();
      fLight  = col->GetLight();
      fAlpha  = col->GetAlpha();
      fSaturation = col->GetSaturation();
      return;
   }

   fNumber = color;

   char aname[32];
   if (!name || !*name) {
      snprintf(aname,32, "Color%d", color);
      SetName(aname);
   }

   // enter in the list of colors
   TObjArray *lcolors = (TObjArray*)gROOT->GetListOfColors();
   lcolors->AddAtAndExpand(this, color);

   // fill color structure
   SetRGB(r, g, b);
   fAlpha = a;
}


//______________________________________________________________________________
TColor::~TColor()
{
   /* Begin_html
   Color destructor.
   End_html */

   gROOT->GetListOfColors()->Remove(this);
   if (gROOT->GetListOfColors()->GetEntries() == 0) {fgPalette.Set(0); fgPalette=0;}
}


//______________________________________________________________________________
TColor::TColor(const TColor &color) : TNamed(color)
{
   /* Begin_html
   Color copy constructor.
   End_html */

   ((TColor&)color).Copy(*this);
}


//______________________________________________________________________________
void TColor::InitializeColors()
{
   /* Begin_html
   Initialize colors used by the TCanvas based graphics (via TColor objects).
   This method should be called before the ApplicationImp is created (which
   initializes the GUI colors).
   End_html */

   if (fgInitDone) return;
   fgInitDone = kTRUE;

   if (gROOT->GetListOfColors()->First() == 0) {

      new TColor(kWhite,1,1,1,"background");
      new TColor(kBlack,0,0,0,"black");
      new TColor(2,1,0,0,"red");
      new TColor(3,0,1,0,"green");
      new TColor(4,0,0,1,"blue");
      new TColor(5,1,1,0,"yellow");
      new TColor(6,1,0,1,"magenta");
      new TColor(7,0,1,1,"cyan");
      new TColor(10,0.999,0.999,0.999,"white");
      new TColor(11,0.754,0.715,0.676,"editcol");

      // The color white above is defined as being nearly white.
      // Sets the associated dark color also to white.
      TColor::GetColorDark(10);
      TColor *c110 = gROOT->GetColor(110);
      if (c110) c110->SetRGB(0.999,0.999,.999);

      // Initialize Custom colors
      new TColor(20,0.8,0.78,0.67);
      new TColor(31,0.54,0.66,0.63);
      new TColor(41,0.83,0.81,0.53);
      new TColor(30,0.52,0.76,0.64);
      new TColor(32,0.51,0.62,0.55);
      new TColor(24,0.70,0.65,0.59);
      new TColor(21,0.8,0.78,0.67);
      new TColor(47,0.67,0.56,0.58);
      new TColor(35,0.46,0.54,0.57);
      new TColor(33,0.68,0.74,0.78);
      new TColor(39,0.5,0.5,0.61);
      new TColor(37,0.43,0.48,0.52);
      new TColor(38,0.49,0.6,0.82);
      new TColor(36,0.41,0.51,0.59);
      new TColor(49,0.58,0.41,0.44);
      new TColor(43,0.74,0.62,0.51);
      new TColor(22,0.76,0.75,0.66);
      new TColor(45,0.75,0.51,0.47);
      new TColor(44,0.78,0.6,0.49);
      new TColor(26,0.68,0.6,0.55);
      new TColor(28,0.53,0.4,0.34);
      new TColor(25,0.72,0.64,0.61);
      new TColor(27,0.61,0.56,0.51);
      new TColor(23,0.73,0.71,0.64);
      new TColor(42,0.87,0.73,0.53);
      new TColor(46,0.81,0.37,0.38);
      new TColor(48,0.65,0.47,0.48);
      new TColor(34,0.48,0.56,0.6);
      new TColor(40,0.67,0.65,0.75);
      new TColor(29,0.69,0.81,0.78);

      // Initialize some additional greyish non saturated colors
      new TColor(8, 0.35,0.83,0.33);
      new TColor(9, 0.35,0.33,0.85);
      new TColor(12,.3,.3,.3,"grey12");
      new TColor(13,.4,.4,.4,"grey13");
      new TColor(14,.5,.5,.5,"grey14");
      new TColor(15,.6,.6,.6,"grey15");
      new TColor(16,.7,.7,.7,"grey16");
      new TColor(17,.8,.8,.8,"grey17");
      new TColor(18,.9,.9,.9,"grey18");
      new TColor(19,.95,.95,.95,"grey19");
      new TColor(50, 0.83,0.35,0.33);

      // Initialize the Pretty Palette Spectrum Violet->Red
      //   The color model used here is based on the HLS model which
      //   is much more suitable for creating palettes than RGB.
      //   Fixing the saturation and lightness we can scan through the
      //   spectrum of visible light by using "hue" alone.
      //   In Root hue takes values from 0 to 360.
      Int_t   i;
      Float_t  saturation = 1;
      Float_t  lightness = 0.5;
      Float_t  maxHue = 280;
      Float_t  minHue = 0;
      Int_t    maxPretty = 50;
      Float_t  hue;
      Float_t r=0., g=0., b=0., h, l, s;

      for (i=0 ; i<maxPretty ; i++) {
         hue = maxHue-(i+1)*((maxHue-minHue)/maxPretty);
         TColor::HLStoRGB(hue, lightness, saturation, r, g, b);
         new TColor(i+51, r, g, b);
      }

      // Initialize special colors for x3d
      TColor *s0;
      for (i = 1; i < 8; i++) {
         s0 = gROOT->GetColor(i);
         if (s0) s0->GetRGB(r,g,b);
         if (i == 1) { r = 0.6; g = 0.6; b = 0.6; }
         if (r == 1) r = 0.9; if (r == 0) r = 0.1;
         if (g == 1) g = 0.9; if (g == 0) g = 0.1;
         if (b == 1) b = 0.9; if (b == 0) b = 0.1;
         TColor::RGBtoHLS(r,g,b,h,l,s);
         TColor::HLStoRGB(h,0.6*l,s,r,g,b);
         new TColor(200+4*i-3,r,g,b);
         TColor::HLStoRGB(h,0.8*l,s,r,g,b);
         new TColor(200+4*i-2,r,g,b);
         TColor::HLStoRGB(h,1.2*l,s,r,g,b);
         new TColor(200+4*i-1,r,g,b);
         TColor::HLStoRGB(h,1.4*l,s,r,g,b);
         new TColor(200+4*i  ,r,g,b);
      }

      // Create the ROOT Color Wheel
      TColor::CreateColorWheel();
   }
   // If fgPalette.fN !=0 SetPalette has been called already
   // (from rootlogon.C for instance)

   if (!fgPalette.fN) SetPalette(1,0);
}


//______________________________________________________________________________
const char *TColor::AsHexString() const
{
   /* Begin_html
   Return color as hexadecimal string. This string can be directly passed
   to, for example, TGClient::GetColorByName(). String will be reused so
   copy immediately if needed.
   End_html */

   static TString tempbuf;

   Int_t r, g, b, a;
   r = Int_t(GetRed()   * 255);
   g = Int_t(GetGreen() * 255);
   b = Int_t(GetBlue()  * 255);
   a = Int_t(fAlpha     * 255);

   if (a != 255) {
      tempbuf.Form("#%02x%02x%02x%02x", a, r, g, b);
   } else {
      tempbuf.Form("#%02x%02x%02x", r, g, b);
   }
   return tempbuf;
}


//______________________________________________________________________________
void TColor::Copy(TObject &obj) const
{
   /* Begin_html
   Copy this color to obj.
   End_html */

   TNamed::Copy((TNamed&)obj);
   ((TColor&)obj).fRed   = fRed;
   ((TColor&)obj).fGreen = fGreen;
   ((TColor&)obj).fBlue  = fBlue;
   ((TColor&)obj).fHue   = fHue;
   ((TColor&)obj).fLight = fLight;
   ((TColor&)obj).fAlpha = fAlpha;
   ((TColor&)obj).fSaturation = fSaturation;
   ((TColor&)obj).fNumber = fNumber;
}


//______________________________________________________________________________
void TColor::CreateColorsGray()
{
   /* Begin_html
   Create the Gray scale colors in the Color Wheel
   End_html */

   if (gROOT->GetColor(kGray)) return;
   TColor *gray  = new TColor(kGray,204./255.,204./255.,204./255.);
   TColor *gray1 = new TColor(kGray+1,153./255.,153./255.,153./255.);
   TColor *gray2 = new TColor(kGray+2,102./255.,102./255.,102./255.);
   TColor *gray3 = new TColor(kGray+3, 51./255., 51./255., 51./255.);
   gray ->SetName("kGray");
   gray1->SetName("kGray+1");
   gray2->SetName("kGray+2");
   gray3->SetName("kGray+3");
}


//______________________________________________________________________________
void TColor::CreateColorsCircle(Int_t offset, const char *name, UChar_t *rgb)
{
   /* Begin_html
   Create the "circle" colors in the color wheel.
   End_html */

   TString colorname;
   for (Int_t n=0;n<15;n++) {
      Int_t colorn = offset+n-10;
      TColor *color = gROOT->GetColor(colorn);
      if (!color) {
         color = new TColor(colorn,rgb[3*n]/255.,rgb[3*n+1]/255.,rgb[3*n+2]/255.);
         color->SetTitle(color->AsHexString());
         if      (n>10) colorname.Form("%s+%d",name,n-10);
         else if (n<10) colorname.Form("%s-%d",name,10-n);
         else           colorname.Form("%s",name);
         color->SetName(colorname);
      }
   }
}


//______________________________________________________________________________
void TColor::CreateColorsRectangle(Int_t offset, const char *name, UChar_t *rgb)
{
   /* Begin_html
   Create the "rectangular" colors in the color wheel.
   End_html */

   TString colorname;
   for (Int_t n=0;n<20;n++) {
      Int_t colorn = offset+n-9;
      TColor *color = gROOT->GetColor(colorn);
      if (!color) {
         color = new TColor(colorn,rgb[3*n]/255.,rgb[3*n+1]/255.,rgb[3*n+2]/255.);
         color->SetTitle(color->AsHexString());
         if      (n>9) colorname.Form("%s+%d",name,n-9);
         else if (n<9) colorname.Form("%s-%d",name,9-n);
         else          colorname.Form("%s",name);
         color->SetName(colorname);
      }
   }
}


//______________________________________________________________________________
void TColor::CreateColorWheel()
{
   /* Begin_html
   Static function steering the creation of all colors in the color wheel.
   End_html */

   UChar_t magenta[46]= {255,204,255
                        ,255,153,255, 204,153,204
                        ,255,102,255, 204,102,204, 153,102,153
                        ,255, 51,255, 204, 51,204, 153, 51,153, 102, 51,102
                        ,255,  0,255, 204,  0,204, 153,  0,153, 102,  0,102,  51,  0, 51};

   UChar_t red[46]    = {255,204,204
                        ,255,153,153, 204,153,153
                        ,255,102,102, 204,102,102, 153,102,102
                        ,255, 51, 51, 204, 51, 51, 153, 51, 51, 102, 51, 51
                        ,255,  0,  0, 204,  0,  0, 153,  0,  0, 102,  0,  0,  51,  0,  0};

   UChar_t yellow[46] = {255,255,204
                        ,255,255,153, 204,204,153
                        ,255,255,102, 204,204,102, 153,153,102
                        ,255,255, 51, 204,204, 51, 153,153, 51, 102,102, 51
                        ,255,255,  0, 204,204,  0, 153,153,  0, 102,102,  0,  51, 51,  0};

   UChar_t green[46]  = {204,255,204
                        ,153,255,153, 153,204,153
                        ,102,255,102, 102,204,102, 102,153,102
                        , 51,255, 51,  51,204, 51,  51,153, 51,  51,102, 51
                        ,  0,255,  0,   0,204,  0,   0,153,  0,   0,102,  0,  0, 51,  0};

   UChar_t cyan[46]   = {204,255,255
                        ,153,255,255, 153,204,204
                        ,102,255,255, 102,204,204, 102,153,153
                        , 51,255,255,  51,204,204,  51,153,153,  51,102,102
                        ,  0,255,255,   0,204,204,   0,153,153,   0,102,102,   0, 51,  51};

   UChar_t blue[46]   = {204,204,255
                        ,153,153,255, 153,153,204
                        ,102,102,255, 102,102,204, 102,102,153
                        , 51, 51,255,  51, 51,204,  51, 51,153,  51, 51,102
                        ,  0,  0,255,   0,  0,204,   0,  0,153,   0,  0,102,   0,  0,  51};

   UChar_t pink[60] = {255, 51,153,  204,  0,102,  102,  0, 51,  153,  0, 51,  204, 51,102
                      ,255,102,153,  255,  0,102,  255, 51,102,  204,  0, 51,  255,  0, 51
                      ,255,153,204,  204,102,153,  153, 51,102,  153,  0,102,  204, 51,153
                      ,255,102,204,  255,  0,153,  204,  0,153,  255, 51,204,  255,  0,153};

   UChar_t orange[60]={255,204,153,  204,153,102,  153,102, 51,  153,102,  0,  204,153, 51
                      ,255,204,102,  255,153,  0,  255,204, 51,  204,153,  0,  255,204,  0
                      ,255,153, 51,  204,102,  0,  102, 51,  0,  153, 51,  0,  204,102, 51
                      ,255,153,102,  255,102,  0,  255,102, 51,  204, 51,  0,  255, 51,  0};

   UChar_t spring[60]={153,255, 51,  102,204,  0,   51,102,  0,   51,153,  0,  102,204, 51
                      ,153,255,102,  102,255,  0,  102,255, 51,   51,204,  0,   51,255, 0
                      ,204,255,153,  153,204,102,  102,153, 51,  102,153,  0,  153,204, 51
                      ,204,255,102,  153,255,  0,  204,255, 51,  153,204,  0,  204,255,  0};

   UChar_t teal[60] = {153,255,204,  102,204,153,   51,153,102,    0,153,102,   51,204,153
                      ,102,255,204,    0,255,102,   51,255,204,    0,204,153,    0,255,204
                      , 51,255,153,    0,204,102,    0,102, 51,    0,153, 51,   51,204,102
                      ,102,255,153,    0,255,153,   51,255,102,    0,204, 51,    0,255, 51};

   UChar_t azure[60] ={153,204,255,  102,153,204,   51,102,153,    0, 51,153,   51,102,204
                      ,102,153,255,    0,102,255,   51,102,255,    0, 51,204,    0, 51,255
                      , 51,153,255,    0,102,204,    0, 51,102,    0,102,153,   51,153,204
                      ,102,204,255,    0,153,255,   51,204,255,    0,153,204,    0,204,255};

   UChar_t violet[60]={204,153,255,  153,102,204,  102, 51,153,  102,  0,153,  153, 51,204
                      ,204,102,255,  153,  0,255,  204, 51,255,  153,  0,204,  204,  0,255
                      ,153, 51,255,  102,  0,204,   51,  0,102,   51,  0,153,  102, 51,204
                      ,153,102,255,  102,  0,255,  102, 51,255,   51,  0,204,   51,  0,255};

   TColor::CreateColorsCircle(kMagenta,"kMagenta",magenta);
   TColor::CreateColorsCircle(kRed,    "kRed",    red);
   TColor::CreateColorsCircle(kYellow, "kYellow", yellow);
   TColor::CreateColorsCircle(kGreen,  "kGreen",  green);
   TColor::CreateColorsCircle(kCyan,   "kCyan",   cyan);
   TColor::CreateColorsCircle(kBlue,   "kBlue",   blue);

   TColor::CreateColorsRectangle(kPink,  "kPink",  pink);
   TColor::CreateColorsRectangle(kOrange,"kOrange",orange);
   TColor::CreateColorsRectangle(kSpring,"kSpring",spring);
   TColor::CreateColorsRectangle(kTeal,  "kTeal",  teal);
   TColor::CreateColorsRectangle(kAzure, "kAzure", azure);
   TColor::CreateColorsRectangle(kViolet,"kViolet",violet);

   TColor::CreateColorsGray();
}


//______________________________________________________________________________
Int_t TColor::GetColorPalette(Int_t i)
{
   /* Begin_html
   Static function returning the color number i in current palette.
   End_html */

   Int_t ncolors = fgPalette.fN;
   if (ncolors == 0) return 0;
   Int_t icol    = i%ncolors;
   if (icol < 0) icol = 0;
   return fgPalette.fArray[icol];
}


//______________________________________________________________________________
Int_t TColor::GetNumberOfColors()
{
   /* Begin_html
   Static function returning number of colors in the color palette.
   End_html */

   return fgPalette.fN;
}


//______________________________________________________________________________
ULong_t TColor::GetPixel() const
{
   /* Begin_html
   Return pixel value corresponding to this color. This pixel value can
   be used in the GUI classes. This call does not work in batch mode since
   it needs to communicate with the graphics system.
   End_html */

   if (gVirtualX && !gROOT->IsBatch()) {
      if (gApplication) {
         TApplication::NeedGraphicsLibs();
         gApplication->InitializeGraphics();
      }
      return gVirtualX->GetPixel(fNumber);
   }

   return 0;
}


//______________________________________________________________________________
void TColor::HLS2RGB(Float_t hue, Float_t light, Float_t satur,
                     Float_t &r, Float_t &g, Float_t &b)
{
   /* Begin_html
   Static method to compute RGB from HLS. The l and s are between [0,1]
   and h is between [0,360]. The returned r,g,b triplet is between [0,1].
   End_html */

   Float_t rh, rl, rs, rm1, rm2;
   rh = rl = rs = 0;
   if (hue   > 0) rh = hue;   if (rh > 360) rh = 360;
   if (light > 0) rl = light; if (rl > 1)   rl = 1;
   if (satur > 0) rs = satur; if (rs > 1)   rs = 1;

   if (rl <= 0.5)
      rm2 = rl*(1.0 + rs);
   else
      rm2 = rl + rs - rl*rs;
   rm1 = 2.0*rl - rm2;

   if (!rs) { r = rl; g = rl; b = rl; return; }
   r = HLStoRGB1(rm1, rm2, rh+120);
   g = HLStoRGB1(rm1, rm2, rh);
   b = HLStoRGB1(rm1, rm2, rh-120);
}


//______________________________________________________________________________
Float_t TColor::HLStoRGB1(Float_t rn1, Float_t rn2, Float_t huei)
{
   /* Begin_html
   Static method. Auxiliary to HLS2RGB().
   End_html */

   Float_t hue = huei;
   if (hue > 360) hue = hue - 360;
   if (hue < 0)   hue = hue + 360;
   if (hue < 60 ) return rn1 + (rn2-rn1)*hue/60;
   if (hue < 180) return rn2;
   if (hue < 240) return rn1 + (rn2-rn1)*(240-hue)/60;
   return rn1;
}


//______________________________________________________________________________
void TColor::HLS2RGB(Int_t h, Int_t l, Int_t s, Int_t &r, Int_t &g, Int_t &b)
{
   /* Begin_html
   Static method to compute RGB from HLS. The h,l,s are between [0,255].
   The returned r,g,b triplet is between [0,255].
   End_html */

   Float_t hh, ll, ss, rr, gg, bb;

   hh = Float_t(h) * 360 / 255;
   ll = Float_t(l) / 255;
   ss = Float_t(s) / 255;

   TColor::HLStoRGB(hh, ll, ss, rr, gg, bb);

   r = (Int_t) (rr * 255);
   g = (Int_t) (gg * 255);
   b = (Int_t) (bb * 255);
}


//______________________________________________________________________________
void TColor::HSV2RGB(Float_t hue, Float_t satur, Float_t value,
                     Float_t &r, Float_t &g, Float_t &b)
{
   /* Begin_html
   Static method to compute RGB from HSV:
   <ul>
   <li> The hue value runs from 0 to 360.
   <li> The saturation is the degree of strength or purity and is from 0 to 1.
        Purity is how much white is added to the color, so S=1 makes the purest
        color (no white).
   <li> Brightness value also ranges from 0 to 1, where 0 is the black.
   </ul>
   The returned r,g,b triplet is between [0,1].
   End_html */

   Int_t i;
   Float_t f, p, q, t;

   if (satur==0) {
      // Achromatic (grey)
      r = g = b = value;
      return;
   }

   hue /= 60;   // sector 0 to 5
   i = (Int_t)floor(hue);
   f = hue-i;   // factorial part of hue
   p = value*(1-satur);
   q = value*(1-satur*f );
   t = value*(1-satur*(1-f));

   switch (i) {
      case 0:
         r = value;
         g = t;
         b = p;
         break;
      case 1:
         r = q;
         g = value;
         b = p;
         break;
      case 2:
         r = p;
         g = value;
         b = t;
         break;
      case 3:
         r = p;
         g = q;
         b = value;
         break;
      case 4:
         r = t;
         g = p;
         b = value;
         break;
      default:
         r = value;
         g = p;
         b = q;
         break;
   }
}


//______________________________________________________________________________
void TColor::ls(Option_t *) const
{
   /* Begin_html
   List this color with its attributes.
   End_html */

   printf("Color:%d  Red=%f Green=%f Blue=%f Name=%s\n",
          fNumber, fRed, fGreen, fBlue, GetName());
}


//______________________________________________________________________________
void TColor::Print(Option_t *) const
{
   /* Begin_html
   Dump this color with its attributes.
   End_html */

   ls();
}


//______________________________________________________________________________
void TColor::RGB2HLS(Float_t rr, Float_t gg, Float_t bb,
                     Float_t &hue, Float_t &light, Float_t &satur)
{
   /* Begin_html
   Static method to compute HLS from RGB. The r,g,b triplet is between
   [0,1], hue is between [0,360], light and satur are [0,1].
   End_html */

   Float_t rnorm, gnorm, bnorm, minval, maxval, msum, mdiff, r, g, b;
   minval = maxval =0 ;
   r = g = b = 0;
   if (rr > 0) r = rr; if (r > 1) r = 1;
   if (gg > 0) g = gg; if (g > 1) g = 1;
   if (bb > 0) b = bb; if (b > 1) b = 1;

   minval = r;
   if (g < minval) minval = g;
   if (b < minval) minval = b;
   maxval = r;
   if (g > maxval) maxval = g;
   if (b > maxval) maxval = b;

   rnorm = gnorm = bnorm = 0;
   mdiff = maxval - minval;
   msum  = maxval + minval;
   light = 0.5 * msum;
   if (maxval != minval) {
      rnorm = (maxval - r)/mdiff;
      gnorm = (maxval - g)/mdiff;
      bnorm = (maxval - b)/mdiff;
   } else {
      satur = hue = 0;
      return;
   }

   if (light < 0.5)
      satur = mdiff/msum;
   else
      satur = mdiff/(2.0 - msum);

   if (r == maxval)
      hue = 60.0 * (6.0 + bnorm - gnorm);
   else if (g == maxval)
      hue = 60.0 * (2.0 + rnorm - bnorm);
   else
      hue = 60.0 * (4.0 + gnorm - rnorm);

   if (hue > 360)
      hue = hue - 360;
}


//______________________________________________________________________________
void TColor::RGB2HSV(Float_t r, Float_t g, Float_t b,
                     Float_t &hue, Float_t &satur, Float_t &value)
{
   /* Begin_html
   Static method to compute HSV from RGB.
   <ul>
   <li> The input values:
   <ul>
   <li> r,g,b triplet is between [0,1].
   </ul>
   <li> The returned values:
   <ul>
   <li> The hue value runs from 0 to 360.
   <li> The saturation is the degree of strength or purity and is from 0 to 1.
        Purity is how much white is added to the color, so S=1 makes the purest
        color (no white).
   <li> Brightness value also ranges from 0 to 1, where 0 is the black.
   </ul>
   </ul>
   End_html */

   Float_t min, max, delta;

   min   = TMath::Min(TMath::Min(r, g), b);
   max   = TMath::Max(TMath::Max(r, g), b);
   value = max;

   delta = max - min;

   if (max != 0) {
      satur = delta/max;
   } else {
      satur = 0;
      hue   = -1;
      return;
   }

   if (r == max) {
      hue = (g-b)/delta;
   } else if (g == max) {
      hue = 2+(b-r)/delta;
   } else {
      hue = 4+(r-g)/delta;
   }

   hue *= 60;
   if (hue < 0) hue += 360;
}


//______________________________________________________________________________
void TColor::RGB2HLS(Int_t r, Int_t g, Int_t b, Int_t &h, Int_t &l, Int_t &s)
{
   /* Begin_html
   Static method to compute HLS from RGB. The r,g,b triplet is between
   [0,255], hue, light and satur are between [0,255].
   End_html */

   Float_t rr, gg, bb, hue, light, satur;

   rr = Float_t(r) / 255;
   gg = Float_t(g) / 255;
   bb = Float_t(b) / 255;

   TColor::RGBtoHLS(rr, gg, bb, hue, light, satur);

   h = (Int_t) (hue/360 * 255);
   l = (Int_t) (light * 255);
   s = (Int_t) (satur * 255);
}


//______________________________________________________________________________
void TColor::SetRGB(Float_t r, Float_t g, Float_t b)
{
   /* Begin_html
   Initialize this color and its associated colors.
   End_html */

   TColor::InitializeColors();
   fRed   = r;
   fGreen = g;
   fBlue  = b;

   if (fRed < 0) return;

   RGBtoHLS(r, g, b, fHue, fLight, fSaturation);

   Int_t nplanes = 16;
   if (gVirtualX) gVirtualX->GetPlanes(nplanes);
   if (nplanes == 0) nplanes = 16;

   // allocate color now (can be delayed when we have a large colormap)
#ifndef R__WIN32
   if (nplanes < 15)
#endif
      Allocate();

   if (fNumber > 50) return;

   // now define associated colors for WBOX shading
   Float_t dr, dg, db, lr, lg, lb;

   // set dark color
   HLStoRGB(fHue, 0.7*fLight, fSaturation, dr, dg, db);
   TColor *dark = gROOT->GetColor(100+fNumber);
   if (dark) {
      if (nplanes > 8) dark->SetRGB(dr, dg, db);
      else             dark->SetRGB(0.3,0.3,0.3);
   }

   // set light color
   HLStoRGB(fHue, 1.2*fLight, fSaturation, lr, lg, lb);
   TColor *light = gROOT->GetColor(150+fNumber);
   if (light) {
      if (nplanes > 8) light->SetRGB(lr, lg, lb);
      else             light->SetRGB(0.8,0.8,0.8);
   }
}


//______________________________________________________________________________
void TColor::Allocate()
{
   /* Begin_html
   Make this color known to the graphics system.
   End_html */

   if (gVirtualX && !gROOT->IsBatch())

      gVirtualX->SetRGB(fNumber, GetRed(), GetGreen(), GetBlue());
}


//______________________________________________________________________________
Int_t TColor::GetColor(const char *hexcolor)
{
   /* Begin_html
   Static method returning color number for color specified by
   hex color string of form: #rrggbb, where rr, gg and bb are in
   hex between [0,FF], e.g. "#c0c0c0".
   <br>
   If specified color does not exist it will be created with as
   name "#rrggbb" with rr, gg and bb in hex between [0,FF].
   End_html */

   if (hexcolor && *hexcolor == '#') {
      Int_t r, g, b;
      if (sscanf(hexcolor+1, "%02x%02x%02x", &r, &g, &b) == 3)
         return GetColor(r, g, b);
   }
   ::Error("TColor::GetColor(const char*)", "incorrect color string");
   return 0;
}


//______________________________________________________________________________
Int_t TColor::GetColor(Float_t r, Float_t g, Float_t b)
{
   /* Begin_html
   Static method returning color number for color specified by
   r, g and b. The r,g,b should be in the range [0,1].
   <br>
   If specified color does not exist it will be created
   with as name "#rrggbb" with rr, gg and bb in hex between
   [0,FF].
   End_html */

   Int_t rr, gg, bb;
   rr = Int_t(r * 255);
   gg = Int_t(g * 255);
   bb = Int_t(b * 255);

   return GetColor(rr, gg, bb);
}


//______________________________________________________________________________
Int_t TColor::GetColor(ULong_t pixel)
{
   /* Begin_html
   Static method returning color number for color specified by
   system dependent pixel value. Pixel values can be obtained, e.g.,
   from the GUI color picker.
   End_html */

   Int_t r, g, b;

   Pixel2RGB(pixel, r, g, b);

   return GetColor(r, g, b);
}


//______________________________________________________________________________
Int_t TColor::GetColor(Int_t r, Int_t g, Int_t b)
{
   /* Begin_html
   Static method returning color number for color specified by
   r, g and b. The r,g,b should be in the range [0,255].
   If the specified color does not exist it will be created
   with as name "#rrggbb" with rr, gg and bb in hex between
   [0,FF].
   End_html */

   TColor::InitializeColors();
   if (r < 0) r = 0;
   if (g < 0) g = 0;
   if (b < 0) b = 0;
   if (r > 255) r = 255;
   if (g > 255) g = 255;
   if (b > 255) b = 255;

   // Get list of all defined colors
   TObjArray *colors = (TObjArray*) gROOT->GetListOfColors();

   TColor *color = 0;

   // Look for color by name
   if ((color = (TColor*)colors->FindObject(Form("#%02x%02x%02x", r, g, b))))
      // We found the color by name, so we use that right away
      return color->GetNumber();

   Float_t rr, gg, bb;
   rr = Float_t(r)/255.;
   gg = Float_t(g)/255.;
   bb = Float_t(b)/255.;

   TIter next(colors);

   Int_t nplanes = 16;
   Float_t thres = 1.0/31.0;   // 5 bits per color : 0 - 0x1F !
   if (gVirtualX) gVirtualX->GetPlanes(nplanes);
   if (nplanes >= 24)
      thres = 1.0/255.0;       // 8 bits per color : 0 - 0xFF !

   // Loop over all defined colors
   while ((color = (TColor*)next())) {
      if (TMath::Abs(color->GetRed() - rr) > thres)
         continue;
      if (TMath::Abs(color->GetGreen() - gg) > thres)
         continue;
      if (TMath::Abs(color->GetBlue() - bb) > thres)
         continue;

      // We found a matching color in the color table
      return color->GetNumber();
   }

   // We didn't find a matching color in the color table, so we
   // add it. Note name is of the form "#rrggbb" where rr, etc. are
   // hexadecimal numbers.
   color = new TColor(colors->GetLast()+1, rr, gg, bb,
                      Form("#%02x%02x%02x", r, g, b));

   return color->GetNumber();
}


//______________________________________________________________________________
Int_t TColor::GetColorBright(Int_t n)
{
   /* Begin_html
   Static function: Returns the bright color number corresponding to n
   If the TColor object does not exist, it is created.
   The convention is that the bright color nb = n+150
   End_html */

   if (n < 0) return -1;

   // Get list of all defined colors
   TObjArray *colors = (TObjArray*) gROOT->GetListOfColors();
   Int_t ncolors = colors->GetSize();
   // Get existing color at index n
   TColor *color = 0;
   if (n < ncolors) color = (TColor*)colors->At(n);
   if (!color) return -1;

   //Get the rgb of the the new bright color corresponding to color n
   Float_t r,g,b;
   HLStoRGB(color->GetHue(), 1.2*color->GetLight(), color->GetSaturation(), r, g, b);

   //Build the bright color (unless the slot nb is already used)
   Int_t nb = n+150;
   TColor *colorb = 0;
   if (nb < ncolors) colorb = (TColor*)colors->At(nb);
   if (colorb) return nb;
   colorb = new TColor(nb,r,g,b);
   colorb->SetName(Form("%s_bright",color->GetName()));
   colors->AddAtAndExpand(colorb,nb);
   return nb;
}


//______________________________________________________________________________
Int_t TColor::GetColorDark(Int_t n)
{
   /* Begin_html
   Static function: Returns the dark color number corresponding to n
   If the TColor object does not exist, it is created.
   The convention is that the dark color nd = n+100
   End_html */

   if (n < 0) return -1;

   // Get list of all defined colors
   TObjArray *colors = (TObjArray*) gROOT->GetListOfColors();
   Int_t ncolors = colors->GetSize();
   // Get existing color at index n
   TColor *color = 0;
   if (n < ncolors) color = (TColor*)colors->At(n);
   if (!color) return -1;

   //Get the rgb of the the new dark color corresponding to color n
   Float_t r,g,b;
   HLStoRGB(color->GetHue(), 0.7*color->GetLight(), color->GetSaturation(), r, g, b);

   //Build the dark color (unless the slot nd is already used)
   Int_t nd = n+100;
   TColor *colord = 0;
   if (nd < ncolors) colord = (TColor*)colors->At(nd);
   if (colord) return nd;
   colord = new TColor(nd,r,g,b);
   colord->SetName(Form("%s_dark",color->GetName()));
   colors->AddAtAndExpand(colord,nd);
   return nd;
}


//______________________________________________________________________________
Int_t TColor::GetColorTransparent(Int_t n, Float_t a)
{
   /* Begin_html
   Static function: Returns the transparent color number corresponding to n.
   The transparency level is given by the alpha value a.
   End_html */

   if (n < 0) return -1;

   TColor *color = gROOT->GetColor(n);
   if (color) {
      TColor *colort = new TColor(gROOT->GetListOfColors()->GetLast()+1,
                                  color->GetRed(), color->GetGreen(), color->GetBlue());
      colort->SetAlpha(a);
      colort->SetName(Form("%s_transparent",color->GetName()));
      return colort->GetNumber();
   } else {
      ::Error("TColor::GetColorTransparent", "color with index %d not defined", n);
      return -1;
   }
}


//______________________________________________________________________________
ULong_t TColor::Number2Pixel(Int_t ci)
{
   /* Begin_html
   Static method that given a color index number, returns the corresponding
   pixel value. This pixel value can be used in the GUI classes. This call
   does not work in batch mode since it needs to communicate with the
   graphics system.
   End_html */


   TColor::InitializeColors();
   TColor *color = gROOT->GetColor(ci);
   if (color)
      return color->GetPixel();
   else
      ::Warning("TColor::Number2Pixel", "color with index %d not defined", ci);

   return 0;
}


//______________________________________________________________________________
ULong_t TColor::RGB2Pixel(Float_t r, Float_t g, Float_t b)
{
   /* Begin_html
   Convert r,g,b to graphics system dependent pixel value.
   The r,g,b triplet must be [0,1].
   End_html */

   if (r < 0) r = 0;
   if (g < 0) g = 0;
   if (b < 0) b = 0;
   if (r > 1) r = 1;
   if (g > 1) g = 1;
   if (b > 1) b = 1;

   ColorStruct_t color;
   color.fRed   = UShort_t(r * 65535);
   color.fGreen = UShort_t(g * 65535);
   color.fBlue  = UShort_t(b * 65535);
   color.fMask  = kDoRed | kDoGreen | kDoBlue;
   gVirtualX->AllocColor(gVirtualX->GetColormap(), color);
   return color.fPixel;
}


//______________________________________________________________________________
ULong_t TColor::RGB2Pixel(Int_t r, Int_t g, Int_t b)
{
   /* Begin_html
   Convert r,g,b to graphics system dependent pixel value.
   The r,g,b triplet must be [0,255].
   End_html */

   if (r < 0) r = 0;
   if (g < 0) g = 0;
   if (b < 0) b = 0;
   if (r > 255) r = 255;
   if (g > 255) g = 255;
   if (b > 255) b = 255;

   ColorStruct_t color;
   color.fRed   = UShort_t(r * 257);  // 65535/255
   color.fGreen = UShort_t(g * 257);
   color.fBlue  = UShort_t(b * 257);
   color.fMask  = kDoRed | kDoGreen | kDoBlue;
   gVirtualX->AllocColor(gVirtualX->GetColormap(), color);
   return color.fPixel;
}


//______________________________________________________________________________
void TColor::Pixel2RGB(ULong_t pixel, Float_t &r, Float_t &g, Float_t &b)
{
   /* Begin_html
   Convert machine dependent pixel value (obtained via RGB2Pixel or
   via Number2Pixel() or via TColor::GetPixel()) to r,g,b triplet.
   The r,g,b triplet will be [0,1].
   End_html */

   ColorStruct_t color;
   color.fPixel = pixel;
   gVirtualX->QueryColor(gVirtualX->GetColormap(), color);
   r = (Float_t)color.fRed / 65535;
   g = (Float_t)color.fGreen / 65535;
   b = (Float_t)color.fBlue / 65535;
}


//______________________________________________________________________________
void TColor::Pixel2RGB(ULong_t pixel, Int_t &r, Int_t &g, Int_t &b)
{
   /* Begin_html
   Convert machine dependent pixel value (obtained via RGB2Pixel or
   via Number2Pixel() or via TColor::GetPixel()) to r,g,b triplet.
   The r,g,b triplet will be [0,255].
   End_html */

   ColorStruct_t color;
   color.fPixel = pixel;
   gVirtualX->QueryColor(gVirtualX->GetColormap(), color);
   r = color.fRed / 257;
   g = color.fGreen / 257;
   b = color.fBlue / 257;
}


//______________________________________________________________________________
const char *TColor::PixelAsHexString(ULong_t pixel)
{
   /* Begin_html
   Convert machine dependent pixel value (obtained via RGB2Pixel or
   via Number2Pixel() or via TColor::GetPixel()) to a hexadecimal string.
   This string can be directly passed to, for example,
   TGClient::GetColorByName(). String will be reused so copy immediately
   if needed.
   End_html */

   static TString tempbuf;
   Int_t r, g, b;
   Pixel2RGB(pixel, r, g, b);
   tempbuf.Form("#%02x%02x%02x", r, g, b);
   return tempbuf;
}


//______________________________________________________________________________
void TColor::SaveColor(std::ostream &out, Int_t ci)
{
   /* Begin_html
   Save a color with index > 228 as a C++ statement(s) on output stream out.
   End_html */

   char quote = '"';
   Float_t r,g,b,a;
   Int_t ri, gi, bi;
   TString cname;

   TColor *c = gROOT->GetColor(ci);
   if (c) {
      c->GetRGB(r, g, b);
      a = c->GetAlpha();
   } else {
      return;
   }

   if (gROOT->ClassSaved(TColor::Class())) {
      out << std::endl;
   } else {
      out << std::endl;
      out << "   Int_t ci;      // for color index setting" << std::endl;
      out << "   TColor *color; // for color definition with alpha" << std::endl;
   }

   if (a<1) {
      out<<"   ci = "<<ci<<";"<<std::endl;
      out<<"   color = new TColor(ci, "<<r<<", "<<g<<", "<<b<<", "
      <<"\" \", "<<a<<");"<<std::endl;
   } else {
      ri = (Int_t)(255*r);
      gi = (Int_t)(255*g);
      bi = (Int_t)(255*b);
      cname.Form("#%02x%02x%02x", ri, gi, bi);
      out<<"   ci = TColor::GetColor("<<quote<<cname.Data()<<quote<<");"<<std::endl;
   }
}


//______________________________________________________________________________
Bool_t TColor::IsGrayscale()
{
   /* Begin_html
   Return whether all colors return grayscale values.
   End_html */

   return fgGrayscaleMode;
}


//______________________________________________________________________________
void TColor::SetGrayscale(Bool_t set /*= kTRUE*/)
{
   /* Begin_html
   Set whether all colors should return grayscale values.
   End_html */

   if (fgGrayscaleMode == set) return;

   fgGrayscaleMode = set;

   if (!gVirtualX || gROOT->IsBatch()) return;

   TColor::InitializeColors();
   TIter iColor(gROOT->GetListOfColors());
   TColor* color = 0;
   while ((color = (TColor*) iColor()))
      color->Allocate();
}


//______________________________________________________________________________
Int_t TColor::CreateGradientColorTable(UInt_t Number, Double_t* Stops,
                              Double_t* Red, Double_t* Green,
                              Double_t* Blue, UInt_t NColors, Float_t alpha)
{
   /* Begin_html
   Static function creating a color table with several connected linear gradients.
   <ul>
   <li>Number: The number of end point colors that will form the gradients.
               Must be at least 2.
   <li>Stops: Where in the whole table the end point colors should lie.
              Each entry must be on [0, 1], each entry must be greater than
              the previous entry.
   <li>Red, Green, Blue: The end point color values.
                         Each entry must be on [0, 1]
   <li>NColors: Total number of colors in the table. Must be at least 1.
   </ul>

   Returns a positive value on success and -1 on error.
   <p>
   The table is constructed by tracing lines between the given points in
   RGB space.  Each color value may have a value between 0 and 1.  The
   difference between consecutive "Stops" values gives the fraction of
   space in the whole table that should be used for the interval between
   the corresponding color values.
   <p>
   Normally the first element of Stops should be 0 and the last should be 1.
   If this is not true, fewer than NColors will be used in proportion with
   the total interval between the first and last elements of Stops.
   <p>
   This definition is similar to the povray-definition of gradient
   color tables.
   <p>
   For instance:
   <pre>
   UInt_t Number = 3;
   Double_t Red[3]   = { 0.0, 1.0, 1.0 };
   Double_t Green[3] = { 0.0, 0.0, 1.0 };
   Double_t Blue[3]  = { 1.0, 0.0, 1.0 };
   Double_t Stops[3] = { 0.0, 0.4, 1.0 };
   </pre>
   This defines a table in which there are three color end points:
   RGB = {0, 0, 1}, {1, 0, 0}, and {1, 1, 1} = blue, red, white
   The first 40% of the table is used to go linearly from blue to red.
   The remaining 60% of the table is used to go linearly from red to white.
   <p>
   If you define a very short interval such that less than one color fits
   in it, no colors at all will be allocated.  If this occurs for all
   intervals, ROOT will revert to the default palette.
   <p>
   Original code by Andreas Zoglauer (zog@mpe.mpg.de)
   End_html */

   TColor::InitializeColors();

   UInt_t g, c;
   UInt_t nPalette = 0;
   Int_t *palette = new Int_t[NColors+1];
   UInt_t nColorsGradient;
   TColor *color;
   Int_t highestIndex = 0;

   if(Number < 2 || NColors < 1){
      delete [] palette;
      return -1;
   }

   // Check if all RGB values are between 0.0 and 1.0 and
   // Stops goes from 0.0 to 1.0 in increasing order.
   for (c = 0; c < Number; c++) {
      if (Red[c] < 0 || Red[c] > 1.0 ||
          Green[c] < 0 || Green[c] > 1.0 ||
          Blue[c] < 0 || Blue[c] > 1.0 ||
          Stops[c] < 0 || Stops[c] > 1.0) {
         delete [] palette;
         return -1;
      }
      if (c >= 1) {
         if (Stops[c-1] > Stops[c]) {
            delete [] palette;
            return -1;
         }
      }
   }

   // Search for the highest color index not used in ROOT:
   // We do not want to overwrite some colors...
   TSeqCollection *colorTable = gROOT->GetListOfColors();
   if ((color = (TColor *) colorTable->Last()) != 0) {
      if (color->GetNumber() > highestIndex) {
         highestIndex = color->GetNumber();
      }
      while ((color = (TColor *) (colorTable->Before(color))) != 0) {
         if (color->GetNumber() > highestIndex) {
            highestIndex = color->GetNumber();
         }
      }
   }
   highestIndex++;

   // Now create the colors and add them to the default palette:

   // For each defined gradient...
   TColor *hi;
   for (g = 1; g < Number; g++) {
      // create the colors...
      nColorsGradient = (Int_t) (floor(NColors*Stops[g]) - floor(NColors*Stops[g-1]));
      for (c = 0; c < nColorsGradient; c++) {
         new TColor(highestIndex,
                    Red[g-1] + c * (Red[g] - Red[g-1])/ nColorsGradient,
                    Green[g-1] + c * (Green[g] - Green[g-1])/ nColorsGradient,
                    Blue[g-1] + c * (Blue[g] - Blue[g-1])/ nColorsGradient,
                    "  ");
         hi = gROOT->GetColor(highestIndex);
         if (hi) hi->SetAlpha(alpha);
         palette[nPalette] = highestIndex;
         nPalette++;
         highestIndex++;
      }
   }

   TColor::SetPalette(nPalette, palette);
   delete [] palette;

   return highestIndex - NColors;
}


//______________________________________________________________________________
void TColor::SetPalette(Int_t ncolors, Int_t *colors, Float_t alpha)
{
   /* Begin_html
   Static function.
   The color palette is used by the histogram classes
    (see TH1::Draw options).
   For example TH1::Draw("col") draws a 2-D histogram with cells
   represented by a box filled with a color CI function of the cell content.
   if the cell content is N, the color CI used will be the color number
   in colors[N],etc. If the maximum cell content is > ncolors, all
   cell contents are scaled to ncolors.
   <p>
   <tt>if ncolors <= 0</tt> a default palette (see below) of 50 colors is
   defined. The colors defined in this palette are OK for coloring pads, labels.
   <p>
   <pre>
   index 0->9   : grey colors from light to dark grey
   index 10->19 : "brown" colors
   index 20->29 : "blueish" colors
   index 30->39 : "redish" colors
   index 40->49 : basic colors
   </pre>
   <p>
   <tt>if ncolors == 1 && colors == 0</tt>, a Rainbow Color map is created
   with 50 colors. It is kept for backward compatibility. Better palettes like
   kBird are recommended.
   <p>
   High quality predefined palettes with 255 colors are available when <tt>colors == 0</tt>.
   The following value of <tt>ncolors</tt> give access to:
   <p>
   <pre>
   if ncolors = 51 and colors=0, a Deep Sea palette is used.
   if ncolors = 52 and colors=0, a Grey Scale palette is used.
   if ncolors = 53 and colors=0, a Dark Body Radiator palette is used.
   if ncolors = 54 and colors=0, a Two-Color Hue palette is used.(dark blue through neutral gray to bright yellow)
   if ncolors = 55 and colors=0, a Rain Bow palette is used.
   if ncolors = 56 and colors=0, an Inverted Dark Body Radiator palette is used.
   if ncolors = 57 and colors=0, a monotonically increasing L value palette is used.
   if ncolors = 58 and colors=0, a Cubehelix palette is used
                                   (Cf. Dave Green's "cubehelix" colour scheme at http://www.mrao.cam.ac.uk/~dag/CUBEHELIX/)
   if ncolors = 59 and colors=0, a Green Red Violet palette is used.
   if ncolors = 60 and colors=0, a Blue Red Yellow palette is used.
   if ncolors = 61 and colors=0, an Ocean palette is used.
   if ncolors = 62 and colors=0, a Color Printable On Grey palette is used.
   if ncolors = 63 and colors=0, an Alpine palette is used.
   if ncolors = 64 and colors=0, an Aquamarine palette is used.
   if ncolors = 65 and colors=0, an Army palette is used.
   if ncolors = 66 and colors=0, an Atlantic palette is used.
   if ncolors = 67 and colors=0, an Aurora palette is used.
   if ncolors = 68 and colors=0, an Avocado palette is used.
   if ncolors = 69 and colors=0, a Beach palette is used.
   if ncolors = 70 and colors=0, a Black Body palette is used.
   if ncolors = 71 and colors=0, a Blue Green Yellow palette is used.
   if ncolors = 72 and colors=0, a Brown Cyan palette is used.
   if ncolors = 73 and colors=0, a CMYK palette is used.
   if ncolors = 74 and colors=0, a Candy palette is used.
   if ncolors = 75 and colors=0, a Cherry palette is used.
   if ncolors = 76 and colors=0, a Coffee palette is used.
   if ncolors = 77 and colors=0, a Dark Rain Bow palette is used.
   if ncolors = 78 and colors=0, a Dark Terrain palette is used.
   if ncolors = 79 and colors=0, a Fall palette is used.
   if ncolors = 80 and colors=0, a Fruit Punch palette is used.
   if ncolors = 81 and colors=0, a Fuchsia palette is used.
   if ncolors = 82 and colors=0, a Grey Yellow palette is used.
   if ncolors = 83 and colors=0, a Green Brown Terrain palette is used.
   if ncolors = 84 and colors=0, a Green Pink palette is used.
   if ncolors = 85 and colors=0, an Island palette is used.
   if ncolors = 86 and colors=0, a Lake palette is used.
   if ncolors = 87 and colors=0, a Light Temperature palette is used.
   if ncolors = 88 and colors=0, a Light Terrain palette is used.
   if ncolors = 89 and colors=0, a Mint palette is used.
   if ncolors = 90 and colors=0, a Neon palette is used.
   if ncolors = 91 and colors=0, a Pastel palette is used.
   if ncolors = 92 and colors=0, a Pearl palette is used.
   if ncolors = 93 and colors=0, a Pigeon palette is used.
   if ncolors = 94 and colors=0, a Plum palette is used.
   if ncolors = 95 and colors=0, a Red Blue palette is used.
   if ncolors = 96 and colors=0, a Rose palette is used.
   if ncolors = 97 and colors=0, a Rust palette is used.
   if ncolors = 98 and colors=0, a Sandy Terrain palette is used.
   if ncolors = 99 and colors=0, a Sienna palette is used.
   if ncolors = 100 and colors=0, a Solar palette is used.
   if ncolors = 101 and colors=0, a South West palette is used.
   if ncolors = 102 and colors=0, a Starry Night palette is used.
   if ncolors = 103 and colors=0, a Sunset palette is used.
   if ncolors = 104 and colors=0, a Temperature Map palette is used.
   if ncolors = 105 and colors=0, a Thermometer palette is used.
   if ncolors = 106 and colors=0, a Valentine palette is used.
   if ncolors = 107 and colors=0, a Visible Spectrum palette is used.
   if ncolors = 108 and colors=0, a Water Melon palette is used.
   if ncolors = 109 and colors=0, a Cool palette is used.
   if ncolors = 110 and colors=0, a Copper palette is used.
   if ncolors = 111 and colors=0, a Gist Earth palette is used.
   </pre>
   These palettes can also be accessed by names:
   <pre>
   kDeepSea=51,          kGreyScale=52,    kDarkBodyRadiator=53,
   kBlueYellow= 54,      kRainBow=55,      kInvertedDarkBodyRadiator=56,
   kBird=57,             kCubehelix=58,    kGreenRedViolet=59,
   kBlueRedYellow=60,    kOcean=61,        kColorPrintableOnGrey=62,
   kAlpine=63,           kAquamarine=64,   kArmy=65,
   kAtlantic=66,         kAurora=67,       kAvocado=68,
   kBeach=69,            kBlackBody=70,    kBlueGreenYellow=71,
   kBrownCyan=72,        kCMYK=73,         kCandy=74,
   kCherry=75,           kCoffee=76,       kDarkRainBow=77,
   kDarkTerrain=78,      kFall=79,         kFruitPunch=80,
   kFuchsia=81,          kGreyYellow=82,   kGreenBrownTerrain=83,
   kGreenPink=84,        kIsland=85,       kLake=86,
   kLightTemperature=87, kLightTerrain=88, kMint=89,
   kNeon=90,             kPastel=91,       kPearl=92,
   kPigeon=93,           kPlum=94,         kRedBlue=95,
   kRose=96,             kRust=97,         kSandyTerrain=98,
   kSienna=99,           kSolar=100,       kSouthWest=101,
   kStarryNight=102,     kSunset=103,      kTemperatureMap=104,
   kThermometer=105,     kValentine=106,   kVisibleSpectrum=107,
   kWaterMelon=108,      kCool=109,        kCopper=110,
   kGistEarth=111
   </pre>
   For example:
   <pre>
   gStyle->SetPalette->(kBird);
   </pre>
   Set the current palette as "Bird" (number 57).
   <p>
   The color numbers specified in the palette can be viewed by selecting
   the item "colors" in the "VIEW" menu of the canvas toolbar.
   The color parameters can be changed via TColor::SetRGB.
   <p>
   Note that when drawing a 2D histogram <tt>h2</tt> with the option "COL" or
   "COLZ" or with any "CONT" options using the color map, the number of colors
   used is defined by the number of contours <tt>n</tt> specified with:
   <tt>h2->SetContour(n)</tt>
   End_html */

   Int_t i;
   static Int_t paletteType = 0;
   Int_t palette[50] = {19,18,17,16,15,14,13,12,11,20,
                        21,22,23,24,25,26,27,28,29,30, 8,
                        31,32,33,34,35,36,37,38,39,40, 9,
                        41,42,43,44,45,47,48,49,46,50, 2,
                         7, 6, 5, 4, 3, 2,1};
   // set default palette (pad type)
   if (ncolors <= 0) {
      ncolors = 50;
      fgPalette.Set(ncolors);
      for (i=0;i<ncolors;i++) fgPalette.fArray[i] = palette[i];
      paletteType = 1;
      return;
   }

   // set Rainbow Color map. Kept for backward compatibility.
   if (ncolors == 1 && colors == 0) {
      ncolors = 50;
      fgPalette.Set(ncolors);
      for (i=0;i<ncolors;i++) fgPalette.fArray[i] = 51+i;
      paletteType = 2;
      return;
   }

   // High quality palettes (255 levels)
   if (colors == 0 && ncolors>50) {
      if (paletteType == ncolors) return;

      TColor::InitializeColors();
      Double_t stops[9] = { 0.0000, 0.1250, 0.2500, 0.3750, 0.5000, 0.6250, 0.7500, 0.8750, 1.0000};

      switch (ncolors) {

      // Deep Sea
      case 51:
         {
            Double_t red[9]   = {  0./255.,  9./255., 13./255., 17./255., 24./255.,  32./255.,  27./255.,  25./255.,  29./255.};
            Double_t green[9] = {  0./255.,  0./255.,  0./255.,  2./255., 37./255.,  74./255., 113./255., 160./255., 221./255.};
            Double_t blue[9]  = { 28./255., 42./255., 59./255., 78./255., 98./255., 129./255., 154./255., 184./255., 221./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Grey Scale
      case 52:
         {
            Double_t red[9]   = { 0./255., 32./255., 64./255., 96./255., 128./255., 160./255., 192./255., 224./255., 255./255.};
            Double_t green[9] = { 0./255., 32./255., 64./255., 96./255., 128./255., 160./255., 192./255., 224./255., 255./255.};
            Double_t blue[9]  = { 0./255., 32./255., 64./255., 96./255., 128./255., 160./255., 192./255., 224./255., 255./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Dark Body Radiator
      case 53:
         {
            Double_t red[9]   = { 0./255., 45./255., 99./255., 156./255., 212./255., 230./255., 237./255., 234./255., 242./255.};
            Double_t green[9] = { 0./255.,  0./255.,  0./255.,  45./255., 101./255., 168./255., 238./255., 238./255., 243./255.};
            Double_t blue[9]  = { 0./255.,  1./255.,  1./255.,   3./255.,   9./255.,   8./255.,  11./255.,  95./255., 230./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Two-color hue (dark blue through neutral gray to bright yellow)
      case 54:
         {
            Double_t red[9]   = {  0./255.,  22./255., 44./255., 68./255., 93./255., 124./255., 160./255., 192./255., 237./255.};
            Double_t green[9] = {  0./255.,  16./255., 41./255., 67./255., 93./255., 125./255., 162./255., 194./255., 241./255.};
            Double_t blue[9]  = { 97./255., 100./255., 99./255., 99./255., 93./255.,  68./255.,  44./255.,  26./255.,  74./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Rain Bow
      case 55:
         {
            Double_t red[9]   = {  0./255.,   5./255.,  15./255.,  35./255., 102./255., 196./255., 208./255., 199./255., 110./255.};
            Double_t green[9] = {  0./255.,  48./255., 124./255., 192./255., 206./255., 226./255.,  97./255.,  16./255.,   0./255.};
            Double_t blue[9]  = { 99./255., 142./255., 198./255., 201./255.,  90./255.,  22./255.,  13./255.,   8./255.,   2./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Inverted Dark Body Radiator
      case 56:
         {
            Double_t red[9]   = { 242./255., 234./255., 237./255., 230./255., 212./255., 156./255., 99./255., 45./255., 0./255.};
            Double_t green[9] = { 243./255., 238./255., 238./255., 168./255., 101./255.,  45./255.,  0./255.,  0./255., 0./255.};
            Double_t blue[9]  = { 230./255.,  95./255.,  11./255.,   8./255.,   9./255.,   3./255.,  1./255.,  1./255., 0./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Bird
      case 57:
         {
            Double_t red[9]   = { 0.2082, 0.0592, 0.0780, 0.0232, 0.1802, 0.5301, 0.8186, 0.9956, 0.9764};
            Double_t green[9] = { 0.1664, 0.3599, 0.5041, 0.6419, 0.7178, 0.7492, 0.7328, 0.7862, 0.9832};
            Double_t blue[9]  = { 0.5293, 0.8684, 0.8385, 0.7914, 0.6425, 0.4662, 0.3499, 0.1968, 0.0539};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Cubehelix
      case 58:
         {
            Double_t red[9]   = { 0.0000, 0.0956, 0.0098, 0.2124, 0.6905, 0.9242, 0.7914, 0.7596, 1.0000};
            Double_t green[9] = { 0.0000, 0.1147, 0.3616, 0.5041, 0.4577, 0.4691, 0.6905, 0.9237, 1.0000};
            Double_t blue[9]  = { 0.0000, 0.2669, 0.3121, 0.1318, 0.2236, 0.6741, 0.9882, 0.9593, 1.0000};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Green Red Violet
      case 59:
         {
            Double_t red[9]   = {13./255., 23./255., 25./255., 63./255., 76./255., 104./255., 137./255., 161./255., 206./255.};
            Double_t green[9] = {95./255., 67./255., 37./255., 21./255.,  0./255.,  12./255.,  35./255.,  52./255.,  79./255.};
            Double_t blue[9]  = { 4./255.,  3./255.,  2./255.,  6./255., 11./255.,  22./255.,  49./255.,  98./255., 208./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Blue Red Yellow
      case 60:
         {
            Double_t red[9]   = {0./255.,  61./255.,  89./255., 122./255., 143./255., 160./255., 185./255., 204./255., 231./255.};
            Double_t green[9] = {0./255.,   0./255.,   0./255.,   0./255.,  14./255.,  37./255.,  72./255., 132./255., 235./255.};
            Double_t blue[9]  = {0./255., 140./255., 224./255., 144./255.,   4./255.,   5./255.,   6./255.,   9./255.,  13./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Ocean
      case 61:
         {
            Double_t red[9]   = { 14./255.,  7./255.,  2./255.,  0./255.,  5./255.,  11./255.,  55./255., 131./255., 229./255.};
            Double_t green[9] = {105./255., 56./255., 26./255.,  1./255., 42./255.,  74./255., 131./255., 171./255., 229./255.};
            Double_t blue[9]  = {  2./255., 21./255., 35./255., 60./255., 92./255., 113./255., 160./255., 185./255., 229./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Color Printable On Grey
      case 62:
         {
            Double_t red[9]   = { 0./255.,   0./255.,   0./255.,  70./255., 148./255., 231./255., 235./255., 237./255., 244./255.};
            Double_t green[9] = { 0./255.,   0./255.,   0./255.,   0./255.,   0./255.,  69./255.,  67./255., 216./255., 244./255.};
            Double_t blue[9]  = { 0./255., 102./255., 228./255., 231./255., 177./255., 124./255., 137./255.,  20./255., 244./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Alpine
      case 63:
         {
            Double_t red[9]   = { 50./255., 56./255., 63./255., 68./255.,  93./255., 121./255., 165./255., 192./255., 241./255.};
            Double_t green[9] = { 66./255., 81./255., 91./255., 96./255., 111./255., 128./255., 155./255., 189./255., 241./255.};
            Double_t blue[9]  = { 97./255., 91./255., 75./255., 65./255.,  77./255., 103./255., 143./255., 167./255., 217./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Aquamarine
      case 64:
         {
            Double_t red[9]   = { 145./255., 166./255., 167./255., 156./255., 131./255., 114./255., 101./255., 112./255., 132./255.};
            Double_t green[9] = { 158./255., 178./255., 179./255., 181./255., 163./255., 154./255., 144./255., 152./255., 159./255.};
            Double_t blue[9]  = { 190./255., 199./255., 201./255., 192./255., 176./255., 169./255., 160./255., 166./255., 190./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Army
      case 65:
         {
            Double_t red[9]   = { 93./255.,   91./255.,  99./255., 108./255., 130./255., 125./255., 132./255., 155./255., 174./255.};
            Double_t green[9] = { 126./255., 124./255., 128./255., 129./255., 131./255., 121./255., 119./255., 153./255., 173./255.};
            Double_t blue[9]  = { 103./255.,  94./255.,  87./255.,  85./255.,  80./255.,  85./255., 107./255., 120./255., 146./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Atlantic
      case 66:
         {
            Double_t red[9]   = { 24./255., 40./255., 69./255.,  90./255., 104./255., 114./255., 120./255., 132./255., 103./255.};
            Double_t green[9] = { 29./255., 52./255., 94./255., 127./255., 150./255., 162./255., 159./255., 151./255., 101./255.};
            Double_t blue[9]  = { 29./255., 52./255., 96./255., 132./255., 162./255., 181./255., 184./255., 186./255., 131./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Aurora
      case 67:
         {
            Double_t red[9]   = { 46./255., 38./255., 61./255., 92./255., 113./255., 121./255., 132./255., 150./255., 191./255.};
            Double_t green[9] = { 46./255., 36./255., 40./255., 69./255., 110./255., 135./255., 131./255.,  92./255.,  34./255.};
            Double_t blue[9]  = { 46./255., 80./255., 74./255., 70./255.,  81./255., 105./255., 165./255., 211./255., 225./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Avocado
      case 68:
         {
            Double_t red[9]   = { 0./255.,  4./255., 12./255.,  30./255.,  52./255., 101./255., 142./255., 190./255., 237./255.};
            Double_t green[9] = { 0./255., 40./255., 86./255., 121./255., 140./255., 172./255., 187./255., 213./255., 240./255.};
            Double_t blue[9]  = { 0./255.,  9./255., 14./255.,  18./255.,  21./255.,  23./255.,  27./255.,  35./255., 101./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Beach
      case 69:
         {
            Double_t red[9]   = { 198./255., 206./255., 206./255., 211./255., 198./255., 181./255., 161./255., 171./255., 244./255.};
            Double_t green[9] = { 103./255., 133./255., 150./255., 172./255., 178./255., 174./255., 163./255., 175./255., 244./255.};
            Double_t blue[9]  = {  49./255.,  54./255.,  55./255.,  66./255.,  91./255., 130./255., 184./255., 224./255., 244./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Black Body
      case 70:
         {
            Double_t red[9]   = { 243./255., 243./255., 240./255., 240./255., 241./255., 239./255., 186./255., 151./255., 129./255.};
            Double_t green[9] = {   0./255.,  46./255.,  99./255., 149./255., 194./255., 220./255., 183./255., 166./255., 147./255.};
            Double_t blue[9]  = {   6./255.,   8./255.,  36./255.,  91./255., 169./255., 235./255., 246./255., 240./255., 233./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Blue Green Yellow
      case 71:
         {
            Double_t red[9]   = { 22./255., 19./255.,  19./255.,  25./255.,  35./255.,  53./255.,  88./255., 139./255., 210./255.};
            Double_t green[9] = {  0./255., 32./255.,  69./255., 108./255., 135./255., 159./255., 183./255., 198./255., 215./255.};
            Double_t blue[9]  = { 77./255., 96./255., 110./255., 116./255., 110./255., 100./255.,  90./255.,  78./255.,  70./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Brown Cyan
      case 72:
         {
            Double_t red[9]   = { 68./255., 116./255., 165./255., 182./255., 189./255., 180./255., 145./255., 111./255.,  71./255.};
            Double_t green[9] = { 37./255.,  82./255., 135./255., 178./255., 204./255., 225./255., 221./255., 202./255., 147./255.};
            Double_t blue[9]  = { 16./255.,  55./255., 105./255., 147./255., 196./255., 226./255., 232./255., 224./255., 178./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // CMYK
      case 73:
         {
            Double_t red[9]   = {  61./255.,  99./255., 136./255., 181./255., 213./255., 225./255., 198./255., 136./255., 24./255.};
            Double_t green[9] = { 149./255., 140./255.,  96./255.,  83./255., 132./255., 178./255., 190./255., 135./255., 22./255.};
            Double_t blue[9]  = { 214./255., 203./255., 168./255., 135./255., 110./255., 100./255., 111./255., 113./255., 22./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Candy
      case 74:
         {
            Double_t red[9]   = { 76./255., 120./255., 156./255., 183./255., 197./255., 180./255., 162./255., 154./255., 140./255.};
            Double_t green[9] = { 34./255.,  35./255.,  42./255.,  69./255., 102./255., 137./255., 164./255., 188./255., 197./255.};
            Double_t blue[9]  = { 64./255.,  69./255.,  78./255., 105./255., 142./255., 177./255., 205./255., 217./255., 198./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Cherry
      case 75:
         {
            Double_t red[9]   = { 37./255., 102./255., 157./255., 188./255., 196./255., 214./255., 223./255., 235./255., 251./255.};
            Double_t green[9] = { 37./255.,  29./255.,  25./255.,  37./255.,  67./255.,  91./255., 132./255., 185./255., 251./255.};
            Double_t blue[9]  = { 37./255.,  32./255.,  33./255.,  45./255.,  66./255.,  98./255., 137./255., 187./255., 251./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Coffee
      case 76:
         {
            Double_t red[9]   = { 79./255., 100./255., 119./255., 137./255., 153./255., 172./255., 192./255., 205./255., 250./255.};
            Double_t green[9] = { 63./255.,  79./255.,  93./255., 103./255., 115./255., 135./255., 167./255., 196./255., 250./255.};
            Double_t blue[9]  = { 51./255.,  59./255.,  66./255.,  61./255.,  62./255.,  70./255., 110./255., 160./255., 250./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Dark Rain Bow
      case 77:
         {
            Double_t red[9]   = {  43./255.,  44./255., 50./255.,  66./255., 125./255., 172./255., 178./255., 155./255., 157./255.};
            Double_t green[9] = {  63./255.,  63./255., 85./255., 101./255., 138./255., 163./255., 122./255.,  51./255.,  39./255.};
            Double_t blue[9]  = { 121./255., 101./255., 58./255.,  44./255.,  47./255.,  55./255.,  57./255.,  44./255.,  43./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Dark Terrain
      case 78:
         {
            Double_t red[9]   = {  0./255., 41./255., 62./255., 79./255., 90./255., 87./255., 99./255., 140./255., 228./255.};
            Double_t green[9] = {  0./255., 57./255., 81./255., 93./255., 85./255., 70./255., 71./255., 125./255., 228./255.};
            Double_t blue[9]  = { 95./255., 91./255., 91./255., 82./255., 60./255., 43./255., 44./255., 112./255., 228./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Fall
      case 79:
         {
            Double_t red[9]   = { 49./255., 59./255., 72./255., 88./255., 114./255., 141./255., 176./255., 205./255., 222./255.};
            Double_t green[9] = { 78./255., 72./255., 66./255., 57./255.,  59./255.,  75./255., 106./255., 142./255., 173./255.};
            Double_t blue[9]  = { 78./255., 55./255., 46./255., 40./255.,  39./255.,  39./255.,  40./255.,  41./255.,  47./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Fruit Punch
      case 80:
         {
            Double_t red[9]   = { 243./255., 222./255., 201./255., 185./255., 165./255., 158./255., 166./255., 187./255., 219./255.};
            Double_t green[9] = {  94./255., 108./255., 132./255., 135./255., 125./255.,  96./255.,  68./255.,  51./255.,  61./255.};
            Double_t blue[9]  = {   7./255.,  9./255.,   12./255.,  19./255.,  45./255.,  89./255., 118./255., 146./255., 118./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Fuchsia
      case 81:
         {
            Double_t red[9]   = { 19./255., 44./255., 74./255., 105./255., 137./255., 166./255., 194./255., 206./255., 220./255.};
            Double_t green[9] = { 19./255., 28./255., 40./255.,  55./255.,  82./255., 110./255., 159./255., 181./255., 220./255.};
            Double_t blue[9]  = { 19./255., 42./255., 68./255.,  96./255., 129./255., 157./255., 188./255., 203./255., 220./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Grey Yellow
      case 82:
         {
            Double_t red[9]   = { 33./255., 44./255., 70./255.,  99./255., 140./255., 165./255., 199./255., 211./255., 216./255.};
            Double_t green[9] = { 38./255., 50./255., 76./255., 105./255., 140./255., 165./255., 191./255., 189./255., 167./255.};
            Double_t blue[9]  = { 55./255., 67./255., 97./255., 124./255., 140./255., 166./255., 163./255., 129./255.,  52./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Green Brown Terrain
      case 83:
         {
            Double_t red[9]   = { 0./255., 33./255., 73./255., 124./255., 136./255., 152./255., 159./255., 171./255., 223./255.};
            Double_t green[9] = { 0./255., 43./255., 92./255., 124./255., 134./255., 126./255., 121./255., 144./255., 223./255.};
            Double_t blue[9]  = { 0./255., 43./255., 68./255.,  76./255.,  73./255.,  64./255.,  72./255., 114./255., 223./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Green Pink
      case 84:
         {
            Double_t red[9]   = {  5./255.,  18./255.,  45./255., 124./255., 193./255., 223./255., 205./255., 128./255., 49./255.};
            Double_t green[9] = { 48./255., 134./255., 207./255., 230./255., 193./255., 113./255.,  28./255.,   0./255.,  7./255.};
            Double_t blue[9]  = {  6./255.,  15./255.,  41./255., 121./255., 193./255., 226./255., 208./255., 130./255., 49./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Island
      case 85:
         {
            Double_t red[9]   = { 180./255., 106./255., 104./255., 135./255., 164./255., 188./255., 189./255., 165./255., 144./255.};
            Double_t green[9] = {  72./255., 126./255., 154./255., 184./255., 198./255., 207./255., 205./255., 190./255., 179./255.};
            Double_t blue[9]  = {  41./255., 120./255., 158./255., 188./255., 194./255., 181./255., 145./255., 100./255.,  62./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Lake
      case 86:
         {
            Double_t red[9]   = {  57./255.,  72./255.,  94./255., 117./255., 136./255., 154./255., 174./255., 192./255., 215./255.};
            Double_t green[9] = {   0./255.,  33./255.,  68./255., 109./255., 140./255., 171./255., 192./255., 196./255., 209./255.};
            Double_t blue[9]  = { 116./255., 137./255., 173./255., 201./255., 200./255., 201./255., 203./255., 190./255., 187./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Light Temperature
      case 87:
         {
            Double_t red[9]   = {  31./255.,  71./255., 123./255., 160./255., 210./255., 222./255., 214./255., 199./255., 183./255.};
            Double_t green[9] = {  40./255., 117./255., 171./255., 211./255., 231./255., 220./255., 190./255., 132./255.,  65./255.};
            Double_t blue[9]  = { 234./255., 214./255., 228./255., 222./255., 210./255., 160./255., 105./255.,  60./255.,  34./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Light Terrain
      case 88:
         {
            Double_t red[9]   = { 123./255., 108./255., 109./255., 126./255., 154./255., 172./255., 188./255., 196./255., 218./255.};
            Double_t green[9] = { 184./255., 138./255., 130./255., 133./255., 154./255., 175./255., 188./255., 196./255., 218./255.};
            Double_t blue[9]  = { 208./255., 130./255., 109./255.,  99./255., 110./255., 122./255., 150./255., 171./255., 218./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Mint
      case 89:
         {
            Double_t red[9]   = { 105./255., 106./255., 122./255., 143./255., 159./255., 172./255., 176./255., 181./255., 207./255.};
            Double_t green[9] = { 252./255., 197./255., 194./255., 187./255., 174./255., 162./255., 153./255., 136./255., 125./255.};
            Double_t blue[9]  = { 146./255., 133./255., 144./255., 155./255., 163./255., 167./255., 166./255., 162./255., 174./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Neon
      case 90:
         {
            Double_t red[9]   = { 171./255., 141./255., 145./255., 152./255., 154./255., 159./255., 163./255., 158./255., 177./255.};
            Double_t green[9] = { 236./255., 143./255., 100./255.,  63./255.,  53./255.,  55./255.,  44./255.,  31./255.,   6./255.};
            Double_t blue[9]  = {  59./255.,  48./255.,  46./255.,  44./255.,  42./255.,  54./255.,  82./255., 112./255., 179./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Pastel
      case 91:
         {
            Double_t red[9]   = { 180./255., 190./255., 209./255., 223./255., 204./255., 228./255., 205./255., 152./255.,  91./255.};
            Double_t green[9] = {  93./255., 125./255., 147./255., 172./255., 181./255., 224./255., 233./255., 198./255., 158./255.};
            Double_t blue[9]  = { 236./255., 218./255., 160./255., 133./255., 114./255., 132./255., 162./255., 220./255., 218./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Pearl
      case 92:
         {
            Double_t red[9]   = { 225./255., 183./255., 162./255., 135./255., 115./255., 111./255., 119./255., 145./255., 211./255.};
            Double_t green[9] = { 205./255., 177./255., 166./255., 135./255., 124./255., 117./255., 117./255., 132./255., 172./255.};
            Double_t blue[9]  = { 186./255., 165./255., 155./255., 135./255., 126./255., 130./255., 150./255., 178./255., 226./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Pigeon
      case 93:
         {
            Double_t red[9]   = { 39./255., 43./255., 59./255., 63./255., 80./255., 116./255., 153./255., 177./255., 223./255.};
            Double_t green[9] = { 39./255., 43./255., 59./255., 74./255., 91./255., 114./255., 139./255., 165./255., 223./255.};
            Double_t blue[9]  = { 39./255., 50./255., 59./255., 70./255., 85./255., 115./255., 151./255., 176./255., 223./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Plum
      case 94:
         {
            Double_t red[9]   = { 0./255., 38./255., 60./255., 76./255., 84./255., 89./255., 101./255., 128./255., 204./255.};
            Double_t green[9] = { 0./255., 10./255., 15./255., 23./255., 35./255., 57./255.,  83./255., 123./255., 199./255.};
            Double_t blue[9]  = { 0./255., 11./255., 22./255., 40./255., 63./255., 86./255.,  97./255.,  94./255.,  85./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Red Blue
      case 95:
         {
            Double_t red[9]   = { 94./255., 112./255., 141./255., 165./255., 167./255., 140./255.,  91./255.,  49./255.,  27./255.};
            Double_t green[9] = { 27./255.,  46./255.,  88./255., 135./255., 166./255., 161./255., 135./255.,  97./255.,  58./255.};
            Double_t blue[9]  = { 42./255.,  52./255.,  81./255., 106./255., 139./255., 158./255., 155./255., 137./255., 116./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Rose
      case 96:
         {
            Double_t red[9]   = { 30./255., 49./255., 79./255., 117./255., 135./255., 151./255., 146./255., 138./255., 147./255.};
            Double_t green[9] = { 63./255., 60./255., 72./255.,  90./255.,  94./255.,  94./255.,  68./255.,  46./255.,  16./255.};
            Double_t blue[9]  = { 18./255., 28./255., 41./255.,  56./255.,  62./255.,  63./255.,  50./255.,  36./255.,  21./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Rust
      case 97:
         {
            Double_t red[9]   = {  0./255., 30./255., 63./255., 101./255., 143./255., 152./255., 169./255., 187./255., 230./255.};
            Double_t green[9] = {  0./255., 14./255., 28./255.,  42./255.,  58./255.,  61./255.,  67./255.,  74./255.,  91./255.};
            Double_t blue[9]  = { 39./255., 26./255., 21./255.,  18./255.,  15./255.,  14./255.,  14./255.,  13./255.,  13./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Sandy Terrain
      case 98:
         {
            Double_t red[9]   = { 149./255., 140./255., 164./255., 179./255., 182./255., 181./255., 131./255., 87./255., 61./255.};
            Double_t green[9] = {  62./255.,  70./255., 107./255., 136./255., 144./255., 138./255., 117./255., 87./255., 74./255.};
            Double_t blue[9]  = {  40./255.,  38./255.,  45./255.,  49./255.,  49./255.,  49./255.,  38./255., 32./255., 34./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Sienna
      case 99:
         {
            Double_t red[9]   = { 99./255., 112./255., 148./255., 165./255., 179./255., 182./255., 183./255., 183./255., 208./255.};
            Double_t green[9] = { 39./255.,  40./255.,  57./255.,  79./255., 104./255., 127./255., 148./255., 161./255., 198./255.};
            Double_t blue[9]  = { 15./255.,  16./255.,  18./255.,  33./255.,  51./255.,  79./255., 103./255., 129./255., 177./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Solar
      case 100:
         {
            Double_t red[9]   = { 99./255., 116./255., 154./255., 174./255., 200./255., 196./255., 201./255., 201./255., 230./255.};
            Double_t green[9] = {  0./255.,   0./255.,   8./255.,  32./255.,  58./255.,  83./255., 119./255., 136./255., 173./255.};
            Double_t blue[9]  = {  5./255.,   6./255.,   7./255.,   9./255.,   9./255.,  14./255.,  17./255.,  19./255.,  24./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // South West
      case 101:
         {
            Double_t red[9]   = { 82./255., 106./255., 126./255., 141./255., 155./255., 163./255., 142./255., 107./255.,  66./255.};
            Double_t green[9] = { 62./255.,  44./255.,  69./255., 107./255., 135./255., 152./255., 149./255., 132./255., 119./255.};
            Double_t blue[9]  = { 39./255.,  25./255.,  31./255.,  60./255.,  73./255.,  68./255.,  49./255.,  72./255., 188./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Starry Night
      case 102:
         {
            Double_t red[9]   = { 18./255., 29./255., 44./255.,  72./255., 116./255., 158./255., 184./255., 208./255., 221./255.};
            Double_t green[9] = { 27./255., 46./255., 71./255., 105./255., 146./255., 177./255., 189./255., 190./255., 183./255.};
            Double_t blue[9]  = { 39./255., 55./255., 80./255., 108./255., 130./255., 133./255., 124./255., 100./255.,  76./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Sunset
      case 103:
         {
            Double_t red[9]   = { 0./255., 48./255., 119./255., 173./255., 212./255., 224./255., 228./255., 228./255., 245./255.};
            Double_t green[9] = { 0./255., 13./255.,  30./255.,  47./255.,  79./255., 127./255., 167./255., 205./255., 245./255.};
            Double_t blue[9]  = { 0./255., 68./255.,  75./255.,  43./255.,  16./255.,  22./255.,  55./255., 128./255., 245./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Temperature Map
      case 104:
         {
            Double_t red[9]   = {  34./255.,  70./255., 129./255., 187./255., 225./255., 226./255., 216./255., 193./255., 179./255.};
            Double_t green[9] = {  48./255.,  91./255., 147./255., 194./255., 226./255., 229./255., 196./255., 110./255.,  12./255.};
            Double_t blue[9]  = { 234./255., 212./255., 216./255., 224./255., 206./255., 110./255.,  53./255.,  40./255.,  29./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Thermometer
      case 105:
         {
            Double_t red[9]   = {  30./255.,  55./255., 103./255., 147./255., 174./255., 203./255., 188./255., 151./255., 105./255.};
            Double_t green[9] = {   0./255.,  65./255., 138./255., 182./255., 187./255., 175./255., 121./255.,  53./255.,   9./255.};
            Double_t blue[9]  = { 191./255., 202./255., 212./255., 208./255., 171./255., 140./255.,  97./255.,  57./255.,  30./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Valentine
      case 106:
         {
            Double_t red[9]   = { 112./255., 97./255., 113./255., 125./255., 138./255., 159./255., 178./255., 188./255., 225./255.};
            Double_t green[9] = {  16./255., 17./255.,  24./255.,  37./255.,  56./255.,  81./255., 110./255., 136./255., 189./255.};
            Double_t blue[9]  = {  38./255., 35./255.,  46./255.,  59./255.,  78./255., 103./255., 130./255., 152./255., 201./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Visible Spectrum
      case 107:
         {
            Double_t red[9]   = { 18./255.,  72./255.,   5./255.,  23./255.,  29./255., 201./255., 200./255., 98./255., 29./255.};
            Double_t green[9] = {  0./255.,   0./255.,  43./255., 167./255., 211./255., 117./255.,   0./255.,  0./255.,  0./255.};
            Double_t blue[9]  = { 51./255., 203./255., 177./255.,  26./255.,  10./255.,   9./255.,   8./255.,  3./255.,  0./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Water Melon
      case 108:
         {
            Double_t red[9]   = { 19./255., 42./255., 64./255.,  88./255., 118./255., 147./255., 175./255., 187./255., 205./255.};
            Double_t green[9] = { 19./255., 55./255., 89./255., 125./255., 154./255., 169./255., 161./255., 129./255.,  70./255.};
            Double_t blue[9]  = { 19./255., 32./255., 47./255.,  70./255., 100./255., 128./255., 145./255., 130./255.,  75./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Cool
      case 109:
         {
            Double_t red[9]   = {  33./255.,  31./255.,  42./255.,  68./255.,  86./255., 111./255., 141./255., 172./255., 227./255.};
            Double_t green[9] = { 255./255., 175./255., 145./255., 106./255.,  88./255.,  55./255.,  15./255.,   0./255.,   0./255.};
            Double_t blue[9]  = { 255./255., 205./255., 202./255., 203./255., 208./255., 205./255., 203./255., 206./255., 231./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Copper
      case 110:
         {
            Double_t red[9]   = { 0./255., 25./255., 50./255., 79./255., 110./255., 145./255., 181./255., 201./255., 254./255.};
            Double_t green[9] = { 0./255., 16./255., 30./255., 46./255.,  63./255.,  82./255., 101./255., 124./255., 179./255.};
            Double_t blue[9]  = { 0./255., 12./255., 21./255., 29./255.,  39./255.,  49./255.,  61./255.,  74./255., 103./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      // Gist Earth
      case 111:
         {
            Double_t red[9]   = { 0./255., 13./255.,  30./255.,  44./255.,  72./255., 120./255., 156./255., 200./255., 247./255.};
            Double_t green[9] = { 0./255., 36./255.,  84./255., 117./255., 141./255., 153./255., 151./255., 158./255., 247./255.};
            Double_t blue[9]  = { 0./255., 94./255., 100./255.,  82./255.,  56./255.,  66./255.,  76./255., 131./255., 247./255.};
            TColor::CreateGradientColorTable(9, stops, red, green, blue, 255, alpha);
         }
         break;

      default:
         ::Error("SetPalette", "Unknown palette number %d", ncolors);
         return;
      }
      paletteType = ncolors;
      return;
   }

   // set user defined palette
   fgPalette.Set(ncolors);
   if (colors)  for (i=0;i<ncolors;i++) fgPalette.fArray[i] = colors[i];
   else         for (i=0;i<ncolors;i++) fgPalette.fArray[i] = palette[i];
   paletteType = 3;
}

 TColor.cxx:1
 TColor.cxx:2
 TColor.cxx:3
 TColor.cxx:4
 TColor.cxx:5
 TColor.cxx:6
 TColor.cxx:7
 TColor.cxx:8
 TColor.cxx:9
 TColor.cxx:10
 TColor.cxx:11
 TColor.cxx:12
 TColor.cxx:13
 TColor.cxx:14
 TColor.cxx:15
 TColor.cxx:16
 TColor.cxx:17
 TColor.cxx:18
 TColor.cxx:19
 TColor.cxx:20
 TColor.cxx:21
 TColor.cxx:22
 TColor.cxx:23
 TColor.cxx:24
 TColor.cxx:25
 TColor.cxx:26
 TColor.cxx:27
 TColor.cxx:28
 TColor.cxx:29
 TColor.cxx:30
 TColor.cxx:31
 TColor.cxx:32
 TColor.cxx:33
 TColor.cxx:34
 TColor.cxx:35
 TColor.cxx:36
 TColor.cxx:37
 TColor.cxx:38
 TColor.cxx:39
 TColor.cxx:40
 TColor.cxx:41
 TColor.cxx:42
 TColor.cxx:43
 TColor.cxx:44
 TColor.cxx:45
 TColor.cxx:46
 TColor.cxx:47
 TColor.cxx:48
 TColor.cxx:49
 TColor.cxx:50
 TColor.cxx:51
 TColor.cxx:52
 TColor.cxx:53
 TColor.cxx:54
 TColor.cxx:55
 TColor.cxx:56
 TColor.cxx:57
 TColor.cxx:58
 TColor.cxx:59
 TColor.cxx:60
 TColor.cxx:61
 TColor.cxx:62
 TColor.cxx:63
 TColor.cxx:64
 TColor.cxx:65
 TColor.cxx:66
 TColor.cxx:67
 TColor.cxx:68
 TColor.cxx:69
 TColor.cxx:70
 TColor.cxx:71
 TColor.cxx:72
 TColor.cxx:73
 TColor.cxx:74
 TColor.cxx:75
 TColor.cxx:76
 TColor.cxx:77
 TColor.cxx:78
 TColor.cxx:79
 TColor.cxx:80
 TColor.cxx:81
 TColor.cxx:82
 TColor.cxx:83
 TColor.cxx:84
 TColor.cxx:85
 TColor.cxx:86
 TColor.cxx:87
 TColor.cxx:88
 TColor.cxx:89
 TColor.cxx:90
 TColor.cxx:91
 TColor.cxx:92
 TColor.cxx:93
 TColor.cxx:94
 TColor.cxx:95
 TColor.cxx:96
 TColor.cxx:97
 TColor.cxx:98
 TColor.cxx:99
 TColor.cxx:100
 TColor.cxx:101
 TColor.cxx:102
 TColor.cxx:103
 TColor.cxx:104
 TColor.cxx:105
 TColor.cxx:106
 TColor.cxx:107
 TColor.cxx:108
 TColor.cxx:109
 TColor.cxx:110
 TColor.cxx:111
 TColor.cxx:112
 TColor.cxx:113
 TColor.cxx:114
 TColor.cxx:115
 TColor.cxx:116
 TColor.cxx:117
 TColor.cxx:118
 TColor.cxx:119
 TColor.cxx:120
 TColor.cxx:121
 TColor.cxx:122
 TColor.cxx:123
 TColor.cxx:124
 TColor.cxx:125
 TColor.cxx:126
 TColor.cxx:127
 TColor.cxx:128
 TColor.cxx:129
 TColor.cxx:130
 TColor.cxx:131
 TColor.cxx:132
 TColor.cxx:133
 TColor.cxx:134
 TColor.cxx:135
 TColor.cxx:136
 TColor.cxx:137
 TColor.cxx:138
 TColor.cxx:139
 TColor.cxx:140
 TColor.cxx:141
 TColor.cxx:142
 TColor.cxx:143
 TColor.cxx:144
 TColor.cxx:145
 TColor.cxx:146
 TColor.cxx:147
 TColor.cxx:148
 TColor.cxx:149
 TColor.cxx:150
 TColor.cxx:151
 TColor.cxx:152
 TColor.cxx:153
 TColor.cxx:154
 TColor.cxx:155
 TColor.cxx:156
 TColor.cxx:157
 TColor.cxx:158
 TColor.cxx:159
 TColor.cxx:160
 TColor.cxx:161
 TColor.cxx:162
 TColor.cxx:163
 TColor.cxx:164
 TColor.cxx:165
 TColor.cxx:166
 TColor.cxx:167
 TColor.cxx:168
 TColor.cxx:169
 TColor.cxx:170
 TColor.cxx:171
 TColor.cxx:172
 TColor.cxx:173
 TColor.cxx:174
 TColor.cxx:175
 TColor.cxx:176
 TColor.cxx:177
 TColor.cxx:178
 TColor.cxx:179
 TColor.cxx:180
 TColor.cxx:181
 TColor.cxx:182
 TColor.cxx:183
 TColor.cxx:184
 TColor.cxx:185
 TColor.cxx:186
 TColor.cxx:187
 TColor.cxx:188
 TColor.cxx:189
 TColor.cxx:190
 TColor.cxx:191
 TColor.cxx:192
 TColor.cxx:193
 TColor.cxx:194
 TColor.cxx:195
 TColor.cxx:196
 TColor.cxx:197
 TColor.cxx:198
 TColor.cxx:199
 TColor.cxx:200
 TColor.cxx:201
 TColor.cxx:202
 TColor.cxx:203
 TColor.cxx:204
 TColor.cxx:205
 TColor.cxx:206
 TColor.cxx:207
 TColor.cxx:208
 TColor.cxx:209
 TColor.cxx:210
 TColor.cxx:211
 TColor.cxx:212
 TColor.cxx:213
 TColor.cxx:214
 TColor.cxx:215
 TColor.cxx:216
 TColor.cxx:217
 TColor.cxx:218
 TColor.cxx:219
 TColor.cxx:220
 TColor.cxx:221
 TColor.cxx:222
 TColor.cxx:223
 TColor.cxx:224
 TColor.cxx:225
 TColor.cxx:226
 TColor.cxx:227
 TColor.cxx:228
 TColor.cxx:229
 TColor.cxx:230
 TColor.cxx:231
 TColor.cxx:232
 TColor.cxx:233
 TColor.cxx:234
 TColor.cxx:235
 TColor.cxx:236
 TColor.cxx:237
 TColor.cxx:238
 TColor.cxx:239
 TColor.cxx:240
 TColor.cxx:241
 TColor.cxx:242
 TColor.cxx:243
 TColor.cxx:244
 TColor.cxx:245
 TColor.cxx:246
 TColor.cxx:247
 TColor.cxx:248
 TColor.cxx:249
 TColor.cxx:250
 TColor.cxx:251
 TColor.cxx:252
 TColor.cxx:253
 TColor.cxx:254
 TColor.cxx:255
 TColor.cxx:256
 TColor.cxx:257
 TColor.cxx:258
 TColor.cxx:259
 TColor.cxx:260
 TColor.cxx:261
 TColor.cxx:262
 TColor.cxx:263
 TColor.cxx:264
 TColor.cxx:265
 TColor.cxx:266
 TColor.cxx:267
 TColor.cxx:268
 TColor.cxx:269
 TColor.cxx:270
 TColor.cxx:271
 TColor.cxx:272
 TColor.cxx:273
 TColor.cxx:274
 TColor.cxx:275
 TColor.cxx:276
 TColor.cxx:277
 TColor.cxx:278
 TColor.cxx:279
 TColor.cxx:280
 TColor.cxx:281
 TColor.cxx:282
 TColor.cxx:283
 TColor.cxx:284
 TColor.cxx:285
 TColor.cxx:286
 TColor.cxx:287
 TColor.cxx:288
 TColor.cxx:289
 TColor.cxx:290
 TColor.cxx:291
 TColor.cxx:292
 TColor.cxx:293
 TColor.cxx:294
 TColor.cxx:295
 TColor.cxx:296
 TColor.cxx:297
 TColor.cxx:298
 TColor.cxx:299
 TColor.cxx:300
 TColor.cxx:301
 TColor.cxx:302
 TColor.cxx:303
 TColor.cxx:304
 TColor.cxx:305
 TColor.cxx:306
 TColor.cxx:307
 TColor.cxx:308
 TColor.cxx:309
 TColor.cxx:310
 TColor.cxx:311
 TColor.cxx:312
 TColor.cxx:313
 TColor.cxx:314
 TColor.cxx:315
 TColor.cxx:316
 TColor.cxx:317
 TColor.cxx:318
 TColor.cxx:319
 TColor.cxx:320
 TColor.cxx:321
 TColor.cxx:322
 TColor.cxx:323
 TColor.cxx:324
 TColor.cxx:325
 TColor.cxx:326
 TColor.cxx:327
 TColor.cxx:328
 TColor.cxx:329
 TColor.cxx:330
 TColor.cxx:331
 TColor.cxx:332
 TColor.cxx:333
 TColor.cxx:334
 TColor.cxx:335
 TColor.cxx:336
 TColor.cxx:337
 TColor.cxx:338
 TColor.cxx:339
 TColor.cxx:340
 TColor.cxx:341
 TColor.cxx:342
 TColor.cxx:343
 TColor.cxx:344
 TColor.cxx:345
 TColor.cxx:346
 TColor.cxx:347
 TColor.cxx:348
 TColor.cxx:349
 TColor.cxx:350
 TColor.cxx:351
 TColor.cxx:352
 TColor.cxx:353
 TColor.cxx:354
 TColor.cxx:355
 TColor.cxx:356
 TColor.cxx:357
 TColor.cxx:358
 TColor.cxx:359
 TColor.cxx:360
 TColor.cxx:361
 TColor.cxx:362
 TColor.cxx:363
 TColor.cxx:364
 TColor.cxx:365
 TColor.cxx:366
 TColor.cxx:367
 TColor.cxx:368
 TColor.cxx:369
 TColor.cxx:370
 TColor.cxx:371
 TColor.cxx:372
 TColor.cxx:373
 TColor.cxx:374
 TColor.cxx:375
 TColor.cxx:376
 TColor.cxx:377
 TColor.cxx:378
 TColor.cxx:379
 TColor.cxx:380
 TColor.cxx:381
 TColor.cxx:382
 TColor.cxx:383
 TColor.cxx:384
 TColor.cxx:385
 TColor.cxx:386
 TColor.cxx:387
 TColor.cxx:388
 TColor.cxx:389
 TColor.cxx:390
 TColor.cxx:391
 TColor.cxx:392
 TColor.cxx:393
 TColor.cxx:394
 TColor.cxx:395
 TColor.cxx:396
 TColor.cxx:397
 TColor.cxx:398
 TColor.cxx:399
 TColor.cxx:400
 TColor.cxx:401
 TColor.cxx:402
 TColor.cxx:403
 TColor.cxx:404
 TColor.cxx:405
 TColor.cxx:406
 TColor.cxx:407
 TColor.cxx:408
 TColor.cxx:409
 TColor.cxx:410
 TColor.cxx:411
 TColor.cxx:412
 TColor.cxx:413
 TColor.cxx:414
 TColor.cxx:415
 TColor.cxx:416
 TColor.cxx:417
 TColor.cxx:418
 TColor.cxx:419
 TColor.cxx:420
 TColor.cxx:421
 TColor.cxx:422
 TColor.cxx:423
 TColor.cxx:424
 TColor.cxx:425
 TColor.cxx:426
 TColor.cxx:427
 TColor.cxx:428
 TColor.cxx:429
 TColor.cxx:430
 TColor.cxx:431
 TColor.cxx:432
 TColor.cxx:433
 TColor.cxx:434
 TColor.cxx:435
 TColor.cxx:436
 TColor.cxx:437
 TColor.cxx:438
 TColor.cxx:439
 TColor.cxx:440
 TColor.cxx:441
 TColor.cxx:442
 TColor.cxx:443
 TColor.cxx:444
 TColor.cxx:445
 TColor.cxx:446
 TColor.cxx:447
 TColor.cxx:448
 TColor.cxx:449
 TColor.cxx:450
 TColor.cxx:451
 TColor.cxx:452
 TColor.cxx:453
 TColor.cxx:454
 TColor.cxx:455
 TColor.cxx:456
 TColor.cxx:457
 TColor.cxx:458
 TColor.cxx:459
 TColor.cxx:460
 TColor.cxx:461
 TColor.cxx:462
 TColor.cxx:463
 TColor.cxx:464
 TColor.cxx:465
 TColor.cxx:466
 TColor.cxx:467
 TColor.cxx:468
 TColor.cxx:469
 TColor.cxx:470
 TColor.cxx:471
 TColor.cxx:472
 TColor.cxx:473
 TColor.cxx:474
 TColor.cxx:475
 TColor.cxx:476
 TColor.cxx:477
 TColor.cxx:478
 TColor.cxx:479
 TColor.cxx:480
 TColor.cxx:481
 TColor.cxx:482
 TColor.cxx:483
 TColor.cxx:484
 TColor.cxx:485
 TColor.cxx:486
 TColor.cxx:487
 TColor.cxx:488
 TColor.cxx:489
 TColor.cxx:490
 TColor.cxx:491
 TColor.cxx:492
 TColor.cxx:493
 TColor.cxx:494
 TColor.cxx:495
 TColor.cxx:496
 TColor.cxx:497
 TColor.cxx:498
 TColor.cxx:499
 TColor.cxx:500
 TColor.cxx:501
 TColor.cxx:502
 TColor.cxx:503
 TColor.cxx:504
 TColor.cxx:505
 TColor.cxx:506
 TColor.cxx:507
 TColor.cxx:508
 TColor.cxx:509
 TColor.cxx:510
 TColor.cxx:511
 TColor.cxx:512
 TColor.cxx:513
 TColor.cxx:514
 TColor.cxx:515
 TColor.cxx:516
 TColor.cxx:517
 TColor.cxx:518
 TColor.cxx:519
 TColor.cxx:520
 TColor.cxx:521
 TColor.cxx:522
 TColor.cxx:523
 TColor.cxx:524
 TColor.cxx:525
 TColor.cxx:526
 TColor.cxx:527
 TColor.cxx:528
 TColor.cxx:529
 TColor.cxx:530
 TColor.cxx:531
 TColor.cxx:532
 TColor.cxx:533
 TColor.cxx:534
 TColor.cxx:535
 TColor.cxx:536
 TColor.cxx:537
 TColor.cxx:538
 TColor.cxx:539
 TColor.cxx:540
 TColor.cxx:541
 TColor.cxx:542
 TColor.cxx:543
 TColor.cxx:544
 TColor.cxx:545
 TColor.cxx:546
 TColor.cxx:547
 TColor.cxx:548
 TColor.cxx:549
 TColor.cxx:550
 TColor.cxx:551
 TColor.cxx:552
 TColor.cxx:553
 TColor.cxx:554
 TColor.cxx:555
 TColor.cxx:556
 TColor.cxx:557
 TColor.cxx:558
 TColor.cxx:559
 TColor.cxx:560
 TColor.cxx:561
 TColor.cxx:562
 TColor.cxx:563
 TColor.cxx:564
 TColor.cxx:565
 TColor.cxx:566
 TColor.cxx:567
 TColor.cxx:568
 TColor.cxx:569
 TColor.cxx:570
 TColor.cxx:571
 TColor.cxx:572
 TColor.cxx:573
 TColor.cxx:574
 TColor.cxx:575
 TColor.cxx:576
 TColor.cxx:577
 TColor.cxx:578
 TColor.cxx:579
 TColor.cxx:580
 TColor.cxx:581
 TColor.cxx:582
 TColor.cxx:583
 TColor.cxx:584
 TColor.cxx:585
 TColor.cxx:586
 TColor.cxx:587
 TColor.cxx:588
 TColor.cxx:589
 TColor.cxx:590
 TColor.cxx:591
 TColor.cxx:592
 TColor.cxx:593
 TColor.cxx:594
 TColor.cxx:595
 TColor.cxx:596
 TColor.cxx:597
 TColor.cxx:598
 TColor.cxx:599
 TColor.cxx:600
 TColor.cxx:601
 TColor.cxx:602
 TColor.cxx:603
 TColor.cxx:604
 TColor.cxx:605
 TColor.cxx:606
 TColor.cxx:607
 TColor.cxx:608
 TColor.cxx:609
 TColor.cxx:610
 TColor.cxx:611
 TColor.cxx:612
 TColor.cxx:613
 TColor.cxx:614
 TColor.cxx:615
 TColor.cxx:616
 TColor.cxx:617
 TColor.cxx:618
 TColor.cxx:619
 TColor.cxx:620
 TColor.cxx:621
 TColor.cxx:622
 TColor.cxx:623
 TColor.cxx:624
 TColor.cxx:625
 TColor.cxx:626
 TColor.cxx:627
 TColor.cxx:628
 TColor.cxx:629
 TColor.cxx:630
 TColor.cxx:631
 TColor.cxx:632
 TColor.cxx:633
 TColor.cxx:634
 TColor.cxx:635
 TColor.cxx:636
 TColor.cxx:637
 TColor.cxx:638
 TColor.cxx:639
 TColor.cxx:640
 TColor.cxx:641
 TColor.cxx:642
 TColor.cxx:643
 TColor.cxx:644
 TColor.cxx:645
 TColor.cxx:646
 TColor.cxx:647
 TColor.cxx:648
 TColor.cxx:649
 TColor.cxx:650
 TColor.cxx:651
 TColor.cxx:652
 TColor.cxx:653
 TColor.cxx:654
 TColor.cxx:655
 TColor.cxx:656
 TColor.cxx:657
 TColor.cxx:658
 TColor.cxx:659
 TColor.cxx:660
 TColor.cxx:661
 TColor.cxx:662
 TColor.cxx:663
 TColor.cxx:664
 TColor.cxx:665
 TColor.cxx:666
 TColor.cxx:667
 TColor.cxx:668
 TColor.cxx:669
 TColor.cxx:670
 TColor.cxx:671
 TColor.cxx:672
 TColor.cxx:673
 TColor.cxx:674
 TColor.cxx:675
 TColor.cxx:676
 TColor.cxx:677
 TColor.cxx:678
 TColor.cxx:679
 TColor.cxx:680
 TColor.cxx:681
 TColor.cxx:682
 TColor.cxx:683
 TColor.cxx:684
 TColor.cxx:685
 TColor.cxx:686
 TColor.cxx:687
 TColor.cxx:688
 TColor.cxx:689
 TColor.cxx:690
 TColor.cxx:691
 TColor.cxx:692
 TColor.cxx:693
 TColor.cxx:694
 TColor.cxx:695
 TColor.cxx:696
 TColor.cxx:697
 TColor.cxx:698
 TColor.cxx:699
 TColor.cxx:700
 TColor.cxx:701
 TColor.cxx:702
 TColor.cxx:703
 TColor.cxx:704
 TColor.cxx:705
 TColor.cxx:706
 TColor.cxx:707
 TColor.cxx:708
 TColor.cxx:709
 TColor.cxx:710
 TColor.cxx:711
 TColor.cxx:712
 TColor.cxx:713
 TColor.cxx:714
 TColor.cxx:715
 TColor.cxx:716
 TColor.cxx:717
 TColor.cxx:718
 TColor.cxx:719
 TColor.cxx:720
 TColor.cxx:721
 TColor.cxx:722
 TColor.cxx:723
 TColor.cxx:724
 TColor.cxx:725
 TColor.cxx:726
 TColor.cxx:727
 TColor.cxx:728
 TColor.cxx:729
 TColor.cxx:730
 TColor.cxx:731
 TColor.cxx:732
 TColor.cxx:733
 TColor.cxx:734
 TColor.cxx:735
 TColor.cxx:736
 TColor.cxx:737
 TColor.cxx:738
 TColor.cxx:739
 TColor.cxx:740
 TColor.cxx:741
 TColor.cxx:742
 TColor.cxx:743
 TColor.cxx:744
 TColor.cxx:745
 TColor.cxx:746
 TColor.cxx:747
 TColor.cxx:748
 TColor.cxx:749
 TColor.cxx:750
 TColor.cxx:751
 TColor.cxx:752
 TColor.cxx:753
 TColor.cxx:754
 TColor.cxx:755
 TColor.cxx:756
 TColor.cxx:757
 TColor.cxx:758
 TColor.cxx:759
 TColor.cxx:760
 TColor.cxx:761
 TColor.cxx:762
 TColor.cxx:763
 TColor.cxx:764
 TColor.cxx:765
 TColor.cxx:766
 TColor.cxx:767
 TColor.cxx:768
 TColor.cxx:769
 TColor.cxx:770
 TColor.cxx:771
 TColor.cxx:772
 TColor.cxx:773
 TColor.cxx:774
 TColor.cxx:775
 TColor.cxx:776
 TColor.cxx:777
 TColor.cxx:778
 TColor.cxx:779
 TColor.cxx:780
 TColor.cxx:781
 TColor.cxx:782
 TColor.cxx:783
 TColor.cxx:784
 TColor.cxx:785
 TColor.cxx:786
 TColor.cxx:787
 TColor.cxx:788
 TColor.cxx:789
 TColor.cxx:790
 TColor.cxx:791
 TColor.cxx:792
 TColor.cxx:793
 TColor.cxx:794
 TColor.cxx:795
 TColor.cxx:796
 TColor.cxx:797
 TColor.cxx:798
 TColor.cxx:799
 TColor.cxx:800
 TColor.cxx:801
 TColor.cxx:802
 TColor.cxx:803
 TColor.cxx:804
 TColor.cxx:805
 TColor.cxx:806
 TColor.cxx:807
 TColor.cxx:808
 TColor.cxx:809
 TColor.cxx:810
 TColor.cxx:811
 TColor.cxx:812
 TColor.cxx:813
 TColor.cxx:814
 TColor.cxx:815
 TColor.cxx:816
 TColor.cxx:817
 TColor.cxx:818
 TColor.cxx:819
 TColor.cxx:820
 TColor.cxx:821
 TColor.cxx:822
 TColor.cxx:823
 TColor.cxx:824
 TColor.cxx:825
 TColor.cxx:826
 TColor.cxx:827
 TColor.cxx:828
 TColor.cxx:829
 TColor.cxx:830
 TColor.cxx:831
 TColor.cxx:832
 TColor.cxx:833
 TColor.cxx:834
 TColor.cxx:835
 TColor.cxx:836
 TColor.cxx:837
 TColor.cxx:838
 TColor.cxx:839
 TColor.cxx:840
 TColor.cxx:841
 TColor.cxx:842
 TColor.cxx:843
 TColor.cxx:844
 TColor.cxx:845
 TColor.cxx:846
 TColor.cxx:847
 TColor.cxx:848
 TColor.cxx:849
 TColor.cxx:850
 TColor.cxx:851
 TColor.cxx:852
 TColor.cxx:853
 TColor.cxx:854
 TColor.cxx:855
 TColor.cxx:856
 TColor.cxx:857
 TColor.cxx:858
 TColor.cxx:859
 TColor.cxx:860
 TColor.cxx:861
 TColor.cxx:862
 TColor.cxx:863
 TColor.cxx:864
 TColor.cxx:865
 TColor.cxx:866
 TColor.cxx:867
 TColor.cxx:868
 TColor.cxx:869
 TColor.cxx:870
 TColor.cxx:871
 TColor.cxx:872
 TColor.cxx:873
 TColor.cxx:874
 TColor.cxx:875
 TColor.cxx:876
 TColor.cxx:877
 TColor.cxx:878
 TColor.cxx:879
 TColor.cxx:880
 TColor.cxx:881
 TColor.cxx:882
 TColor.cxx:883
 TColor.cxx:884
 TColor.cxx:885
 TColor.cxx:886
 TColor.cxx:887
 TColor.cxx:888
 TColor.cxx:889
 TColor.cxx:890
 TColor.cxx:891
 TColor.cxx:892
 TColor.cxx:893
 TColor.cxx:894
 TColor.cxx:895
 TColor.cxx:896
 TColor.cxx:897
 TColor.cxx:898
 TColor.cxx:899
 TColor.cxx:900
 TColor.cxx:901
 TColor.cxx:902
 TColor.cxx:903
 TColor.cxx:904
 TColor.cxx:905
 TColor.cxx:906
 TColor.cxx:907
 TColor.cxx:908
 TColor.cxx:909
 TColor.cxx:910
 TColor.cxx:911
 TColor.cxx:912
 TColor.cxx:913
 TColor.cxx:914
 TColor.cxx:915
 TColor.cxx:916
 TColor.cxx:917
 TColor.cxx:918
 TColor.cxx:919
 TColor.cxx:920
 TColor.cxx:921
 TColor.cxx:922
 TColor.cxx:923
 TColor.cxx:924
 TColor.cxx:925
 TColor.cxx:926
 TColor.cxx:927
 TColor.cxx:928
 TColor.cxx:929
 TColor.cxx:930
 TColor.cxx:931
 TColor.cxx:932
 TColor.cxx:933
 TColor.cxx:934
 TColor.cxx:935
 TColor.cxx:936
 TColor.cxx:937
 TColor.cxx:938
 TColor.cxx:939
 TColor.cxx:940
 TColor.cxx:941
 TColor.cxx:942
 TColor.cxx:943
 TColor.cxx:944
 TColor.cxx:945
 TColor.cxx:946
 TColor.cxx:947
 TColor.cxx:948
 TColor.cxx:949
 TColor.cxx:950
 TColor.cxx:951
 TColor.cxx:952
 TColor.cxx:953
 TColor.cxx:954
 TColor.cxx:955
 TColor.cxx:956
 TColor.cxx:957
 TColor.cxx:958
 TColor.cxx:959
 TColor.cxx:960
 TColor.cxx:961
 TColor.cxx:962
 TColor.cxx:963
 TColor.cxx:964
 TColor.cxx:965
 TColor.cxx:966
 TColor.cxx:967
 TColor.cxx:968
 TColor.cxx:969
 TColor.cxx:970
 TColor.cxx:971
 TColor.cxx:972
 TColor.cxx:973
 TColor.cxx:974
 TColor.cxx:975
 TColor.cxx:976
 TColor.cxx:977
 TColor.cxx:978
 TColor.cxx:979
 TColor.cxx:980
 TColor.cxx:981
 TColor.cxx:982
 TColor.cxx:983
 TColor.cxx:984
 TColor.cxx:985
 TColor.cxx:986
 TColor.cxx:987
 TColor.cxx:988
 TColor.cxx:989
 TColor.cxx:990
 TColor.cxx:991
 TColor.cxx:992
 TColor.cxx:993
 TColor.cxx:994
 TColor.cxx:995
 TColor.cxx:996
 TColor.cxx:997
 TColor.cxx:998
 TColor.cxx:999
 TColor.cxx:1000
 TColor.cxx:1001
 TColor.cxx:1002
 TColor.cxx:1003
 TColor.cxx:1004
 TColor.cxx:1005
 TColor.cxx:1006
 TColor.cxx:1007
 TColor.cxx:1008
 TColor.cxx:1009
 TColor.cxx:1010
 TColor.cxx:1011
 TColor.cxx:1012
 TColor.cxx:1013
 TColor.cxx:1014
 TColor.cxx:1015
 TColor.cxx:1016
 TColor.cxx:1017
 TColor.cxx:1018
 TColor.cxx:1019
 TColor.cxx:1020
 TColor.cxx:1021
 TColor.cxx:1022
 TColor.cxx:1023
 TColor.cxx:1024
 TColor.cxx:1025
 TColor.cxx:1026
 TColor.cxx:1027
 TColor.cxx:1028
 TColor.cxx:1029
 TColor.cxx:1030
 TColor.cxx:1031
 TColor.cxx:1032
 TColor.cxx:1033
 TColor.cxx:1034
 TColor.cxx:1035
 TColor.cxx:1036
 TColor.cxx:1037
 TColor.cxx:1038
 TColor.cxx:1039
 TColor.cxx:1040
 TColor.cxx:1041
 TColor.cxx:1042
 TColor.cxx:1043
 TColor.cxx:1044
 TColor.cxx:1045
 TColor.cxx:1046
 TColor.cxx:1047
 TColor.cxx:1048
 TColor.cxx:1049
 TColor.cxx:1050
 TColor.cxx:1051
 TColor.cxx:1052
 TColor.cxx:1053
 TColor.cxx:1054
 TColor.cxx:1055
 TColor.cxx:1056
 TColor.cxx:1057
 TColor.cxx:1058
 TColor.cxx:1059
 TColor.cxx:1060
 TColor.cxx:1061
 TColor.cxx:1062
 TColor.cxx:1063
 TColor.cxx:1064
 TColor.cxx:1065
 TColor.cxx:1066
 TColor.cxx:1067
 TColor.cxx:1068
 TColor.cxx:1069
 TColor.cxx:1070
 TColor.cxx:1071
 TColor.cxx:1072
 TColor.cxx:1073
 TColor.cxx:1074
 TColor.cxx:1075
 TColor.cxx:1076
 TColor.cxx:1077
 TColor.cxx:1078
 TColor.cxx:1079
 TColor.cxx:1080
 TColor.cxx:1081
 TColor.cxx:1082
 TColor.cxx:1083
 TColor.cxx:1084
 TColor.cxx:1085
 TColor.cxx:1086
 TColor.cxx:1087
 TColor.cxx:1088
 TColor.cxx:1089
 TColor.cxx:1090
 TColor.cxx:1091
 TColor.cxx:1092
 TColor.cxx:1093
 TColor.cxx:1094
 TColor.cxx:1095
 TColor.cxx:1096
 TColor.cxx:1097
 TColor.cxx:1098
 TColor.cxx:1099
 TColor.cxx:1100
 TColor.cxx:1101
 TColor.cxx:1102
 TColor.cxx:1103
 TColor.cxx:1104
 TColor.cxx:1105
 TColor.cxx:1106
 TColor.cxx:1107
 TColor.cxx:1108
 TColor.cxx:1109
 TColor.cxx:1110
 TColor.cxx:1111
 TColor.cxx:1112
 TColor.cxx:1113
 TColor.cxx:1114
 TColor.cxx:1115
 TColor.cxx:1116
 TColor.cxx:1117
 TColor.cxx:1118
 TColor.cxx:1119
 TColor.cxx:1120
 TColor.cxx:1121
 TColor.cxx:1122
 TColor.cxx:1123
 TColor.cxx:1124
 TColor.cxx:1125
 TColor.cxx:1126
 TColor.cxx:1127
 TColor.cxx:1128
 TColor.cxx:1129
 TColor.cxx:1130
 TColor.cxx:1131
 TColor.cxx:1132
 TColor.cxx:1133
 TColor.cxx:1134
 TColor.cxx:1135
 TColor.cxx:1136
 TColor.cxx:1137
 TColor.cxx:1138
 TColor.cxx:1139
 TColor.cxx:1140
 TColor.cxx:1141
 TColor.cxx:1142
 TColor.cxx:1143
 TColor.cxx:1144
 TColor.cxx:1145
 TColor.cxx:1146
 TColor.cxx:1147
 TColor.cxx:1148
 TColor.cxx:1149
 TColor.cxx:1150
 TColor.cxx:1151
 TColor.cxx:1152
 TColor.cxx:1153
 TColor.cxx:1154
 TColor.cxx:1155
 TColor.cxx:1156
 TColor.cxx:1157
 TColor.cxx:1158
 TColor.cxx:1159
 TColor.cxx:1160
 TColor.cxx:1161
 TColor.cxx:1162
 TColor.cxx:1163
 TColor.cxx:1164
 TColor.cxx:1165
 TColor.cxx:1166
 TColor.cxx:1167
 TColor.cxx:1168
 TColor.cxx:1169
 TColor.cxx:1170
 TColor.cxx:1171
 TColor.cxx:1172
 TColor.cxx:1173
 TColor.cxx:1174
 TColor.cxx:1175
 TColor.cxx:1176
 TColor.cxx:1177
 TColor.cxx:1178
 TColor.cxx:1179
 TColor.cxx:1180
 TColor.cxx:1181
 TColor.cxx:1182
 TColor.cxx:1183
 TColor.cxx:1184
 TColor.cxx:1185
 TColor.cxx:1186
 TColor.cxx:1187
 TColor.cxx:1188
 TColor.cxx:1189
 TColor.cxx:1190
 TColor.cxx:1191
 TColor.cxx:1192
 TColor.cxx:1193
 TColor.cxx:1194
 TColor.cxx:1195
 TColor.cxx:1196
 TColor.cxx:1197
 TColor.cxx:1198
 TColor.cxx:1199
 TColor.cxx:1200
 TColor.cxx:1201
 TColor.cxx:1202
 TColor.cxx:1203
 TColor.cxx:1204
 TColor.cxx:1205
 TColor.cxx:1206
 TColor.cxx:1207
 TColor.cxx:1208
 TColor.cxx:1209
 TColor.cxx:1210
 TColor.cxx:1211
 TColor.cxx:1212
 TColor.cxx:1213
 TColor.cxx:1214
 TColor.cxx:1215
 TColor.cxx:1216
 TColor.cxx:1217
 TColor.cxx:1218
 TColor.cxx:1219
 TColor.cxx:1220
 TColor.cxx:1221
 TColor.cxx:1222
 TColor.cxx:1223
 TColor.cxx:1224
 TColor.cxx:1225
 TColor.cxx:1226
 TColor.cxx:1227
 TColor.cxx:1228
 TColor.cxx:1229
 TColor.cxx:1230
 TColor.cxx:1231
 TColor.cxx:1232
 TColor.cxx:1233
 TColor.cxx:1234
 TColor.cxx:1235
 TColor.cxx:1236
 TColor.cxx:1237
 TColor.cxx:1238
 TColor.cxx:1239
 TColor.cxx:1240
 TColor.cxx:1241
 TColor.cxx:1242
 TColor.cxx:1243
 TColor.cxx:1244
 TColor.cxx:1245
 TColor.cxx:1246
 TColor.cxx:1247
 TColor.cxx:1248
 TColor.cxx:1249
 TColor.cxx:1250
 TColor.cxx:1251
 TColor.cxx:1252
 TColor.cxx:1253
 TColor.cxx:1254
 TColor.cxx:1255
 TColor.cxx:1256
 TColor.cxx:1257
 TColor.cxx:1258
 TColor.cxx:1259
 TColor.cxx:1260
 TColor.cxx:1261
 TColor.cxx:1262
 TColor.cxx:1263
 TColor.cxx:1264
 TColor.cxx:1265
 TColor.cxx:1266
 TColor.cxx:1267
 TColor.cxx:1268
 TColor.cxx:1269
 TColor.cxx:1270
 TColor.cxx:1271
 TColor.cxx:1272
 TColor.cxx:1273
 TColor.cxx:1274
 TColor.cxx:1275
 TColor.cxx:1276
 TColor.cxx:1277
 TColor.cxx:1278
 TColor.cxx:1279
 TColor.cxx:1280
 TColor.cxx:1281
 TColor.cxx:1282
 TColor.cxx:1283
 TColor.cxx:1284
 TColor.cxx:1285
 TColor.cxx:1286
 TColor.cxx:1287
 TColor.cxx:1288
 TColor.cxx:1289
 TColor.cxx:1290
 TColor.cxx:1291
 TColor.cxx:1292
 TColor.cxx:1293
 TColor.cxx:1294
 TColor.cxx:1295
 TColor.cxx:1296
 TColor.cxx:1297
 TColor.cxx:1298
 TColor.cxx:1299
 TColor.cxx:1300
 TColor.cxx:1301
 TColor.cxx:1302
 TColor.cxx:1303
 TColor.cxx:1304
 TColor.cxx:1305
 TColor.cxx:1306
 TColor.cxx:1307
 TColor.cxx:1308
 TColor.cxx:1309
 TColor.cxx:1310
 TColor.cxx:1311
 TColor.cxx:1312
 TColor.cxx:1313
 TColor.cxx:1314
 TColor.cxx:1315
 TColor.cxx:1316
 TColor.cxx:1317
 TColor.cxx:1318
 TColor.cxx:1319
 TColor.cxx:1320
 TColor.cxx:1321
 TColor.cxx:1322
 TColor.cxx:1323
 TColor.cxx:1324
 TColor.cxx:1325
 TColor.cxx:1326
 TColor.cxx:1327
 TColor.cxx:1328
 TColor.cxx:1329
 TColor.cxx:1330
 TColor.cxx:1331
 TColor.cxx:1332
 TColor.cxx:1333
 TColor.cxx:1334
 TColor.cxx:1335
 TColor.cxx:1336
 TColor.cxx:1337
 TColor.cxx:1338
 TColor.cxx:1339
 TColor.cxx:1340
 TColor.cxx:1341
 TColor.cxx:1342
 TColor.cxx:1343
 TColor.cxx:1344
 TColor.cxx:1345
 TColor.cxx:1346
 TColor.cxx:1347
 TColor.cxx:1348
 TColor.cxx:1349
 TColor.cxx:1350
 TColor.cxx:1351
 TColor.cxx:1352
 TColor.cxx:1353
 TColor.cxx:1354
 TColor.cxx:1355
 TColor.cxx:1356
 TColor.cxx:1357
 TColor.cxx:1358
 TColor.cxx:1359
 TColor.cxx:1360
 TColor.cxx:1361
 TColor.cxx:1362
 TColor.cxx:1363
 TColor.cxx:1364
 TColor.cxx:1365
 TColor.cxx:1366
 TColor.cxx:1367
 TColor.cxx:1368
 TColor.cxx:1369
 TColor.cxx:1370
 TColor.cxx:1371
 TColor.cxx:1372
 TColor.cxx:1373
 TColor.cxx:1374
 TColor.cxx:1375
 TColor.cxx:1376
 TColor.cxx:1377
 TColor.cxx:1378
 TColor.cxx:1379
 TColor.cxx:1380
 TColor.cxx:1381
 TColor.cxx:1382
 TColor.cxx:1383
 TColor.cxx:1384
 TColor.cxx:1385
 TColor.cxx:1386
 TColor.cxx:1387
 TColor.cxx:1388
 TColor.cxx:1389
 TColor.cxx:1390
 TColor.cxx:1391
 TColor.cxx:1392
 TColor.cxx:1393
 TColor.cxx:1394
 TColor.cxx:1395
 TColor.cxx:1396
 TColor.cxx:1397
 TColor.cxx:1398
 TColor.cxx:1399
 TColor.cxx:1400
 TColor.cxx:1401
 TColor.cxx:1402
 TColor.cxx:1403
 TColor.cxx:1404
 TColor.cxx:1405
 TColor.cxx:1406
 TColor.cxx:1407
 TColor.cxx:1408
 TColor.cxx:1409
 TColor.cxx:1410
 TColor.cxx:1411
 TColor.cxx:1412
 TColor.cxx:1413
 TColor.cxx:1414
 TColor.cxx:1415
 TColor.cxx:1416
 TColor.cxx:1417
 TColor.cxx:1418
 TColor.cxx:1419
 TColor.cxx:1420
 TColor.cxx:1421
 TColor.cxx:1422
 TColor.cxx:1423
 TColor.cxx:1424
 TColor.cxx:1425
 TColor.cxx:1426
 TColor.cxx:1427
 TColor.cxx:1428
 TColor.cxx:1429
 TColor.cxx:1430
 TColor.cxx:1431
 TColor.cxx:1432
 TColor.cxx:1433
 TColor.cxx:1434
 TColor.cxx:1435
 TColor.cxx:1436
 TColor.cxx:1437
 TColor.cxx:1438
 TColor.cxx:1439
 TColor.cxx:1440
 TColor.cxx:1441
 TColor.cxx:1442
 TColor.cxx:1443
 TColor.cxx:1444
 TColor.cxx:1445
 TColor.cxx:1446
 TColor.cxx:1447
 TColor.cxx:1448
 TColor.cxx:1449
 TColor.cxx:1450
 TColor.cxx:1451
 TColor.cxx:1452
 TColor.cxx:1453
 TColor.cxx:1454
 TColor.cxx:1455
 TColor.cxx:1456
 TColor.cxx:1457
 TColor.cxx:1458
 TColor.cxx:1459
 TColor.cxx:1460
 TColor.cxx:1461
 TColor.cxx:1462
 TColor.cxx:1463
 TColor.cxx:1464
 TColor.cxx:1465
 TColor.cxx:1466
 TColor.cxx:1467
 TColor.cxx:1468
 TColor.cxx:1469
 TColor.cxx:1470
 TColor.cxx:1471
 TColor.cxx:1472
 TColor.cxx:1473
 TColor.cxx:1474
 TColor.cxx:1475
 TColor.cxx:1476
 TColor.cxx:1477
 TColor.cxx:1478
 TColor.cxx:1479
 TColor.cxx:1480
 TColor.cxx:1481
 TColor.cxx:1482
 TColor.cxx:1483
 TColor.cxx:1484
 TColor.cxx:1485
 TColor.cxx:1486
 TColor.cxx:1487
 TColor.cxx:1488
 TColor.cxx:1489
 TColor.cxx:1490
 TColor.cxx:1491
 TColor.cxx:1492
 TColor.cxx:1493
 TColor.cxx:1494
 TColor.cxx:1495
 TColor.cxx:1496
 TColor.cxx:1497
 TColor.cxx:1498
 TColor.cxx:1499
 TColor.cxx:1500
 TColor.cxx:1501
 TColor.cxx:1502
 TColor.cxx:1503
 TColor.cxx:1504
 TColor.cxx:1505
 TColor.cxx:1506
 TColor.cxx:1507
 TColor.cxx:1508
 TColor.cxx:1509
 TColor.cxx:1510
 TColor.cxx:1511
 TColor.cxx:1512
 TColor.cxx:1513
 TColor.cxx:1514
 TColor.cxx:1515
 TColor.cxx:1516
 TColor.cxx:1517
 TColor.cxx:1518
 TColor.cxx:1519
 TColor.cxx:1520
 TColor.cxx:1521
 TColor.cxx:1522
 TColor.cxx:1523
 TColor.cxx:1524
 TColor.cxx:1525
 TColor.cxx:1526
 TColor.cxx:1527
 TColor.cxx:1528
 TColor.cxx:1529
 TColor.cxx:1530
 TColor.cxx:1531
 TColor.cxx:1532
 TColor.cxx:1533
 TColor.cxx:1534
 TColor.cxx:1535
 TColor.cxx:1536
 TColor.cxx:1537
 TColor.cxx:1538
 TColor.cxx:1539
 TColor.cxx:1540
 TColor.cxx:1541
 TColor.cxx:1542
 TColor.cxx:1543
 TColor.cxx:1544
 TColor.cxx:1545
 TColor.cxx:1546
 TColor.cxx:1547
 TColor.cxx:1548
 TColor.cxx:1549
 TColor.cxx:1550
 TColor.cxx:1551
 TColor.cxx:1552
 TColor.cxx:1553
 TColor.cxx:1554
 TColor.cxx:1555
 TColor.cxx:1556
 TColor.cxx:1557
 TColor.cxx:1558
 TColor.cxx:1559
 TColor.cxx:1560
 TColor.cxx:1561
 TColor.cxx:1562
 TColor.cxx:1563
 TColor.cxx:1564
 TColor.cxx:1565
 TColor.cxx:1566
 TColor.cxx:1567
 TColor.cxx:1568
 TColor.cxx:1569
 TColor.cxx:1570
 TColor.cxx:1571
 TColor.cxx:1572
 TColor.cxx:1573
 TColor.cxx:1574
 TColor.cxx:1575
 TColor.cxx:1576
 TColor.cxx:1577
 TColor.cxx:1578
 TColor.cxx:1579
 TColor.cxx:1580
 TColor.cxx:1581
 TColor.cxx:1582
 TColor.cxx:1583
 TColor.cxx:1584
 TColor.cxx:1585
 TColor.cxx:1586
 TColor.cxx:1587
 TColor.cxx:1588
 TColor.cxx:1589
 TColor.cxx:1590
 TColor.cxx:1591
 TColor.cxx:1592
 TColor.cxx:1593
 TColor.cxx:1594
 TColor.cxx:1595
 TColor.cxx:1596
 TColor.cxx:1597
 TColor.cxx:1598
 TColor.cxx:1599
 TColor.cxx:1600
 TColor.cxx:1601
 TColor.cxx:1602
 TColor.cxx:1603
 TColor.cxx:1604
 TColor.cxx:1605
 TColor.cxx:1606
 TColor.cxx:1607
 TColor.cxx:1608
 TColor.cxx:1609
 TColor.cxx:1610
 TColor.cxx:1611
 TColor.cxx:1612
 TColor.cxx:1613
 TColor.cxx:1614
 TColor.cxx:1615
 TColor.cxx:1616
 TColor.cxx:1617
 TColor.cxx:1618
 TColor.cxx:1619
 TColor.cxx:1620
 TColor.cxx:1621
 TColor.cxx:1622
 TColor.cxx:1623
 TColor.cxx:1624
 TColor.cxx:1625
 TColor.cxx:1626
 TColor.cxx:1627
 TColor.cxx:1628
 TColor.cxx:1629
 TColor.cxx:1630
 TColor.cxx:1631
 TColor.cxx:1632
 TColor.cxx:1633
 TColor.cxx:1634
 TColor.cxx:1635
 TColor.cxx:1636
 TColor.cxx:1637
 TColor.cxx:1638
 TColor.cxx:1639
 TColor.cxx:1640
 TColor.cxx:1641
 TColor.cxx:1642
 TColor.cxx:1643
 TColor.cxx:1644
 TColor.cxx:1645
 TColor.cxx:1646
 TColor.cxx:1647
 TColor.cxx:1648
 TColor.cxx:1649
 TColor.cxx:1650
 TColor.cxx:1651
 TColor.cxx:1652
 TColor.cxx:1653
 TColor.cxx:1654
 TColor.cxx:1655
 TColor.cxx:1656
 TColor.cxx:1657
 TColor.cxx:1658
 TColor.cxx:1659
 TColor.cxx:1660
 TColor.cxx:1661
 TColor.cxx:1662
 TColor.cxx:1663
 TColor.cxx:1664
 TColor.cxx:1665
 TColor.cxx:1666
 TColor.cxx:1667
 TColor.cxx:1668
 TColor.cxx:1669
 TColor.cxx:1670
 TColor.cxx:1671
 TColor.cxx:1672
 TColor.cxx:1673
 TColor.cxx:1674
 TColor.cxx:1675
 TColor.cxx:1676
 TColor.cxx:1677
 TColor.cxx:1678
 TColor.cxx:1679
 TColor.cxx:1680
 TColor.cxx:1681
 TColor.cxx:1682
 TColor.cxx:1683
 TColor.cxx:1684
 TColor.cxx:1685
 TColor.cxx:1686
 TColor.cxx:1687
 TColor.cxx:1688
 TColor.cxx:1689
 TColor.cxx:1690
 TColor.cxx:1691
 TColor.cxx:1692
 TColor.cxx:1693
 TColor.cxx:1694
 TColor.cxx:1695
 TColor.cxx:1696
 TColor.cxx:1697
 TColor.cxx:1698
 TColor.cxx:1699
 TColor.cxx:1700
 TColor.cxx:1701
 TColor.cxx:1702
 TColor.cxx:1703
 TColor.cxx:1704
 TColor.cxx:1705
 TColor.cxx:1706
 TColor.cxx:1707
 TColor.cxx:1708
 TColor.cxx:1709
 TColor.cxx:1710
 TColor.cxx:1711
 TColor.cxx:1712
 TColor.cxx:1713
 TColor.cxx:1714
 TColor.cxx:1715
 TColor.cxx:1716
 TColor.cxx:1717
 TColor.cxx:1718
 TColor.cxx:1719
 TColor.cxx:1720
 TColor.cxx:1721
 TColor.cxx:1722
 TColor.cxx:1723
 TColor.cxx:1724
 TColor.cxx:1725
 TColor.cxx:1726
 TColor.cxx:1727
 TColor.cxx:1728
 TColor.cxx:1729
 TColor.cxx:1730
 TColor.cxx:1731
 TColor.cxx:1732
 TColor.cxx:1733
 TColor.cxx:1734
 TColor.cxx:1735
 TColor.cxx:1736
 TColor.cxx:1737
 TColor.cxx:1738
 TColor.cxx:1739
 TColor.cxx:1740
 TColor.cxx:1741
 TColor.cxx:1742
 TColor.cxx:1743
 TColor.cxx:1744
 TColor.cxx:1745
 TColor.cxx:1746
 TColor.cxx:1747
 TColor.cxx:1748
 TColor.cxx:1749
 TColor.cxx:1750
 TColor.cxx:1751
 TColor.cxx:1752
 TColor.cxx:1753
 TColor.cxx:1754
 TColor.cxx:1755
 TColor.cxx:1756
 TColor.cxx:1757
 TColor.cxx:1758
 TColor.cxx:1759
 TColor.cxx:1760
 TColor.cxx:1761
 TColor.cxx:1762
 TColor.cxx:1763
 TColor.cxx:1764
 TColor.cxx:1765
 TColor.cxx:1766
 TColor.cxx:1767
 TColor.cxx:1768
 TColor.cxx:1769
 TColor.cxx:1770
 TColor.cxx:1771
 TColor.cxx:1772
 TColor.cxx:1773
 TColor.cxx:1774
 TColor.cxx:1775
 TColor.cxx:1776
 TColor.cxx:1777
 TColor.cxx:1778
 TColor.cxx:1779
 TColor.cxx:1780
 TColor.cxx:1781
 TColor.cxx:1782
 TColor.cxx:1783
 TColor.cxx:1784
 TColor.cxx:1785
 TColor.cxx:1786
 TColor.cxx:1787
 TColor.cxx:1788
 TColor.cxx:1789
 TColor.cxx:1790
 TColor.cxx:1791
 TColor.cxx:1792
 TColor.cxx:1793
 TColor.cxx:1794
 TColor.cxx:1795
 TColor.cxx:1796
 TColor.cxx:1797
 TColor.cxx:1798
 TColor.cxx:1799
 TColor.cxx:1800
 TColor.cxx:1801
 TColor.cxx:1802
 TColor.cxx:1803
 TColor.cxx:1804
 TColor.cxx:1805
 TColor.cxx:1806
 TColor.cxx:1807
 TColor.cxx:1808
 TColor.cxx:1809
 TColor.cxx:1810
 TColor.cxx:1811
 TColor.cxx:1812
 TColor.cxx:1813
 TColor.cxx:1814
 TColor.cxx:1815
 TColor.cxx:1816
 TColor.cxx:1817
 TColor.cxx:1818
 TColor.cxx:1819
 TColor.cxx:1820
 TColor.cxx:1821
 TColor.cxx:1822
 TColor.cxx:1823
 TColor.cxx:1824
 TColor.cxx:1825
 TColor.cxx:1826
 TColor.cxx:1827
 TColor.cxx:1828
 TColor.cxx:1829
 TColor.cxx:1830
 TColor.cxx:1831
 TColor.cxx:1832
 TColor.cxx:1833
 TColor.cxx:1834
 TColor.cxx:1835
 TColor.cxx:1836
 TColor.cxx:1837
 TColor.cxx:1838
 TColor.cxx:1839
 TColor.cxx:1840
 TColor.cxx:1841
 TColor.cxx:1842
 TColor.cxx:1843
 TColor.cxx:1844
 TColor.cxx:1845
 TColor.cxx:1846
 TColor.cxx:1847
 TColor.cxx:1848
 TColor.cxx:1849
 TColor.cxx:1850
 TColor.cxx:1851
 TColor.cxx:1852
 TColor.cxx:1853
 TColor.cxx:1854
 TColor.cxx:1855
 TColor.cxx:1856
 TColor.cxx:1857
 TColor.cxx:1858
 TColor.cxx:1859
 TColor.cxx:1860
 TColor.cxx:1861
 TColor.cxx:1862
 TColor.cxx:1863
 TColor.cxx:1864
 TColor.cxx:1865
 TColor.cxx:1866
 TColor.cxx:1867
 TColor.cxx:1868
 TColor.cxx:1869
 TColor.cxx:1870
 TColor.cxx:1871
 TColor.cxx:1872
 TColor.cxx:1873
 TColor.cxx:1874
 TColor.cxx:1875
 TColor.cxx:1876
 TColor.cxx:1877
 TColor.cxx:1878
 TColor.cxx:1879
 TColor.cxx:1880
 TColor.cxx:1881
 TColor.cxx:1882
 TColor.cxx:1883
 TColor.cxx:1884
 TColor.cxx:1885
 TColor.cxx:1886
 TColor.cxx:1887
 TColor.cxx:1888
 TColor.cxx:1889
 TColor.cxx:1890
 TColor.cxx:1891
 TColor.cxx:1892
 TColor.cxx:1893
 TColor.cxx:1894
 TColor.cxx:1895
 TColor.cxx:1896
 TColor.cxx:1897
 TColor.cxx:1898
 TColor.cxx:1899
 TColor.cxx:1900
 TColor.cxx:1901
 TColor.cxx:1902
 TColor.cxx:1903
 TColor.cxx:1904
 TColor.cxx:1905
 TColor.cxx:1906
 TColor.cxx:1907
 TColor.cxx:1908
 TColor.cxx:1909
 TColor.cxx:1910
 TColor.cxx:1911
 TColor.cxx:1912
 TColor.cxx:1913
 TColor.cxx:1914
 TColor.cxx:1915
 TColor.cxx:1916
 TColor.cxx:1917
 TColor.cxx:1918
 TColor.cxx:1919
 TColor.cxx:1920
 TColor.cxx:1921
 TColor.cxx:1922
 TColor.cxx:1923
 TColor.cxx:1924
 TColor.cxx:1925
 TColor.cxx:1926
 TColor.cxx:1927
 TColor.cxx:1928
 TColor.cxx:1929
 TColor.cxx:1930
 TColor.cxx:1931
 TColor.cxx:1932
 TColor.cxx:1933
 TColor.cxx:1934
 TColor.cxx:1935
 TColor.cxx:1936
 TColor.cxx:1937
 TColor.cxx:1938
 TColor.cxx:1939
 TColor.cxx:1940
 TColor.cxx:1941
 TColor.cxx:1942
 TColor.cxx:1943
 TColor.cxx:1944
 TColor.cxx:1945
 TColor.cxx:1946
 TColor.cxx:1947
 TColor.cxx:1948
 TColor.cxx:1949
 TColor.cxx:1950
 TColor.cxx:1951
 TColor.cxx:1952
 TColor.cxx:1953
 TColor.cxx:1954
 TColor.cxx:1955
 TColor.cxx:1956
 TColor.cxx:1957
 TColor.cxx:1958
 TColor.cxx:1959
 TColor.cxx:1960
 TColor.cxx:1961
 TColor.cxx:1962
 TColor.cxx:1963
 TColor.cxx:1964
 TColor.cxx:1965
 TColor.cxx:1966
 TColor.cxx:1967
 TColor.cxx:1968
 TColor.cxx:1969
 TColor.cxx:1970
 TColor.cxx:1971
 TColor.cxx:1972
 TColor.cxx:1973
 TColor.cxx:1974
 TColor.cxx:1975
 TColor.cxx:1976
 TColor.cxx:1977
 TColor.cxx:1978
 TColor.cxx:1979
 TColor.cxx:1980
 TColor.cxx:1981
 TColor.cxx:1982
 TColor.cxx:1983
 TColor.cxx:1984
 TColor.cxx:1985
 TColor.cxx:1986
 TColor.cxx:1987
 TColor.cxx:1988
 TColor.cxx:1989
 TColor.cxx:1990
 TColor.cxx:1991
 TColor.cxx:1992
 TColor.cxx:1993
 TColor.cxx:1994
 TColor.cxx:1995
 TColor.cxx:1996
 TColor.cxx:1997
 TColor.cxx:1998
 TColor.cxx:1999
 TColor.cxx:2000
 TColor.cxx:2001
 TColor.cxx:2002
 TColor.cxx:2003
 TColor.cxx:2004
 TColor.cxx:2005
 TColor.cxx:2006
 TColor.cxx:2007
 TColor.cxx:2008
 TColor.cxx:2009
 TColor.cxx:2010
 TColor.cxx:2011
 TColor.cxx:2012
 TColor.cxx:2013
 TColor.cxx:2014
 TColor.cxx:2015
 TColor.cxx:2016
 TColor.cxx:2017
 TColor.cxx:2018
 TColor.cxx:2019
 TColor.cxx:2020
 TColor.cxx:2021
 TColor.cxx:2022
 TColor.cxx:2023
 TColor.cxx:2024
 TColor.cxx:2025
 TColor.cxx:2026
 TColor.cxx:2027
 TColor.cxx:2028
 TColor.cxx:2029
 TColor.cxx:2030
 TColor.cxx:2031
 TColor.cxx:2032
 TColor.cxx:2033
 TColor.cxx:2034
 TColor.cxx:2035
 TColor.cxx:2036
 TColor.cxx:2037
 TColor.cxx:2038
 TColor.cxx:2039
 TColor.cxx:2040
 TColor.cxx:2041
 TColor.cxx:2042
 TColor.cxx:2043
 TColor.cxx:2044
 TColor.cxx:2045
 TColor.cxx:2046
 TColor.cxx:2047
 TColor.cxx:2048
 TColor.cxx:2049
 TColor.cxx:2050
 TColor.cxx:2051
 TColor.cxx:2052
 TColor.cxx:2053
 TColor.cxx:2054
 TColor.cxx:2055
 TColor.cxx:2056
 TColor.cxx:2057
 TColor.cxx:2058
 TColor.cxx:2059
 TColor.cxx:2060
 TColor.cxx:2061
 TColor.cxx:2062
 TColor.cxx:2063
 TColor.cxx:2064
 TColor.cxx:2065
 TColor.cxx:2066
 TColor.cxx:2067
 TColor.cxx:2068
 TColor.cxx:2069
 TColor.cxx:2070
 TColor.cxx:2071
 TColor.cxx:2072
 TColor.cxx:2073
 TColor.cxx:2074
 TColor.cxx:2075
 TColor.cxx:2076
 TColor.cxx:2077
 TColor.cxx:2078
 TColor.cxx:2079
 TColor.cxx:2080
 TColor.cxx:2081
 TColor.cxx:2082
 TColor.cxx:2083
 TColor.cxx:2084
 TColor.cxx:2085
 TColor.cxx:2086
 TColor.cxx:2087
 TColor.cxx:2088
 TColor.cxx:2089
 TColor.cxx:2090
 TColor.cxx:2091
 TColor.cxx:2092
 TColor.cxx:2093
 TColor.cxx:2094
 TColor.cxx:2095
 TColor.cxx:2096
 TColor.cxx:2097
 TColor.cxx:2098
 TColor.cxx:2099
 TColor.cxx:2100
 TColor.cxx:2101
 TColor.cxx:2102
 TColor.cxx:2103
 TColor.cxx:2104
 TColor.cxx:2105
 TColor.cxx:2106
 TColor.cxx:2107
 TColor.cxx:2108
 TColor.cxx:2109
 TColor.cxx:2110
 TColor.cxx:2111
 TColor.cxx:2112
 TColor.cxx:2113
 TColor.cxx:2114
 TColor.cxx:2115
 TColor.cxx:2116
 TColor.cxx:2117
 TColor.cxx:2118
 TColor.cxx:2119
 TColor.cxx:2120
 TColor.cxx:2121
 TColor.cxx:2122
 TColor.cxx:2123
 TColor.cxx:2124
 TColor.cxx:2125
 TColor.cxx:2126
 TColor.cxx:2127
 TColor.cxx:2128
 TColor.cxx:2129
 TColor.cxx:2130
 TColor.cxx:2131
 TColor.cxx:2132
 TColor.cxx:2133
 TColor.cxx:2134
 TColor.cxx:2135
 TColor.cxx:2136
 TColor.cxx:2137
 TColor.cxx:2138
 TColor.cxx:2139
 TColor.cxx:2140
 TColor.cxx:2141
 TColor.cxx:2142
 TColor.cxx:2143
 TColor.cxx:2144
 TColor.cxx:2145
 TColor.cxx:2146
 TColor.cxx:2147
 TColor.cxx:2148
 TColor.cxx:2149
 TColor.cxx:2150
 TColor.cxx:2151
 TColor.cxx:2152
 TColor.cxx:2153
 TColor.cxx:2154
 TColor.cxx:2155
 TColor.cxx:2156
 TColor.cxx:2157
 TColor.cxx:2158
 TColor.cxx:2159
 TColor.cxx:2160
 TColor.cxx:2161
 TColor.cxx:2162
 TColor.cxx:2163
 TColor.cxx:2164
 TColor.cxx:2165
 TColor.cxx:2166
 TColor.cxx:2167
 TColor.cxx:2168
 TColor.cxx:2169
 TColor.cxx:2170
 TColor.cxx:2171
 TColor.cxx:2172
 TColor.cxx:2173
 TColor.cxx:2174
 TColor.cxx:2175
 TColor.cxx:2176
 TColor.cxx:2177
 TColor.cxx:2178
 TColor.cxx:2179
 TColor.cxx:2180
 TColor.cxx:2181
 TColor.cxx:2182
 TColor.cxx:2183
 TColor.cxx:2184
 TColor.cxx:2185
 TColor.cxx:2186
 TColor.cxx:2187
 TColor.cxx:2188
 TColor.cxx:2189
 TColor.cxx:2190
 TColor.cxx:2191
 TColor.cxx:2192
 TColor.cxx:2193
 TColor.cxx:2194
 TColor.cxx:2195
 TColor.cxx:2196
 TColor.cxx:2197
 TColor.cxx:2198
 TColor.cxx:2199
 TColor.cxx:2200
 TColor.cxx:2201
 TColor.cxx:2202
 TColor.cxx:2203
 TColor.cxx:2204
 TColor.cxx:2205
 TColor.cxx:2206
 TColor.cxx:2207
 TColor.cxx:2208
 TColor.cxx:2209
 TColor.cxx:2210
 TColor.cxx:2211
 TColor.cxx:2212
 TColor.cxx:2213
 TColor.cxx:2214
 TColor.cxx:2215
 TColor.cxx:2216
 TColor.cxx:2217
 TColor.cxx:2218
 TColor.cxx:2219
 TColor.cxx:2220
 TColor.cxx:2221
 TColor.cxx:2222
 TColor.cxx:2223
 TColor.cxx:2224
 TColor.cxx:2225
 TColor.cxx:2226
 TColor.cxx:2227
 TColor.cxx:2228
 TColor.cxx:2229
 TColor.cxx:2230
 TColor.cxx:2231
 TColor.cxx:2232
 TColor.cxx:2233
 TColor.cxx:2234
 TColor.cxx:2235
 TColor.cxx:2236
 TColor.cxx:2237
 TColor.cxx:2238
 TColor.cxx:2239
 TColor.cxx:2240
 TColor.cxx:2241
 TColor.cxx:2242
 TColor.cxx:2243
 TColor.cxx:2244
 TColor.cxx:2245
 TColor.cxx:2246
 TColor.cxx:2247
 TColor.cxx:2248
 TColor.cxx:2249
 TColor.cxx:2250
 TColor.cxx:2251
 TColor.cxx:2252
 TColor.cxx:2253
 TColor.cxx:2254
 TColor.cxx:2255
 TColor.cxx:2256
 TColor.cxx:2257
 TColor.cxx:2258
 TColor.cxx:2259
 TColor.cxx:2260
 TColor.cxx:2261
 TColor.cxx:2262
 TColor.cxx:2263
 TColor.cxx:2264
 TColor.cxx:2265
 TColor.cxx:2266
 TColor.cxx:2267
 TColor.cxx:2268
 TColor.cxx:2269
 TColor.cxx:2270
 TColor.cxx:2271
 TColor.cxx:2272
 TColor.cxx:2273
 TColor.cxx:2274
 TColor.cxx:2275
 TColor.cxx:2276
 TColor.cxx:2277
 TColor.cxx:2278
 TColor.cxx:2279
 TColor.cxx:2280
 TColor.cxx:2281
 TColor.cxx:2282
 TColor.cxx:2283
 TColor.cxx:2284
 TColor.cxx:2285
 TColor.cxx:2286
 TColor.cxx:2287
 TColor.cxx:2288
 TColor.cxx:2289
 TColor.cxx:2290
 TColor.cxx:2291
 TColor.cxx:2292
 TColor.cxx:2293
 TColor.cxx:2294
 TColor.cxx:2295
 TColor.cxx:2296
 TColor.cxx:2297
 TColor.cxx:2298
 TColor.cxx:2299
 TColor.cxx:2300
 TColor.cxx:2301
 TColor.cxx:2302
 TColor.cxx:2303
 TColor.cxx:2304
 TColor.cxx:2305
 TColor.cxx:2306
 TColor.cxx:2307
 TColor.cxx:2308
 TColor.cxx:2309
 TColor.cxx:2310
 TColor.cxx:2311
 TColor.cxx:2312
 TColor.cxx:2313
 TColor.cxx:2314
 TColor.cxx:2315
 TColor.cxx:2316
 TColor.cxx:2317
 TColor.cxx:2318
 TColor.cxx:2319
 TColor.cxx:2320
 TColor.cxx:2321
 TColor.cxx:2322
 TColor.cxx:2323
 TColor.cxx:2324
 TColor.cxx:2325
 TColor.cxx:2326
 TColor.cxx:2327
 TColor.cxx:2328
 TColor.cxx:2329
 TColor.cxx:2330
 TColor.cxx:2331
 TColor.cxx:2332
 TColor.cxx:2333
 TColor.cxx:2334
 TColor.cxx:2335
 TColor.cxx:2336
 TColor.cxx:2337
 TColor.cxx:2338
 TColor.cxx:2339
 TColor.cxx:2340
 TColor.cxx:2341
 TColor.cxx:2342
 TColor.cxx:2343
 TColor.cxx:2344
 TColor.cxx:2345
 TColor.cxx:2346
 TColor.cxx:2347
 TColor.cxx:2348
 TColor.cxx:2349
 TColor.cxx:2350
 TColor.cxx:2351
 TColor.cxx:2352
 TColor.cxx:2353
 TColor.cxx:2354
 TColor.cxx:2355
 TColor.cxx:2356
 TColor.cxx:2357
 TColor.cxx:2358
 TColor.cxx:2359
 TColor.cxx:2360
 TColor.cxx:2361
 TColor.cxx:2362
 TColor.cxx:2363
 TColor.cxx:2364
 TColor.cxx:2365
 TColor.cxx:2366
 TColor.cxx:2367
 TColor.cxx:2368
 TColor.cxx:2369
 TColor.cxx:2370
 TColor.cxx:2371
 TColor.cxx:2372
 TColor.cxx:2373
 TColor.cxx:2374
 TColor.cxx:2375
 TColor.cxx:2376
 TColor.cxx:2377
 TColor.cxx:2378
 TColor.cxx:2379
 TColor.cxx:2380
 TColor.cxx:2381
 TColor.cxx:2382
 TColor.cxx:2383
 TColor.cxx:2384
 TColor.cxx:2385
 TColor.cxx:2386
 TColor.cxx:2387
 TColor.cxx:2388
 TColor.cxx:2389
 TColor.cxx:2390
 TColor.cxx:2391
 TColor.cxx:2392
 TColor.cxx:2393
 TColor.cxx:2394
 TColor.cxx:2395
 TColor.cxx:2396
 TColor.cxx:2397
 TColor.cxx:2398
 TColor.cxx:2399
 TColor.cxx:2400
 TColor.cxx:2401
 TColor.cxx:2402
 TColor.cxx:2403
 TColor.cxx:2404
 TColor.cxx:2405
 TColor.cxx:2406
 TColor.cxx:2407
 TColor.cxx:2408
 TColor.cxx:2409
 TColor.cxx:2410
 TColor.cxx:2411
 TColor.cxx:2412
 TColor.cxx:2413
 TColor.cxx:2414
 TColor.cxx:2415
 TColor.cxx:2416
 TColor.cxx:2417
 TColor.cxx:2418
 TColor.cxx:2419
 TColor.cxx:2420
 TColor.cxx:2421
 TColor.cxx:2422
 TColor.cxx:2423
 TColor.cxx:2424
 TColor.cxx:2425
 TColor.cxx:2426
 TColor.cxx:2427
 TColor.cxx:2428
 TColor.cxx:2429
 TColor.cxx:2430
 TColor.cxx:2431
 TColor.cxx:2432
 TColor.cxx:2433
 TColor.cxx:2434
 TColor.cxx:2435