#include <TH1.h>
#include <TH2.h>

void graphmulticol(){
  //Define parameters common to all analysis configurations
  const Int_t points = 28;
  char printname[256];
  char graphname1[256];
  char xTitle[256];
  char yTitle[256];
  char GraphText1[256];
  char histTitle[256];
  char output_line[256];

  gStyle->SetStatColor(0);//All this stuff makes backgrounds, etc.
  gStyle->SetTitleColor(0);//transparent for printing purposes...
  gStyle->SetCanvasColor(0);
  gStyle->SetPadColor(0);
  gStyle->SetPadBorderMode(0);
  gStyle->SetCanvasBorderMode(0);
  gStyle->SetFrameBorderMode(0);
  gStyle->SetPalette(1);
  gStyle->SetOptStat(kFALSE);
  gStyle->SetOptStat(11);
  gStyle->SetOptFit(1111);
  gStyle->SetPadGridX(kTRUE);
  gStyle->SetPadGridY(kTRUE);
  TGaxis::SetMaxDigits(4);

  char INPUT_FILENAME[256];
  sprintf(INPUT_FILENAME,"summary_table.txt");
  fprintf(stderr, "My Input file name is: %s\n", INPUT_FILENAME);
  ifstream myInFile(INPUT_FILENAME);

  float Run[points], HV[points], PreAmp[points], Navg[points], PedAve[points], PedRMS[points], nonLin[points], nonLinpV[points], Error[points], Chi2p6df[points];
  char header[256];
  for(int h = 0; h<10; h++) { //read the header info
    myInFile >> header;
  }

  Double_t RelativeWidth[points], HV_positive[points], nonLin_positive[points], Chi2[points], erX[points], erY[points], myPreAmp[points], myNavg[points], Vout[points], nonLinpV_positive[points];
	const int ndf = 6;
	Double_t Vperch = 76.29E-6; //Volts per channel

  for(int i=0;i<points;i++) {
    myInFile >> Run[i] >> HV[i] >> PreAmp[i] >> Navg[i] >> PedAve[i] >> PedRMS[i] >> nonLin[i] >> Error[i] >> nonLinpV[i] >> Chi2p6df[i];
    RelativeWidth[i] = PedRMS[i]/PedAve[i];
    HV_positive[i] = HV[i];
    nonLin_positive[i] = nonLin[i];
    nonLinpV_positive[i] = nonLinpV[i];
    Chi2[i] = Chi2p6df[i]/ndf;
    myPreAmp[i] = PreAmp[i];
    erX[i] = 0.0;
    erY[i] = Error[i];
    myNavg[i] = Navg[i];
    Vout[i] = Navg[i]*Vperch;
    cout << Run[i]<<"	"<<HV_positive[i] <<"	"<< myPreAmp[i] <<"	"<< RelativeWidth[i] <<"	"<< Chi2[i]<< "	"<< nonLin_positive[i]<<"	"<< nonLinpV_positive[i]<<"	"<<Navg[i]<<"	"<<Vout[i]<< endl;
  	}

  myInFile.close();

  TCanvas *c = new TCanvas("c","non-Linearity vs HV",0,0,700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,HV_positive, nonLin_positive, erX, erY);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("non-linearity vs HV");
   TExec *ex = new TExec("ex","HVoltage();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("HV (V)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("nonLinearity %");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   char labelA[256], labelB[256], labelC[256], labelD[256], labelE[256], labelF[256], labelG[256], labelH[256];
   sprintf(labelA,"0.1 MOhm (SNS) pre-Amp");
   TPaveLabel *ptA = new TPaveLabel(0.65,0.85, 0.84,0.89,labelA,"NDC");
   ptA->SetBorderSize(0);
   ptA->SetTextColor(1);
   ptA->SetTextSize(0.75);
   ptA->SetFillColor(0);
   ptA->Draw();
   sprintf(labelB,"0.3 MOhm (KDPA) pre-Amp");
   TPaveLabel *ptB = new TPaveLabel(0.65,0.81, 0.84,0.85,labelB,"NDC");
   ptB->SetBorderSize(0);
   ptB->SetTextColor(2);
   ptB->SetTextSize(0.75);
   ptB->SetFillColor(0);
   ptB->Draw();
   sprintf(labelC,"0.5 MOhm (LUMI) pre-Amp");
   TPaveLabel *ptC = new TPaveLabel(0.65,0.77, 0.84,0.81,labelC,"NDC");
   ptC->SetBorderSize(0);
   ptC->SetTextColor(3);
   ptC->SetTextSize(0.75);
   ptC->SetFillColor(0);
   ptC->Draw();
   sprintf(labelD,"0.6 MOhm (KDPA) pre-Amp");
   TPaveLabel *ptD = new TPaveLabel(0.65,0.73, 0.84,0.77,labelD,"NDC");
   ptD->SetBorderSize(0);
   ptD->SetTextColor(4);
   ptD->SetTextSize(0.75);
   ptD->SetFillColor(0);
   ptD->Draw();
   sprintf(labelE,"1.0 MOhm (LUMI) pre-Amp");
   TPaveLabel *ptE = new TPaveLabel(0.65,0.69, 0.84,0.73,labelE,"NDC");
   ptE->SetBorderSize(0);
   ptE->SetTextColor(6);
   ptE->SetTextSize(0.75);
   ptE->SetFillColor(0);
   ptE->Draw();
   sprintf(labelF,"2.0 MOhm (MAIN) pre-Amp");
   TPaveLabel *ptF = new TPaveLabel(0.65,0.65, 0.84,0.69,labelF,"NDC");
   ptF->SetBorderSize(0);
   ptF->SetTextColor(7);
   ptF->SetTextSize(0.75);
   ptF->SetFillColor(0);
   ptF->Draw();
   sprintf(labelG,"4.0 MOhm (MAIN) pre-Amp");
   TPaveLabel *ptG = new TPaveLabel(0.65,0.61, 0.84,0.65,labelG,"NDC");
   ptG->SetBorderSize(0);
   ptG->SetTextColor(8);
   ptG->SetTextSize(0.75);
   ptG->SetFillColor(0);
   ptG->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./nonLinearity_vs_HV_6nA.png");
   c->Print(plotname);

   TCanvas *c1 = new TCanvas("c1","nonLinearity vs pre-Amp Settings",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,myPreAmp, nonLin_positive, erX, erY);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("non-linearity vs pre-Amp Settings");
   TExec *ex = new TExec("ex","PreAmp();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("pre-Amp (MOhm)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("nonLinearity %");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   char label[points][256];
   sprintf(label[0]," 770 V HV");
   TPaveLabel *pt1 = new TPaveLabel(0.65,0.86, 0.73,0.89,label[0],"NDC");
   pt1->SetBorderSize(0);
   pt1->SetTextColor(1);
   pt1->SetTextSize(0.75);
   pt1->SetFillColor(0);
   pt1->Draw();
   sprintf(label[1]," 750 V HV");
   TPaveLabel *pt2 = new TPaveLabel(0.65,0.83, 0.73,0.86,label[1],"NDC");
   pt2->SetBorderSize(0);
   pt2->SetTextColor(1);
   pt2->SetTextSize(0.75);
   pt2->SetFillColor(0);
   pt2->Draw();
   sprintf(label[2]," 735 V HV");
   TPaveLabel *pt3 = new TPaveLabel(0.65,0.80, 0.73,0.83,label[2],"NDC");
   pt3->SetBorderSize(0);
   pt3->SetTextColor(1);
   pt3->SetTextSize(0.75);
   pt3->SetFillColor(0);
   pt3->Draw();
   sprintf(label[3]," 720 V HV");
   TPaveLabel *pt4 = new TPaveLabel(0.65,0.77, 0.73,0.80,label[3],"NDC");
   pt4->SetBorderSize(0);
   pt4->SetTextColor(1);
   pt4->SetTextSize(0.75);
   pt4->SetFillColor(0);
   pt4->Draw();
   sprintf(label[4]," 635 V HV");
   TPaveLabel *pt5 = new TPaveLabel(0.65,0.74, 0.73,0.77,label[4],"NDC");
   pt5->SetBorderSize(0);
   pt5->SetTextColor(2);
   pt5->SetTextSize(0.75);
   pt5->SetFillColor(0);
   pt5->Draw();
   sprintf(label[5]," 620 V HV");
   TPaveLabel *pt6 = new TPaveLabel(0.65,0.71, 0.73,0.74,label[5],"NDC");
   pt6->SetBorderSize(0);
   pt6->SetTextColor(2);
   pt6->SetTextSize(0.75);
   pt6->SetFillColor(0);
   pt6->Draw();
   sprintf(label[6]," 600 V HV");
   TPaveLabel *pt7 = new TPaveLabel(0.65,0.68, 0.73,0.71,label[6],"NDC");
   pt7->SetBorderSize(0);
   pt7->SetTextColor(2);
   pt7->SetTextSize(0.75);
   pt7->SetFillColor(0);
   pt7->Draw();
   sprintf(label[7]," 590 V HV");
   TPaveLabel *pt8 = new TPaveLabel(0.65,0.65, 0.73,0.68,label[7],"NDC");
   pt8->SetBorderSize(0);
   pt8->SetTextColor(2);
   pt8->SetTextSize(0.75);
   pt8->SetFillColor(0);
   pt8->Draw();
   sprintf(label[8]," 580 V HV");
   TPaveLabel *pt9 = new TPaveLabel(0.65,0.62, 0.73,0.65,label[8],"NDC");
   pt9->SetBorderSize(0);
   pt9->SetTextColor(3);
   pt9->SetTextSize(0.75);
   pt9->SetFillColor(0);
   pt9->Draw();
   sprintf(label[9]," 560 V HV");
   TPaveLabel *pt10 = new TPaveLabel(0.65,0.59, 0.73,0.62,label[9],"NDC");
   pt10->SetBorderSize(0);
   pt10->SetTextColor(3);
   pt10->SetTextSize(0.75);
   pt10->SetFillColor(0);
   pt10->Draw();
   sprintf(label[10]," 545 V HV");
   TPaveLabel *pt11 = new TPaveLabel(0.65,0.56, 0.73,0.59,label[10],"NDC");
   pt11->SetBorderSize(0);
   pt11->SetTextColor(3);
   pt11->SetTextSize(0.75);
   pt11->SetFillColor(0);
   pt11->Draw();
   sprintf(label[11]," 530 V HV");
   TPaveLabel *pt12 = new TPaveLabel(0.65,0.53, 0.73,0.56,label[11],"NDC");
   pt12->SetBorderSize(0);
   pt12->SetTextColor(3);
   pt12->SetTextSize(0.75);
   pt12->SetFillColor(0);
   pt12->Draw();
   sprintf(label[12]," 560 V HV");
   TPaveLabel *pt13 = new TPaveLabel(0.65,0.50, 0.73,0.53,label[12],"NDC");
   pt13->SetBorderSize(0);
   pt13->SetTextColor(4);
   pt13->SetTextSize(0.75);
   pt13->SetFillColor(0);
   pt13->Draw();
   sprintf(label[13]," 545 V HV");
   TPaveLabel *pt14 = new TPaveLabel(0.65,0.47, 0.73,0.50,label[13],"NDC");
   pt14->SetBorderSize(0);
   pt14->SetTextColor(4);
   pt14->SetTextSize(0.75);
   pt14->SetFillColor(0);
   pt14->Draw();
   sprintf(label[14]," 530 V HV");
   TPaveLabel *pt15 = new TPaveLabel(0.65,0.44, 0.73,0.47,label[14],"NDC");
   pt15->SetBorderSize(0);
   pt15->SetTextColor(4);
   pt15->SetTextSize(0.75);
   pt15->SetFillColor(0);
   pt15->Draw();
   sprintf(label[15]," 520 V HV");
   TPaveLabel *pt16 = new TPaveLabel(0.65,0.41, 0.73,0.44,label[15],"NDC");
   pt16->SetBorderSize(0);
   pt16->SetTextColor(4);
   pt16->SetTextSize(0.75);
   pt16->SetFillColor(0);
   pt16->Draw();
   sprintf(label[16]," 515 V HV");
   TPaveLabel *pt17 = new TPaveLabel(0.78,0.86, 0.86,0.89,label[16],"NDC");
   pt17->SetBorderSize(0);
   pt17->SetTextColor(6);
   pt17->SetTextSize(0.75);
   pt17->SetFillColor(0);
   pt17->Draw();
   sprintf(label[17]," 500 V HV");
   TPaveLabel *pt18 = new TPaveLabel(0.78,0.83, 0.86,0.86,label[17],"NDC");
   pt18->SetBorderSize(0);
   pt18->SetTextColor(6);
   pt18->SetTextSize(0.75);
   pt18->SetFillColor(0);
   pt18->Draw();
   sprintf(label[18]," 485 V HV");
   TPaveLabel *pt19 = new TPaveLabel(0.78,0.80, 0.86,0.83,label[18],"NDC");
   pt19->SetBorderSize(0);
   pt19->SetTextColor(6);
   pt19->SetTextSize(0.75);
   pt19->SetFillColor(0);
   pt19->Draw();
   sprintf(label[19]," 470 V HV");
   TPaveLabel *pt20 = new TPaveLabel(0.78,0.77, 0.86,0.80,label[19],"NDC");
   pt20->SetBorderSize(0);
   pt20->SetTextColor(6);
   pt20->SetTextSize(0.75);
   pt20->SetFillColor(0);
   pt20->Draw();
   sprintf(label[20]," 450 V HV");
   TPaveLabel *pt21 = new TPaveLabel(0.78,0.74, 0.86,0.77,label[20],"NDC");
   pt21->SetBorderSize(0);
   pt21->SetTextColor(7);
   pt21->SetTextSize(0.75);
   pt21->SetFillColor(0);
   pt21->Draw();
   sprintf(label[21]," 440 V HV");
   TPaveLabel *pt22 = new TPaveLabel(0.78,0.71, 0.86,0.74,label[21],"NDC");
   pt22->SetBorderSize(0);
   pt22->SetTextColor(7);
   pt22->SetTextSize(0.75);
   pt22->SetFillColor(0);
   pt22->Draw();
   sprintf(label[22]," 430 V HV");
   TPaveLabel *pt23 = new TPaveLabel(0.78,0.68, 0.86,0.71,label[22],"NDC");
   pt23->SetBorderSize(0);
   pt23->SetTextColor(7);
   pt23->SetTextSize(0.75);
   pt23->SetFillColor(0);
   pt23->Draw();
   sprintf(label[23]," 420 V HV");
   TPaveLabel *pt24 = new TPaveLabel(0.78,0.65, 0.86,0.68,label[23],"NDC");
   pt24->SetBorderSize(0);
   pt24->SetTextColor(7);
   pt24->SetTextSize(0.75);
   pt24->SetFillColor(0);
   pt24->Draw();
   sprintf(label[24]," 400 V HV");
   TPaveLabel *pt25 = new TPaveLabel(0.78,0.62, 0.86,0.65,label[24],"NDC");
   pt25->SetBorderSize(0);
   pt25->SetTextColor(8);
   pt25->SetTextSize(0.75);
   pt25->SetFillColor(0);
   pt25->Draw();
   sprintf(label[25]," 390 V HV");
   TPaveLabel *pt26 = new TPaveLabel(0.78,0.59, 0.86,0.62,label[25],"NDC");
   pt26->SetBorderSize(0);
   pt26->SetTextColor(8);
   pt26->SetTextSize(0.75);
   pt26->SetFillColor(0);
   pt26->Draw();
   sprintf(label[26]," 380 V HV");
   TPaveLabel *pt27 = new TPaveLabel(0.78,0.56, 0.86,0.59,label[26],"NDC");
   pt27->SetBorderSize(0);
   pt27->SetTextColor(8);
   pt27->SetTextSize(0.75);
   pt27->SetFillColor(0);
   pt27->Draw();
   sprintf(label[27]," 370 V HV");
   TPaveLabel *pt28 = new TPaveLabel(0.78,0.53, 0.86,0.56,label[27],"NDC");
   pt28->SetBorderSize(0);
   pt28->SetTextColor(8);
   pt28->SetTextSize(0.75);
   pt28->SetFillColor(0);
   pt28->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz, with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./nonLinearity_vs_pre-Amp_Settings_6nA.png");
   c1->Print(plotname);

   TCanvas *c2 = new TCanvas("c2","Relative width of pedestal vs pre-Amp Settings",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,myPreAmp, RelativeWidth);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("RelativeWidth of pedestal vs pre-Amp Settings");
   TExec *ex = new TExec("ex","PreAmp();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("pre-Amp (MOhm)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("PedRMS/PedMean");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   sprintf(label[0]," 770 V HV");
   TPaveLabel *pt1 = new TPaveLabel(0.60,0.86, 0.68,0.89,label[0],"NDC");
   pt1->SetBorderSize(0);
   pt1->SetTextColor(1);
   pt1->SetTextSize(0.75);
   pt1->SetFillColor(0);
   pt1->Draw();
   sprintf(label[1]," 750 V HV");
   TPaveLabel *pt2 = new TPaveLabel(0.60,0.83, 0.68,0.86,label[1],"NDC");
   pt2->SetBorderSize(0);
   pt2->SetTextColor(1);
   pt2->SetTextSize(0.75);
   pt2->SetFillColor(0);
   pt2->Draw();
   sprintf(label[2]," 735 V HV");
   TPaveLabel *pt3 = new TPaveLabel(0.60,0.80, 0.68,0.83,label[2],"NDC");
   pt3->SetBorderSize(0);
   pt3->SetTextColor(1);
   pt3->SetTextSize(0.75);
   pt3->SetFillColor(0);
   pt3->Draw();
   sprintf(label[3]," 720 V HV");
   TPaveLabel *pt4 = new TPaveLabel(0.60,0.77, 0.68,0.80,label[3],"NDC");
   pt4->SetBorderSize(0);
   pt4->SetTextColor(1);
   pt4->SetTextSize(0.75);
   pt4->SetFillColor(0);
   pt4->Draw();
   sprintf(label[4]," 635 V HV");
   TPaveLabel *pt5 = new TPaveLabel(0.60,0.74, 0.68,0.77,label[4],"NDC");
   pt5->SetBorderSize(0);
   pt5->SetTextColor(2);
   pt5->SetTextSize(0.75);
   pt5->SetFillColor(0);
   pt5->Draw();
   sprintf(label[5]," 620 V HV");
   TPaveLabel *pt6 = new TPaveLabel(0.60,0.71, 0.68,0.74,label[5],"NDC");
   pt6->SetBorderSize(0);
   pt6->SetTextColor(2);
   pt6->SetTextSize(0.75);
   pt6->SetFillColor(0);
   pt6->Draw();
   sprintf(label[6]," 600 V HV");
   TPaveLabel *pt7 = new TPaveLabel(0.60,0.68, 0.68,0.71,label[6],"NDC");
   pt7->SetBorderSize(0);
   pt7->SetTextColor(2);
   pt7->SetTextSize(0.75);
   pt7->SetFillColor(0);
   pt7->Draw();
   sprintf(label[7]," 590 V HV");
   TPaveLabel *pt8 = new TPaveLabel(0.60,0.65, 0.68,0.68,label[7],"NDC");
   pt8->SetBorderSize(0);
   pt8->SetTextColor(2);
   pt8->SetTextSize(0.75);
   pt8->SetFillColor(0);
   pt8->Draw();
   sprintf(label[8]," 580 V HV");
   TPaveLabel *pt9 = new TPaveLabel(0.60,0.62, 0.68,0.65,label[8],"NDC");
   pt9->SetBorderSize(0);
   pt9->SetTextColor(3);
   pt9->SetTextSize(0.75);
   pt9->SetFillColor(0);
   pt9->Draw();
   sprintf(label[9]," 560 V HV");
   TPaveLabel *pt10 = new TPaveLabel(0.60,0.59, 0.68,0.62,label[9],"NDC");
   pt10->SetBorderSize(0);
   pt10->SetTextColor(3);
   pt10->SetTextSize(0.75);
   pt10->SetFillColor(0);
   pt10->Draw();
   sprintf(label[10]," 545 V HV");
   TPaveLabel *pt11 = new TPaveLabel(0.60,0.56, 0.68,0.59,label[10],"NDC");
   pt11->SetBorderSize(0);
   pt11->SetTextColor(3);
   pt11->SetTextSize(0.75);
   pt11->SetFillColor(0);
   pt11->Draw();
   sprintf(label[11]," 530 V HV");
   TPaveLabel *pt12 = new TPaveLabel(0.60,0.53, 0.68,0.56,label[11],"NDC");
   pt12->SetBorderSize(0);
   pt12->SetTextColor(3);
   pt12->SetTextSize(0.75);
   pt12->SetFillColor(0);
   pt12->Draw();
   sprintf(label[12]," 560 V HV");
   TPaveLabel *pt13 = new TPaveLabel(0.60,0.50, 0.68,0.53,label[12],"NDC");
   pt13->SetBorderSize(0);
   pt13->SetTextColor(4);
   pt13->SetTextSize(0.75);
   pt13->SetFillColor(0);
   pt13->Draw();
   sprintf(label[13]," 545 V HV");
   TPaveLabel *pt14 = new TPaveLabel(0.60,0.47, 0.68,0.50,label[13],"NDC");
   pt14->SetBorderSize(0);
   pt14->SetTextColor(4);
   pt14->SetTextSize(0.75);
   pt14->SetFillColor(0);
   pt14->Draw();
   sprintf(label[14]," 530 V HV");
   TPaveLabel *pt15 = new TPaveLabel(0.60,0.44, 0.68,0.47,label[14],"NDC");
   pt15->SetBorderSize(0);
   pt15->SetTextColor(4);
   pt15->SetTextSize(0.75);
   pt15->SetFillColor(0);
   pt15->Draw();
   sprintf(label[15]," 520 V HV");
   TPaveLabel *pt16 = new TPaveLabel(0.60,0.41, 0.68,0.44,label[15],"NDC");
   pt16->SetBorderSize(0);
   pt16->SetTextColor(4);
   pt16->SetTextSize(0.75);
   pt16->SetFillColor(0);
   pt16->Draw();
   sprintf(label[16]," 515 V HV");
   TPaveLabel *pt17 = new TPaveLabel(0.73,0.86, 0.81,0.89,label[16],"NDC");
   pt17->SetBorderSize(0);
   pt17->SetTextColor(6);
   pt17->SetTextSize(0.75);
   pt17->SetFillColor(0);
   pt17->Draw();
   sprintf(label[17]," 500 V HV");
   TPaveLabel *pt18 = new TPaveLabel(0.73,0.83, 0.81,0.86,label[17],"NDC");
   pt18->SetBorderSize(0);
   pt18->SetTextColor(6);
   pt18->SetTextSize(0.75);
   pt18->SetFillColor(0);
   pt18->Draw();
   sprintf(label[18]," 485 V HV");
   TPaveLabel *pt19 = new TPaveLabel(0.73,0.80, 0.81,0.83,label[18],"NDC");
   pt19->SetBorderSize(0);
   pt19->SetTextColor(6);
   pt19->SetTextSize(0.75);
   pt19->SetFillColor(0);
   pt19->Draw();
   sprintf(label[19]," 470 V HV");
   TPaveLabel *pt20 = new TPaveLabel(0.73,0.77, 0.81,0.80,label[19],"NDC");
   pt20->SetBorderSize(0);
   pt20->SetTextColor(6);
   pt20->SetTextSize(0.75);
   pt20->SetFillColor(0);
   pt20->Draw();
   sprintf(label[20]," 450 V HV");
   TPaveLabel *pt21 = new TPaveLabel(0.73,0.74, 0.81,0.77,label[20],"NDC");
   pt21->SetBorderSize(0);
   pt21->SetTextColor(7);
   pt21->SetTextSize(0.75);
   pt21->SetFillColor(0);
   pt21->Draw();
   sprintf(label[21]," 440 V HV");
   TPaveLabel *pt22 = new TPaveLabel(0.73,0.71, 0.81,0.74,label[21],"NDC");
   pt22->SetBorderSize(0);
   pt22->SetTextColor(7);
   pt22->SetTextSize(0.75);
   pt22->SetFillColor(0);
   pt22->Draw();
   sprintf(label[22]," 430 V HV");
   TPaveLabel *pt23 = new TPaveLabel(0.73,0.68, 0.81,0.71,label[22],"NDC");
   pt23->SetBorderSize(0);
   pt23->SetTextColor(7);
   pt23->SetTextSize(0.75);
   pt23->SetFillColor(0);
   pt23->Draw();
   sprintf(label[23]," 420 V HV");
   TPaveLabel *pt24 = new TPaveLabel(0.73,0.65, 0.81,0.68,label[23],"NDC");
   pt24->SetBorderSize(0);
   pt24->SetTextColor(7);
   pt24->SetTextSize(0.75);
   pt24->SetFillColor(0);
   pt24->Draw();
   sprintf(label[24]," 400 V HV");
   TPaveLabel *pt25 = new TPaveLabel(0.73,0.62, 0.81,0.65,label[24],"NDC");
   pt25->SetBorderSize(0);
   pt25->SetTextColor(8);
   pt25->SetTextSize(0.75);
   pt25->SetFillColor(0);
   pt25->Draw();
   sprintf(label[25]," 390 V HV");
   TPaveLabel *pt26 = new TPaveLabel(0.73,0.59, 0.81,0.62,label[25],"NDC");
   pt26->SetBorderSize(0);
   pt26->SetTextColor(8);
   pt26->SetTextSize(0.75);
   pt26->SetFillColor(0);
   pt26->Draw();
   sprintf(label[26]," 380 V HV");
   TPaveLabel *pt27 = new TPaveLabel(0.73,0.56, 0.81,0.59,label[26],"NDC");
   pt27->SetBorderSize(0);
   pt27->SetTextColor(8);
   pt27->SetTextSize(0.75);
   pt27->SetFillColor(0);
   pt27->Draw();
   sprintf(label[27]," 370 V HV");
   TPaveLabel *pt28 = new TPaveLabel(0.73,0.53, 0.81,0.56,label[27],"NDC");
   pt28->SetBorderSize(0);
   pt28->SetTextColor(8);
   pt28->SetTextSize(0.75);
   pt28->SetFillColor(0);
   pt28->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./relativewidth_vs_pre-Amp_Settings_6nA.png");
   c2->Print(plotname);

   TCanvas *c3 = new TCanvas("c3","Relative width of pedestal vs HV",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,HV_positive, RelativeWidth);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("RelativeWidth of pedestal vs HV");
   TExec *ex = new TExec("ex","HVoltage();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("HV (V)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("PedRMS/PedMean");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   sprintf(labelA,"0.1 MOhm (SNS) pre-Amp");
   TPaveLabel *ptA = new TPaveLabel(0.15,0.80, 0.34,0.84,labelA,"NDC");
   ptA->SetBorderSize(0);
   ptA->SetTextColor(1);
   ptA->SetTextSize(0.75);
   ptA->SetFillColor(0);
   ptA->Draw();
   sprintf(labelB,"0.3 MOhm (KDPA) pre-Amp");
   TPaveLabel *ptB = new TPaveLabel(0.15,0.76, 0.34,0.80,labelB,"NDC");
   ptB->SetBorderSize(0);
   ptB->SetTextColor(2);
   ptB->SetTextSize(0.75);
   ptB->SetFillColor(0);
   ptB->Draw();
   sprintf(labelC,"0.5 MOhm (LUMI) pre-Amp");
   TPaveLabel *ptC = new TPaveLabel(0.15,0.72, 0.34,0.76,labelC,"NDC");
   ptC->SetBorderSize(0);
   ptC->SetTextColor(3);
   ptC->SetTextSize(0.75);
   ptC->SetFillColor(0);
   ptC->Draw();
   sprintf(labelD,"0.6 MOhm (KDPA) pre-Amp");
   TPaveLabel *ptD = new TPaveLabel(0.15,0.68, 0.34,0.72,labelD,"NDC");
   ptD->SetBorderSize(0);
   ptD->SetTextColor(4);
   ptD->SetTextSize(0.75);
   ptD->SetFillColor(0);
   ptD->Draw();
   sprintf(labelE,"1.0 MOhm (LUMI) pre-Amp");
   TPaveLabel *ptE = new TPaveLabel(0.15,0.64, 0.34,0.68,labelE,"NDC");
   ptE->SetBorderSize(0);
   ptE->SetTextColor(6);
   ptE->SetTextSize(0.75);
   ptE->SetFillColor(0);
   ptE->Draw();
   sprintf(labelF,"2.0 MOhm (MAIN) pre-Amp");
   TPaveLabel *ptF = new TPaveLabel(0.15,0.60, 0.34,0.64,labelF,"NDC");
   ptF->SetBorderSize(0);
   ptF->SetTextColor(7);
   ptF->SetTextSize(0.75);
   ptF->SetFillColor(0);
   ptF->Draw();
   sprintf(labelG,"4.0 MOhm (MAIN) pre-Amp");
   TPaveLabel *ptG = new TPaveLabel(0.15,0.56, 0.34,0.60,labelG,"NDC");
   ptG->SetBorderSize(0);
   ptG->SetTextColor(8);
   ptG->SetTextSize(0.75);
   ptG->SetFillColor(0);
   ptG->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./relativewidth_vs_HV_6nA.png");
   c3->Print(plotname);

   TCanvas *c4 = new TCanvas("c4","#chi^{2}/df vs HV",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,HV_positive, Chi2);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("#chi^{2}/df vs HV");
   TExec *ex = new TExec("ex","HVoltage();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("HV (V)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("#chi^{2}/df");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   sprintf(labelA,"0.1 MOhm (SNS) pre-Amp");
   TPaveLabel *ptA = new TPaveLabel(0.65,0.80, 0.84,0.84,labelA,"NDC");
   ptA->SetBorderSize(0);
   ptA->SetTextColor(1);
   ptA->SetTextSize(0.75);
   ptA->SetFillColor(0);
   ptA->Draw();
   sprintf(labelB,"0.3 MOhm (KDPA) pre-Amp");
   TPaveLabel *ptB = new TPaveLabel(0.65,0.76, 0.84,0.80,labelB,"NDC");
   ptB->SetBorderSize(0);
   ptB->SetTextColor(2);
   ptB->SetTextSize(0.75);
   ptB->SetFillColor(0);
   ptB->Draw();
   sprintf(labelC,"0.5 MOhm (LUMI) pre-Amp");
   TPaveLabel *ptC = new TPaveLabel(0.65,0.72, 0.84,0.76,labelC,"NDC");
   ptC->SetBorderSize(0);
   ptC->SetTextColor(3);
   ptC->SetTextSize(0.75);
   ptC->SetFillColor(0);
   ptC->Draw();
   sprintf(labelD,"0.6 MOhm (KDPA) pre-Amp");
   TPaveLabel *ptD = new TPaveLabel(0.65,0.68, 0.84,0.72,labelD,"NDC");
   ptD->SetBorderSize(0);
   ptD->SetTextColor(4);
   ptD->SetTextSize(0.75);
   ptD->SetFillColor(0);
   ptD->Draw();
   sprintf(labelE,"1.0 MOhm (LUMI) pre-Amp");
   TPaveLabel *ptE = new TPaveLabel(0.65,0.64, 0.84,0.68,labelE,"NDC");
   ptE->SetBorderSize(0);
   ptE->SetTextColor(6);
   ptE->SetTextSize(0.75);
   ptE->SetFillColor(0);
   ptE->Draw();
   sprintf(labelF,"2.0 MOhm (MAIN) pre-Amp");
   TPaveLabel *ptF = new TPaveLabel(0.65,0.60, 0.84,0.64,labelF,"NDC");
   ptF->SetBorderSize(0);
   ptF->SetTextColor(7);
   ptF->SetTextSize(0.75);
   ptF->SetFillColor(0);
   ptF->Draw();
   sprintf(labelG,"4.0 MOhm (MAIN) pre-Amp");
   TPaveLabel *ptG = new TPaveLabel(0.65,0.56, 0.84,0.60,labelG,"NDC");
   ptG->SetBorderSize(0);
   ptG->SetTextColor(8);
   ptG->SetTextSize(0.75);
   ptG->SetFillColor(0);
   ptG->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./Chi2_vs_HV_6nA.png");
   c4->Print(plotname);

  TCanvas *c5 = new TCanvas("c5","#chi^{2}/df vs pre-Amp Settings",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,myPreAmp, Chi2);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("#chi^{2}/df vs pre-Amp Settings");
   TExec *ex = new TExec("ex","PreAmp();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("pre-Amp (MOhm)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("#chi^{2}/df");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   sprintf(label[0]," 770 V HV");
   TPaveLabel *pt1 = new TPaveLabel(0.65,0.86, 0.73,0.89,label[0],"NDC");
   pt1->SetBorderSize(0);
   pt1->SetTextColor(1);
   pt1->SetTextSize(0.75);
   pt1->SetFillColor(0);
   pt1->Draw();
   sprintf(label[1]," 750 V HV");
   TPaveLabel *pt2 = new TPaveLabel(0.65,0.83, 0.73,0.86,label[1],"NDC");
   pt2->SetBorderSize(0);
   pt2->SetTextColor(1);
   pt2->SetTextSize(0.75);
   pt2->SetFillColor(0);
   pt2->Draw();
   sprintf(label[2]," 735 V HV");
   TPaveLabel *pt3 = new TPaveLabel(0.65,0.80, 0.73,0.83,label[2],"NDC");
   pt3->SetBorderSize(0);
   pt3->SetTextColor(1);
   pt3->SetTextSize(0.75);
   pt3->SetFillColor(0);
   pt3->Draw();
   sprintf(label[3]," 720 V HV");
   TPaveLabel *pt4 = new TPaveLabel(0.65,0.77, 0.73,0.80,label[3],"NDC");
   pt4->SetBorderSize(0);
   pt4->SetTextColor(1);
   pt4->SetTextSize(0.75);
   pt4->SetFillColor(0);
   pt4->Draw();
   sprintf(label[4]," 635 V HV");
   TPaveLabel *pt5 = new TPaveLabel(0.65,0.74, 0.73,0.77,label[4],"NDC");
   pt5->SetBorderSize(0);
   pt5->SetTextColor(2);
   pt5->SetTextSize(0.75);
   pt5->SetFillColor(0);
   pt5->Draw();
   sprintf(label[5]," 620 V HV");
   TPaveLabel *pt6 = new TPaveLabel(0.65,0.71, 0.73,0.74,label[5],"NDC");
   pt6->SetBorderSize(0);
   pt6->SetTextColor(2);
   pt6->SetTextSize(0.75);
   pt6->SetFillColor(0);
   pt6->Draw();
   sprintf(label[6]," 600 V HV");
   TPaveLabel *pt7 = new TPaveLabel(0.65,0.68, 0.73,0.71,label[6],"NDC");
   pt7->SetBorderSize(0);
   pt7->SetTextColor(2);
   pt7->SetTextSize(0.75);
   pt7->SetFillColor(0);
   pt7->Draw();
   sprintf(label[7]," 590 V HV");
   TPaveLabel *pt8 = new TPaveLabel(0.65,0.65, 0.73,0.68,label[7],"NDC");
   pt8->SetBorderSize(0);
   pt8->SetTextColor(2);
   pt8->SetTextSize(0.75);
   pt8->SetFillColor(0);
   pt8->Draw();
   sprintf(label[8]," 580 V HV");
   TPaveLabel *pt9 = new TPaveLabel(0.65,0.62, 0.73,0.65,label[8],"NDC");
   pt9->SetBorderSize(0);
   pt9->SetTextColor(3);
   pt9->SetTextSize(0.75);
   pt9->SetFillColor(0);
   pt9->Draw();
   sprintf(label[9]," 560 V HV");
   TPaveLabel *pt10 = new TPaveLabel(0.65,0.59, 0.73,0.62,label[9],"NDC");
   pt10->SetBorderSize(0);
   pt10->SetTextColor(3);
   pt10->SetTextSize(0.75);
   pt10->SetFillColor(0);
   pt10->Draw();
   sprintf(label[10]," 545 V HV");
   TPaveLabel *pt11 = new TPaveLabel(0.65,0.56, 0.73,0.59,label[10],"NDC");
   pt11->SetBorderSize(0);
   pt11->SetTextColor(3);
   pt11->SetTextSize(0.75);
   pt11->SetFillColor(0);
   pt11->Draw();
   sprintf(label[11]," 530 V HV");
   TPaveLabel *pt12 = new TPaveLabel(0.65,0.53, 0.73,0.56,label[11],"NDC");
   pt12->SetBorderSize(0);
   pt12->SetTextColor(3);
   pt12->SetTextSize(0.75);
   pt12->SetFillColor(0);
   pt12->Draw();
   sprintf(label[12]," 560 V HV");
   TPaveLabel *pt13 = new TPaveLabel(0.65,0.50, 0.73,0.53,label[12],"NDC");
   pt13->SetBorderSize(0);
   pt13->SetTextColor(4);
   pt13->SetTextSize(0.75);
   pt13->SetFillColor(0);
   pt13->Draw();
   sprintf(label[13]," 545 V HV");
   TPaveLabel *pt14 = new TPaveLabel(0.65,0.47, 0.73,0.50,label[13],"NDC");
   pt14->SetBorderSize(0);
   pt14->SetTextColor(4);
   pt14->SetTextSize(0.75);
   pt14->SetFillColor(0);
   pt14->Draw();
   sprintf(label[14]," 530 V HV");
   TPaveLabel *pt15 = new TPaveLabel(0.65,0.44, 0.73,0.47,label[14],"NDC");
   pt15->SetBorderSize(0);
   pt15->SetTextColor(4);
   pt15->SetTextSize(0.75);
   pt15->SetFillColor(0);
   pt15->Draw();
   sprintf(label[15]," 520 V HV");
   TPaveLabel *pt16 = new TPaveLabel(0.65,0.41, 0.73,0.44,label[15],"NDC");
   pt16->SetBorderSize(0);
   pt16->SetTextColor(4);
   pt16->SetTextSize(0.75);
   pt16->SetFillColor(0);
   pt16->Draw();
   sprintf(label[16]," 515 V HV");
   TPaveLabel *pt17 = new TPaveLabel(0.78,0.86, 0.86,0.89,label[16],"NDC");
   pt17->SetBorderSize(0);
   pt17->SetTextColor(6);
   pt17->SetTextSize(0.75);
   pt17->SetFillColor(0);
   pt17->Draw();
   sprintf(label[17]," 500 V HV");
   TPaveLabel *pt18 = new TPaveLabel(0.78,0.83, 0.86,0.86,label[17],"NDC");
   pt18->SetBorderSize(0);
   pt18->SetTextColor(6);
   pt18->SetTextSize(0.75);
   pt18->SetFillColor(0);
   pt18->Draw();
   sprintf(label[18]," 485 V HV");
   TPaveLabel *pt19 = new TPaveLabel(0.78,0.80, 0.86,0.83,label[18],"NDC");
   pt19->SetBorderSize(0);
   pt19->SetTextColor(6);
   pt19->SetTextSize(0.75);
   pt19->SetFillColor(0);
   pt19->Draw();
   sprintf(label[19]," 470 V HV");
   TPaveLabel *pt20 = new TPaveLabel(0.78,0.77, 0.86,0.80,label[19],"NDC");
   pt20->SetBorderSize(0);
   pt20->SetTextColor(6);
   pt20->SetTextSize(0.75);
   pt20->SetFillColor(0);
   pt20->Draw();
   sprintf(label[20]," 450 V HV");
   TPaveLabel *pt21 = new TPaveLabel(0.78,0.74, 0.86,0.77,label[20],"NDC");
   pt21->SetBorderSize(0);
   pt21->SetTextColor(7);
   pt21->SetTextSize(0.75);
   pt21->SetFillColor(0);
   pt21->Draw();
   sprintf(label[21]," 440 V HV");
   TPaveLabel *pt22 = new TPaveLabel(0.78,0.71, 0.86,0.74,label[21],"NDC");
   pt22->SetBorderSize(0);
   pt22->SetTextColor(7);
   pt22->SetTextSize(0.75);
   pt22->SetFillColor(0);
   pt22->Draw();
   sprintf(label[22]," 430 V HV");
   TPaveLabel *pt23 = new TPaveLabel(0.78,0.68, 0.86,0.71,label[22],"NDC");
   pt23->SetBorderSize(0);
   pt23->SetTextColor(7);
   pt23->SetTextSize(0.75);
   pt23->SetFillColor(0);
   pt23->Draw();
   sprintf(label[23]," 420 V HV");
   TPaveLabel *pt24 = new TPaveLabel(0.78,0.65, 0.86,0.68,label[23],"NDC");
   pt24->SetBorderSize(0);
   pt24->SetTextColor(7);
   pt24->SetTextSize(0.75);
   pt24->SetFillColor(0);
   pt24->Draw();
   sprintf(label[24]," 400 V HV");
   TPaveLabel *pt25 = new TPaveLabel(0.78,0.62, 0.86,0.65,label[24],"NDC");
   pt25->SetBorderSize(0);
   pt25->SetTextColor(8);
   pt25->SetTextSize(0.75);
   pt25->SetFillColor(0);
   pt25->Draw();
   sprintf(label[25]," 390 V HV");
   TPaveLabel *pt26 = new TPaveLabel(0.78,0.59, 0.86,0.62,label[25],"NDC");
   pt26->SetBorderSize(0);
   pt26->SetTextColor(8);
   pt26->SetTextSize(0.75);
   pt26->SetFillColor(0);
   pt26->Draw();
   sprintf(label[26]," 380 V HV");
   TPaveLabel *pt27 = new TPaveLabel(0.78,0.56, 0.86,0.59,label[26],"NDC");
   pt27->SetBorderSize(0);
   pt27->SetTextColor(8);
   pt27->SetTextSize(0.75);
   pt27->SetFillColor(0);
   pt27->Draw();
   sprintf(label[27]," 370 V HV");
   TPaveLabel *pt28 = new TPaveLabel(0.78,0.53, 0.86,0.56,label[27],"NDC");
   pt28->SetBorderSize(0);
   pt28->SetTextColor(8);
   pt28->SetTextSize(0.75);
   pt28->SetFillColor(0);
   pt28->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./Chi2_vs_pre-Amp_Settings_6nA.png");
   c5->Print(plotname);

  TCanvas *c6 = new TCanvas("c6","non-linearity vs RelativeWidth of pedestal ",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,RelativeWidth,nonLin_positive,erX,erY);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("non-linearity vs RelativeWidth of pedestal");
   TExec *ex = new TExec("ex","PreAmp();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("RelativeWidth");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("non-linearity (%)");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   sprintf(label[0]," 770 V HV");
   TPaveLabel *pt1 = new TPaveLabel(0.65,0.86, 0.73,0.89,label[0],"NDC");
   pt1->SetBorderSize(0);
   pt1->SetTextColor(1);
   pt1->SetTextSize(0.75);
   pt1->SetFillColor(0);
   pt1->Draw();
   sprintf(label[1]," 750 V HV");
   TPaveLabel *pt2 = new TPaveLabel(0.65,0.83, 0.73,0.86,label[1],"NDC");
   pt2->SetBorderSize(0);
   pt2->SetTextColor(1);
   pt2->SetTextSize(0.75);
   pt2->SetFillColor(0);
   pt2->Draw();
   sprintf(label[2]," 735 V HV");
   TPaveLabel *pt3 = new TPaveLabel(0.65,0.80, 0.73,0.83,label[2],"NDC");
   pt3->SetBorderSize(0);
   pt3->SetTextColor(1);
   pt3->SetTextSize(0.75);
   pt3->SetFillColor(0);
   pt3->Draw();
   sprintf(label[3]," 720 V HV");
   TPaveLabel *pt4 = new TPaveLabel(0.65,0.77, 0.73,0.80,label[3],"NDC");
   pt4->SetBorderSize(0);
   pt4->SetTextColor(1);
   pt4->SetTextSize(0.75);
   pt4->SetFillColor(0);
   pt4->Draw();
   sprintf(label[4]," 635 V HV");
   TPaveLabel *pt5 = new TPaveLabel(0.65,0.74, 0.73,0.77,label[4],"NDC");
   pt5->SetBorderSize(0);
   pt5->SetTextColor(2);
   pt5->SetTextSize(0.75);
   pt5->SetFillColor(0);
   pt5->Draw();
   sprintf(label[5]," 620 V HV");
   TPaveLabel *pt6 = new TPaveLabel(0.65,0.71, 0.73,0.74,label[5],"NDC");
   pt6->SetBorderSize(0);
   pt6->SetTextColor(2);
   pt6->SetTextSize(0.75);
   pt6->SetFillColor(0);
   pt6->Draw();
   sprintf(label[6]," 600 V HV");
   TPaveLabel *pt7 = new TPaveLabel(0.65,0.68, 0.73,0.71,label[6],"NDC");
   pt7->SetBorderSize(0);
   pt7->SetTextColor(2);
   pt7->SetTextSize(0.75);
   pt7->SetFillColor(0);
   pt7->Draw();
   sprintf(label[7]," 590 V HV");
   TPaveLabel *pt8 = new TPaveLabel(0.65,0.65, 0.73,0.68,label[7],"NDC");
   pt8->SetBorderSize(0);
   pt8->SetTextColor(2);
   pt8->SetTextSize(0.75);
   pt8->SetFillColor(0);
   pt8->Draw();
   sprintf(label[8]," 580 V HV");
   TPaveLabel *pt9 = new TPaveLabel(0.65,0.62, 0.73,0.65,label[8],"NDC");
   pt9->SetBorderSize(0);
   pt9->SetTextColor(3);
   pt9->SetTextSize(0.75);
   pt9->SetFillColor(0);
   pt9->Draw();
   sprintf(label[9]," 560 V HV");
   TPaveLabel *pt10 = new TPaveLabel(0.65,0.59, 0.73,0.62,label[9],"NDC");
   pt10->SetBorderSize(0);
   pt10->SetTextColor(3);
   pt10->SetTextSize(0.75);
   pt10->SetFillColor(0);
   pt10->Draw();
   sprintf(label[10]," 545 V HV");
   TPaveLabel *pt11 = new TPaveLabel(0.65,0.56, 0.73,0.59,label[10],"NDC");
   pt11->SetBorderSize(0);
   pt11->SetTextColor(3);
   pt11->SetTextSize(0.75);
   pt11->SetFillColor(0);
   pt11->Draw();
   sprintf(label[11]," 530 V HV");
   TPaveLabel *pt12 = new TPaveLabel(0.65,0.53, 0.73,0.56,label[11],"NDC");
   pt12->SetBorderSize(0);
   pt12->SetTextColor(3);
   pt12->SetTextSize(0.75);
   pt12->SetFillColor(0);
   pt12->Draw();
   sprintf(label[12]," 560 V HV");
   TPaveLabel *pt13 = new TPaveLabel(0.65,0.50, 0.73,0.53,label[12],"NDC");
   pt13->SetBorderSize(0);
   pt13->SetTextColor(4);
   pt13->SetTextSize(0.75);
   pt13->SetFillColor(0);
   pt13->Draw();
   sprintf(label[13]," 545 V HV");
   TPaveLabel *pt14 = new TPaveLabel(0.65,0.47, 0.73,0.50,label[13],"NDC");
   pt14->SetBorderSize(0);
   pt14->SetTextColor(4);
   pt14->SetTextSize(0.75);
   pt14->SetFillColor(0);
   pt14->Draw();
   sprintf(label[14]," 530 V HV");
   TPaveLabel *pt15 = new TPaveLabel(0.65,0.44, 0.73,0.47,label[14],"NDC");
   pt15->SetBorderSize(0);
   pt15->SetTextColor(4);
   pt15->SetTextSize(0.75);
   pt15->SetFillColor(0);
   pt15->Draw();
   sprintf(label[15]," 520 V HV");
   TPaveLabel *pt16 = new TPaveLabel(0.65,0.41, 0.73,0.44,label[15],"NDC");
   pt16->SetBorderSize(0);
   pt16->SetTextColor(4);
   pt16->SetTextSize(0.75);
   pt16->SetFillColor(0);
   pt16->Draw();
   sprintf(label[16]," 515 V HV");
   TPaveLabel *pt17 = new TPaveLabel(0.78,0.86, 0.86,0.89,label[16],"NDC");
   pt17->SetBorderSize(0);
   pt17->SetTextColor(6);
   pt17->SetTextSize(0.75);
   pt17->SetFillColor(0);
   pt17->Draw();
   sprintf(label[17]," 500 V HV");
   TPaveLabel *pt18 = new TPaveLabel(0.78,0.83, 0.86,0.86,label[17],"NDC");
   pt18->SetBorderSize(0);
   pt18->SetTextColor(6);
   pt18->SetTextSize(0.75);
   pt18->SetFillColor(0);
   pt18->Draw();
   sprintf(label[18]," 485 V HV");
   TPaveLabel *pt19 = new TPaveLabel(0.78,0.80, 0.86,0.83,label[18],"NDC");
   pt19->SetBorderSize(0);
   pt19->SetTextColor(6);
   pt19->SetTextSize(0.75);
   pt19->SetFillColor(0);
   pt19->Draw();
   sprintf(label[19]," 470 V HV");
   TPaveLabel *pt20 = new TPaveLabel(0.78,0.77, 0.86,0.80,label[19],"NDC");
   pt20->SetBorderSize(0);
   pt20->SetTextColor(6);
   pt20->SetTextSize(0.75);
   pt20->SetFillColor(0);
   pt20->Draw();
   sprintf(label[20]," 450 V HV");
   TPaveLabel *pt21 = new TPaveLabel(0.78,0.74, 0.86,0.77,label[20],"NDC");
   pt21->SetBorderSize(0);
   pt21->SetTextColor(7);
   pt21->SetTextSize(0.75);
   pt21->SetFillColor(0);
   pt21->Draw();
   sprintf(label[21]," 440 V HV");
   TPaveLabel *pt22 = new TPaveLabel(0.78,0.71, 0.86,0.74,label[21],"NDC");
   pt22->SetBorderSize(0);
   pt22->SetTextColor(7);
   pt22->SetTextSize(0.75);
   pt22->SetFillColor(0);
   pt22->Draw();
   sprintf(label[22]," 430 V HV");
   TPaveLabel *pt23 = new TPaveLabel(0.78,0.68, 0.86,0.71,label[22],"NDC");
   pt23->SetBorderSize(0);
   pt23->SetTextColor(7);
   pt23->SetTextSize(0.75);
   pt23->SetFillColor(0);
   pt23->Draw();
   sprintf(label[23]," 420 V HV");
   TPaveLabel *pt24 = new TPaveLabel(0.78,0.65, 0.86,0.68,label[23],"NDC");
   pt24->SetBorderSize(0);
   pt24->SetTextColor(7);
   pt24->SetTextSize(0.75);
   pt24->SetFillColor(0);
   pt24->Draw();
   sprintf(label[24]," 400 V HV");
   TPaveLabel *pt25 = new TPaveLabel(0.78,0.62, 0.86,0.65,label[24],"NDC");
   pt25->SetBorderSize(0);
   pt25->SetTextColor(8);
   pt25->SetTextSize(0.75);
   pt25->SetFillColor(0);
   pt25->Draw();
   sprintf(label[25]," 390 V HV");
   TPaveLabel *pt26 = new TPaveLabel(0.78,0.59, 0.86,0.62,label[25],"NDC");
   pt26->SetBorderSize(0);
   pt26->SetTextColor(8);
   pt26->SetTextSize(0.75);
   pt26->SetFillColor(0);
   pt26->Draw();
   sprintf(label[26]," 380 V HV");
   TPaveLabel *pt27 = new TPaveLabel(0.78,0.56, 0.86,0.59,label[26],"NDC");
   pt27->SetBorderSize(0);
   pt27->SetTextColor(8);
   pt27->SetTextSize(0.75);
   pt27->SetFillColor(0);
   pt27->Draw();
   sprintf(label[27]," 370 V HV");
   TPaveLabel *pt28 = new TPaveLabel(0.78,0.53, 0.86,0.56,label[27],"NDC");
   pt28->SetBorderSize(0);
   pt28->SetTextColor(8);
   pt28->SetTextSize(0.75);
   pt28->SetFillColor(0);
   pt28->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./non-linearity_vs_RelativeWidth_6nA.png");
   c6->Print(plotname);

  TCanvas *c7 = new TCanvas("c7","non-linearity vs Navg",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,myNavg,nonLin_positive,erX,erY);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("non-linearity vs Navg");
   TExec *ex = new TExec("ex","PreAmp();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("Navg");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("non-linearity (%)");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gr->GetXaxis()->SetLimits(0,131072);
   gPad->Modified();

   sprintf(label[0],"+ 770 V, 0.1MOhm(SNS)");
   TPaveLabel *pt1 = new TPaveLabel(0.12,0.81, 0.26,0.84,label[0],"NDC");
   pt1->SetBorderSize(0);
   pt1->SetTextColor(1);
   pt1->SetTextSize(0.65);
   pt1->SetFillColor(0);
   pt1->Draw();
   sprintf(label[1],"* 750 V, 0.1MOhm(SNS)");
   TPaveLabel *pt2 = new TPaveLabel(0.12,0.78, 0.26,0.81,label[1],"NDC");
   pt2->SetBorderSize(0);
   pt2->SetTextColor(1);
   pt2->SetTextSize(0.65);
   pt2->SetFillColor(0);
   pt2->Draw();
   sprintf(label[2],"O 735 V, 0.1MOhm(SNS)");
   TPaveLabel *pt3 = new TPaveLabel(0.12,0.75, 0.26,0.78,label[2],"NDC");
   pt3->SetBorderSize(0);
   pt3->SetTextColor(1);
   pt3->SetTextSize(0.62);
   pt3->SetFillColor(0);
   pt3->Draw();
   sprintf(label[3],"X 720 V, 0.1MOhm(SNS)");
   TPaveLabel *pt4 = new TPaveLabel(0.12,0.72, 0.26,0.75,label[3],"NDC");
   pt4->SetBorderSize(0);
   pt4->SetTextColor(1);
   pt4->SetTextSize(0.65);
   pt4->SetFillColor(0);
   pt4->Draw();
   sprintf(label[4],"+ 635 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt5 = new TPaveLabel(0.12,0.69, 0.26,0.72,label[4],"NDC");
   pt5->SetBorderSize(0);
   pt5->SetTextColor(2);
   pt5->SetTextSize(0.65);
   pt5->SetFillColor(0);
   pt5->Draw();
   sprintf(label[5],"* 620 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt6 = new TPaveLabel(0.12,0.66, 0.26,0.69,label[5],"NDC");
   pt6->SetBorderSize(0);
   pt6->SetTextColor(2);
   pt6->SetTextSize(0.65);
   pt6->SetFillColor(0);
   pt6->Draw();
   sprintf(label[6],"O 600 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt7 = new TPaveLabel(0.12,0.63, 0.26,0.66,label[6],"NDC");
   pt7->SetBorderSize(0);
   pt7->SetTextColor(2);
   pt7->SetTextSize(0.65);
   pt7->SetFillColor(0);
   pt7->Draw();
   sprintf(label[7],"X 590 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt8 = new TPaveLabel(0.12,0.60, 0.26,0.63,label[7],"NDC");
   pt8->SetBorderSize(0);
   pt8->SetTextColor(2);
   pt8->SetTextSize(0.65);
   pt8->SetFillColor(0);
   pt8->Draw();
   sprintf(label[8],"+ 580 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt9 = new TPaveLabel(0.12,0.57, 0.26,0.60,label[8],"NDC");
   pt9->SetBorderSize(0);
   pt9->SetTextColor(3);
   pt9->SetTextSize(0.65);
   pt9->SetFillColor(0);
   pt9->Draw();
   sprintf(label[9],"* 560 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt10 = new TPaveLabel(0.12,0.54, 0.26,0.57,label[9],"NDC");
   pt10->SetBorderSize(0);
   pt10->SetTextColor(3);
   pt10->SetTextSize(0.65);
   pt10->SetFillColor(0);
   pt10->Draw();
   sprintf(label[10],"O 545 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt11 = new TPaveLabel(0.12,0.51, 0.26,0.54,label[10],"NDC");
   pt11->SetBorderSize(0);
   pt11->SetTextColor(3);
   pt11->SetTextSize(0.65);
   pt11->SetFillColor(0);
   pt11->Draw();
   sprintf(label[11],"X 530 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt12 = new TPaveLabel(0.12,0.48, 0.26,0.51,label[11],"NDC");
   pt12->SetBorderSize(0);
   pt12->SetTextColor(3);
   pt12->SetTextSize(0.65);
   pt12->SetFillColor(0);
   pt12->Draw();
   sprintf(label[12],"+ 560 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt13 = new TPaveLabel(0.12,0.45, 0.26,0.48,label[12],"NDC");
   pt13->SetBorderSize(0);
   pt13->SetTextColor(4);
   pt13->SetTextSize(0.65);
   pt13->SetFillColor(0);
   pt13->Draw();
   sprintf(label[13],"* 545 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt14 = new TPaveLabel(0.12,0.42, 0.26,0.45,label[13],"NDC");
   pt14->SetBorderSize(0);
   pt14->SetTextColor(4);
   pt14->SetTextSize(0.65);
   pt14->SetFillColor(0);
   pt14->Draw();
   sprintf(label[14],"O 530 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt15 = new TPaveLabel(0.12,0.39, 0.26,0.42,label[14],"NDC");
   pt15->SetBorderSize(0);
   pt15->SetTextColor(4);
   pt15->SetTextSize(0.65);
   pt15->SetFillColor(0);
   pt15->Draw();
   sprintf(label[15],"X 520 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt16 = new TPaveLabel(0.12,0.36, 0.26,0.39,label[15],"NDC");
   pt16->SetBorderSize(0);
   pt16->SetTextColor(4);
   pt16->SetTextSize(0.65);
   pt16->SetFillColor(0);
   pt16->Draw();
   sprintf(label[16],"+ 515 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt17 = new TPaveLabel(0.30,0.81, 0.41,0.84,label[16],"NDC");
   pt17->SetBorderSize(0);
   pt17->SetTextColor(6);
   pt17->SetTextSize(0.65);
   pt17->SetFillColor(0);
   pt17->Draw();
   sprintf(label[17],"* 500 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt18 = new TPaveLabel(0.30,0.78, 0.41,0.81,label[17],"NDC");
   pt18->SetBorderSize(0);
   pt18->SetTextColor(6);
   pt18->SetTextSize(0.65);
   pt18->SetFillColor(0);
   pt18->Draw();
   sprintf(label[18],"O 485 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt19 = new TPaveLabel(0.30,0.75, 0.41,0.78,label[18],"NDC");
   pt19->SetBorderSize(0);
   pt19->SetTextColor(6);
   pt19->SetTextSize(0.62);
   pt19->SetFillColor(0);
   pt19->Draw();
   sprintf(label[19],"X 470 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt20 = new TPaveLabel(0.30,0.72, 0.41,0.75,label[19],"NDC");
   pt20->SetBorderSize(0);
   pt20->SetTextColor(6);
   pt20->SetTextSize(0.65);
   pt20->SetFillColor(0);
   pt20->Draw();
   sprintf(label[20],"+ 450 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt21 = new TPaveLabel(0.30,0.69, 0.41,0.72,label[20],"NDC");
   pt21->SetBorderSize(0);
   pt21->SetTextColor(7);
   pt21->SetTextSize(0.65);
   pt21->SetFillColor(0);
   pt21->Draw();
   sprintf(label[21],"* 440 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt22 = new TPaveLabel(0.30,0.66, 0.41,0.69,label[21],"NDC");
   pt22->SetBorderSize(0);
   pt22->SetTextColor(7);
   pt22->SetTextSize(0.65);
   pt22->SetFillColor(0);
   pt22->Draw();
   sprintf(label[22],"O 430 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt23 = new TPaveLabel(0.30,0.63, 0.41,0.66,label[22],"NDC");
   pt23->SetBorderSize(0);
   pt23->SetTextColor(7);
   pt23->SetTextSize(0.65);
   pt23->SetFillColor(0);
   pt23->Draw();
   sprintf(label[23],"X 420 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt24 = new TPaveLabel(0.30,0.60, 0.41,0.63,label[23],"NDC");
   pt24->SetBorderSize(0);
   pt24->SetTextColor(7);
   pt24->SetTextSize(0.65);
   pt24->SetFillColor(0);
   pt24->Draw();
   sprintf(label[24],"+ 400 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt25 = new TPaveLabel(0.30,0.57, 0.41,0.60,label[24],"NDC");
   pt25->SetBorderSize(0);
   pt25->SetTextColor(8);
   pt25->SetTextSize(0.65);
   pt25->SetFillColor(0);
   pt25->Draw();
   sprintf(label[25],"* 390 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt26 = new TPaveLabel(0.30,0.54, 0.41,0.57,label[25],"NDC");
   pt26->SetBorderSize(0);
   pt26->SetTextColor(8);
   pt26->SetTextSize(0.65);
   pt26->SetFillColor(0);
   pt26->Draw();
   sprintf(label[26],"O 380 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt27 = new TPaveLabel(0.30,0.51, 0.41,0.54,label[26],"NDC");
   pt27->SetBorderSize(0);
   pt27->SetTextColor(8);
   pt27->SetTextSize(0.65);
   pt27->SetFillColor(0);
   pt27->Draw();
   sprintf(label[27],"X 370 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt28 = new TPaveLabel(0.30,0.48, 0.41,0.51,label[27],"NDC");
   pt28->SetBorderSize(0);
   pt28->SetTextColor(8);
   pt28->SetTextSize(0.65);
   pt28->SetFillColor(0);
   pt28->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./non-linearity_vs_Navg_6nA.png");
   c7->Print(plotname);

  TCanvas *c8 = new TCanvas("c8","non-linearity vs ADC Signal",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,Vout,nonLin_positive,erX,erY);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("non-linearity vs ADC Signal (V)");
   TExec *ex = new TExec("ex","PreAmp();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("ADC Signal (V)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("non-linearity (%)");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gr->GetXaxis()->SetLimits(0,10);
   gPad->Modified();

   sprintf(label[0],"+ 770 V, 0.1MOhm(SNS)");
   TPaveLabel *pt1 = new TPaveLabel(0.12,0.81, 0.26,0.84,label[0],"NDC");
   pt1->SetBorderSize(0);
   pt1->SetTextColor(1);
   pt1->SetTextSize(0.65);
   pt1->SetFillColor(0);
   pt1->Draw();
   sprintf(label[1],"* 750 V, 0.1MOhm(SNS)");
   TPaveLabel *pt2 = new TPaveLabel(0.12,0.78, 0.26,0.81,label[1],"NDC");
   pt2->SetBorderSize(0);
   pt2->SetTextColor(1);
   pt2->SetTextSize(0.65);
   pt2->SetFillColor(0);
   pt2->Draw();
   sprintf(label[2],"O 735 V, 0.1MOhm(SNS)");
   TPaveLabel *pt3 = new TPaveLabel(0.12,0.75, 0.26,0.78,label[2],"NDC");
   pt3->SetBorderSize(0);
   pt3->SetTextColor(1);
   pt3->SetTextSize(0.62);
   pt3->SetFillColor(0);
   pt3->Draw();
   sprintf(label[3],"X 720 V, 0.1MOhm(SNS)");
   TPaveLabel *pt4 = new TPaveLabel(0.12,0.72, 0.26,0.75,label[3],"NDC");
   pt4->SetBorderSize(0);
   pt4->SetTextColor(1);
   pt4->SetTextSize(0.65);
   pt4->SetFillColor(0);
   pt4->Draw();
   sprintf(label[4],"+ 635 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt5 = new TPaveLabel(0.12,0.69, 0.26,0.72,label[4],"NDC");
   pt5->SetBorderSize(0);
   pt5->SetTextColor(2);
   pt5->SetTextSize(0.65);
   pt5->SetFillColor(0);
   pt5->Draw();
   sprintf(label[5],"* 620 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt6 = new TPaveLabel(0.12,0.66, 0.26,0.69,label[5],"NDC");
   pt6->SetBorderSize(0);
   pt6->SetTextColor(2);
   pt6->SetTextSize(0.65);
   pt6->SetFillColor(0);
   pt6->Draw();
   sprintf(label[6],"O 600 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt7 = new TPaveLabel(0.12,0.63, 0.26,0.66,label[6],"NDC");
   pt7->SetBorderSize(0);
   pt7->SetTextColor(2);
   pt7->SetTextSize(0.65);
   pt7->SetFillColor(0);
   pt7->Draw();
   sprintf(label[7],"X 590 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt8 = new TPaveLabel(0.12,0.60, 0.26,0.63,label[7],"NDC");
   pt8->SetBorderSize(0);
   pt8->SetTextColor(2);
   pt8->SetTextSize(0.65);
   pt8->SetFillColor(0);
   pt8->Draw();
   sprintf(label[8],"+ 580 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt9 = new TPaveLabel(0.12,0.57, 0.26,0.60,label[8],"NDC");
   pt9->SetBorderSize(0);
   pt9->SetTextColor(3);
   pt9->SetTextSize(0.65);
   pt9->SetFillColor(0);
   pt9->Draw();
   sprintf(label[9],"* 560 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt10 = new TPaveLabel(0.12,0.54, 0.26,0.57,label[9],"NDC");
   pt10->SetBorderSize(0);
   pt10->SetTextColor(3);
   pt10->SetTextSize(0.65);
   pt10->SetFillColor(0);
   pt10->Draw();
   sprintf(label[10],"O 545 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt11 = new TPaveLabel(0.12,0.51, 0.26,0.54,label[10],"NDC");
   pt11->SetBorderSize(0);
   pt11->SetTextColor(3);
   pt11->SetTextSize(0.65);
   pt11->SetFillColor(0);
   pt11->Draw();
   sprintf(label[11],"X 530 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt12 = new TPaveLabel(0.12,0.48, 0.26,0.51,label[11],"NDC");
   pt12->SetBorderSize(0);
   pt12->SetTextColor(3);
   pt12->SetTextSize(0.65);
   pt12->SetFillColor(0);
   pt12->Draw();
   sprintf(label[12],"+ 560 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt13 = new TPaveLabel(0.12,0.45, 0.26,0.48,label[12],"NDC");
   pt13->SetBorderSize(0);
   pt13->SetTextColor(4);
   pt13->SetTextSize(0.65);
   pt13->SetFillColor(0);
   pt13->Draw();
   sprintf(label[13],"* 545 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt14 = new TPaveLabel(0.12,0.42, 0.26,0.45,label[13],"NDC");
   pt14->SetBorderSize(0);
   pt14->SetTextColor(4);
   pt14->SetTextSize(0.65);
   pt14->SetFillColor(0);
   pt14->Draw();
   sprintf(label[14],"O 530 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt15 = new TPaveLabel(0.12,0.39, 0.26,0.42,label[14],"NDC");
   pt15->SetBorderSize(0);
   pt15->SetTextColor(4);
   pt15->SetTextSize(0.65);
   pt15->SetFillColor(0);
   pt15->Draw();
   sprintf(label[15],"X 520 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt16 = new TPaveLabel(0.12,0.36, 0.26,0.39,label[15],"NDC");
   pt16->SetBorderSize(0);
   pt16->SetTextColor(4);
   pt16->SetTextSize(0.65);
   pt16->SetFillColor(0);
   pt16->Draw();
   sprintf(label[16],"+ 515 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt17 = new TPaveLabel(0.30,0.81, 0.41,0.84,label[16],"NDC");
   pt17->SetBorderSize(0);
   pt17->SetTextColor(6);
   pt17->SetTextSize(0.65);
   pt17->SetFillColor(0);
   pt17->Draw();
   sprintf(label[17],"* 500 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt18 = new TPaveLabel(0.30,0.78, 0.41,0.81,label[17],"NDC");
   pt18->SetBorderSize(0);
   pt18->SetTextColor(6);
   pt18->SetTextSize(0.65);
   pt18->SetFillColor(0);
   pt18->Draw();
   sprintf(label[18],"O 485 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt19 = new TPaveLabel(0.30,0.75, 0.41,0.78,label[18],"NDC");
   pt19->SetBorderSize(0);
   pt19->SetTextColor(6);
   pt19->SetTextSize(0.62);
   pt19->SetFillColor(0);
   pt19->Draw();
   sprintf(label[19],"X 470 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt20 = new TPaveLabel(0.30,0.72, 0.41,0.75,label[19],"NDC");
   pt20->SetBorderSize(0);
   pt20->SetTextColor(6);
   pt20->SetTextSize(0.65);
   pt20->SetFillColor(0);
   pt20->Draw();
   sprintf(label[20],"+ 450 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt21 = new TPaveLabel(0.30,0.69, 0.41,0.72,label[20],"NDC");
   pt21->SetBorderSize(0);
   pt21->SetTextColor(7);
   pt21->SetTextSize(0.65);
   pt21->SetFillColor(0);
   pt21->Draw();
   sprintf(label[21],"* 440 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt22 = new TPaveLabel(0.30,0.66, 0.41,0.69,label[21],"NDC");
   pt22->SetBorderSize(0);
   pt22->SetTextColor(7);
   pt22->SetTextSize(0.65);
   pt22->SetFillColor(0);
   pt22->Draw();
   sprintf(label[22],"O 430 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt23 = new TPaveLabel(0.30,0.63, 0.41,0.66,label[22],"NDC");
   pt23->SetBorderSize(0);
   pt23->SetTextColor(7);
   pt23->SetTextSize(0.65);
   pt23->SetFillColor(0);
   pt23->Draw();
   sprintf(label[23],"X 420 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt24 = new TPaveLabel(0.30,0.60, 0.41,0.63,label[23],"NDC");
   pt24->SetBorderSize(0);
   pt24->SetTextColor(7);
   pt24->SetTextSize(0.65);
   pt24->SetFillColor(0);
   pt24->Draw();
   sprintf(label[24],"+ 400 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt25 = new TPaveLabel(0.30,0.57, 0.41,0.60,label[24],"NDC");
   pt25->SetBorderSize(0);
   pt25->SetTextColor(8);
   pt25->SetTextSize(0.65);
   pt25->SetFillColor(0);
   pt25->Draw();
   sprintf(label[25],"* 390 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt26 = new TPaveLabel(0.30,0.54, 0.41,0.57,label[25],"NDC");
   pt26->SetBorderSize(0);
   pt26->SetTextColor(8);
   pt26->SetTextSize(0.65);
   pt26->SetFillColor(0);
   pt26->Draw();
   sprintf(label[26],"O 380 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt27 = new TPaveLabel(0.30,0.51, 0.41,0.54,label[26],"NDC");
   pt27->SetBorderSize(0);
   pt27->SetTextColor(8);
   pt27->SetTextSize(0.65);
   pt27->SetFillColor(0);
   pt27->Draw();
   sprintf(label[27],"X 370 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt28 = new TPaveLabel(0.30,0.48, 0.41,0.51,label[27],"NDC");
   pt28->SetBorderSize(0);
   pt28->SetTextColor(8);
   pt28->SetTextSize(0.65);
   pt28->SetFillColor(0);
   pt28->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./non-linearity_vs_ADC-Signal_6nA.png");
   c8->Print(plotname);

  TCanvas *c9 = new TCanvas("c9","non-linearity per volt vs ADC Signal",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,Vout,nonLinpV_positive);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("non-linearity per volt vs ADC Signal (V)");
   TExec *ex = new TExec("ex","PreAmp();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("ADC Signal (V)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("non-linearity per volt (%)");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gr->GetXaxis()->SetLimits(0,10);
   gPad->Modified();

   sprintf(label[0],"+ 770 V, 0.1MOhm(SNS)");
   TPaveLabel *pt1 = new TPaveLabel(0.12,0.81, 0.26,0.84,label[0],"NDC");
   pt1->SetBorderSize(0);
   pt1->SetTextColor(1);
   pt1->SetTextSize(0.65);
   pt1->SetFillColor(0);
   pt1->Draw();
   sprintf(label[1],"* 750 V, 0.1MOhm(SNS)");
   TPaveLabel *pt2 = new TPaveLabel(0.12,0.78, 0.26,0.81,label[1],"NDC");
   pt2->SetBorderSize(0);
   pt2->SetTextColor(1);
   pt2->SetTextSize(0.65);
   pt2->SetFillColor(0);
   pt2->Draw();
   sprintf(label[2],"O 735 V, 0.1MOhm(SNS)");
   TPaveLabel *pt3 = new TPaveLabel(0.12,0.75, 0.26,0.78,label[2],"NDC");
   pt3->SetBorderSize(0);
   pt3->SetTextColor(1);
   pt3->SetTextSize(0.62);
   pt3->SetFillColor(0);
   pt3->Draw();
   sprintf(label[3],"X 720 V, 0.1MOhm(SNS)");
   TPaveLabel *pt4 = new TPaveLabel(0.12,0.72, 0.26,0.75,label[3],"NDC");
   pt4->SetBorderSize(0);
   pt4->SetTextColor(1);
   pt4->SetTextSize(0.65);
   pt4->SetFillColor(0);
   pt4->Draw();
   sprintf(label[4],"+ 635 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt5 = new TPaveLabel(0.12,0.69, 0.26,0.72,label[4],"NDC");
   pt5->SetBorderSize(0);
   pt5->SetTextColor(2);
   pt5->SetTextSize(0.65);
   pt5->SetFillColor(0);
   pt5->Draw();
   sprintf(label[5],"* 620 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt6 = new TPaveLabel(0.12,0.66, 0.26,0.69,label[5],"NDC");
   pt6->SetBorderSize(0);
   pt6->SetTextColor(2);
   pt6->SetTextSize(0.65);
   pt6->SetFillColor(0);
   pt6->Draw();
   sprintf(label[6],"O 600 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt7 = new TPaveLabel(0.12,0.63, 0.26,0.66,label[6],"NDC");
   pt7->SetBorderSize(0);
   pt7->SetTextColor(2);
   pt7->SetTextSize(0.65);
   pt7->SetFillColor(0);
   pt7->Draw();
   sprintf(label[7],"X 590 V, 0.3MOhm(KDPA)");
   TPaveLabel *pt8 = new TPaveLabel(0.12,0.60, 0.26,0.63,label[7],"NDC");
   pt8->SetBorderSize(0);
   pt8->SetTextColor(2);
   pt8->SetTextSize(0.65);
   pt8->SetFillColor(0);
   pt8->Draw();
   sprintf(label[8],"+ 580 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt9 = new TPaveLabel(0.12,0.57, 0.26,0.60,label[8],"NDC");
   pt9->SetBorderSize(0);
   pt9->SetTextColor(3);
   pt9->SetTextSize(0.65);
   pt9->SetFillColor(0);
   pt9->Draw();
   sprintf(label[9],"* 560 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt10 = new TPaveLabel(0.12,0.54, 0.26,0.57,label[9],"NDC");
   pt10->SetBorderSize(0);
   pt10->SetTextColor(3);
   pt10->SetTextSize(0.65);
   pt10->SetFillColor(0);
   pt10->Draw();
   sprintf(label[10],"O 545 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt11 = new TPaveLabel(0.12,0.51, 0.26,0.54,label[10],"NDC");
   pt11->SetBorderSize(0);
   pt11->SetTextColor(3);
   pt11->SetTextSize(0.65);
   pt11->SetFillColor(0);
   pt11->Draw();
   sprintf(label[11],"X 530 V, 0.5MOhm(LUMI)");
   TPaveLabel *pt12 = new TPaveLabel(0.12,0.48, 0.26,0.51,label[11],"NDC");
   pt12->SetBorderSize(0);
   pt12->SetTextColor(3);
   pt12->SetTextSize(0.65);
   pt12->SetFillColor(0);
   pt12->Draw();
   sprintf(label[12],"+ 560 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt13 = new TPaveLabel(0.12,0.45, 0.26,0.48,label[12],"NDC");
   pt13->SetBorderSize(0);
   pt13->SetTextColor(4);
   pt13->SetTextSize(0.65);
   pt13->SetFillColor(0);
   pt13->Draw();
   sprintf(label[13],"* 545 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt14 = new TPaveLabel(0.12,0.42, 0.26,0.45,label[13],"NDC");
   pt14->SetBorderSize(0);
   pt14->SetTextColor(4);
   pt14->SetTextSize(0.65);
   pt14->SetFillColor(0);
   pt14->Draw();
   sprintf(label[14],"O 530 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt15 = new TPaveLabel(0.12,0.39, 0.26,0.42,label[14],"NDC");
   pt15->SetBorderSize(0);
   pt15->SetTextColor(4);
   pt15->SetTextSize(0.65);
   pt15->SetFillColor(0);
   pt15->Draw();
   sprintf(label[15],"X 520 V, 0.6MOhm(KDPA)");
   TPaveLabel *pt16 = new TPaveLabel(0.12,0.36, 0.26,0.39,label[15],"NDC");
   pt16->SetBorderSize(0);
   pt16->SetTextColor(4);
   pt16->SetTextSize(0.65);
   pt16->SetFillColor(0);
   pt16->Draw();
   sprintf(label[16],"+ 515 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt17 = new TPaveLabel(0.30,0.81, 0.41,0.84,label[16],"NDC");
   pt17->SetBorderSize(0);
   pt17->SetTextColor(6);
   pt17->SetTextSize(0.65);
   pt17->SetFillColor(0);
   pt17->Draw();
   sprintf(label[17],"* 500 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt18 = new TPaveLabel(0.30,0.78, 0.41,0.81,label[17],"NDC");
   pt18->SetBorderSize(0);
   pt18->SetTextColor(6);
   pt18->SetTextSize(0.65);
   pt18->SetFillColor(0);
   pt18->Draw();
   sprintf(label[18],"O 485 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt19 = new TPaveLabel(0.30,0.75, 0.41,0.78,label[18],"NDC");
   pt19->SetBorderSize(0);
   pt19->SetTextColor(6);
   pt19->SetTextSize(0.62);
   pt19->SetFillColor(0);
   pt19->Draw();
   sprintf(label[19],"X 470 V, 1.0MOhm(LUMI)");
   TPaveLabel *pt20 = new TPaveLabel(0.30,0.72, 0.41,0.75,label[19],"NDC");
   pt20->SetBorderSize(0);
   pt20->SetTextColor(6);
   pt20->SetTextSize(0.65);
   pt20->SetFillColor(0);
   pt20->Draw();
   sprintf(label[20],"+ 450 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt21 = new TPaveLabel(0.30,0.69, 0.41,0.72,label[20],"NDC");
   pt21->SetBorderSize(0);
   pt21->SetTextColor(7);
   pt21->SetTextSize(0.65);
   pt21->SetFillColor(0);
   pt21->Draw();
   sprintf(label[21],"* 440 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt22 = new TPaveLabel(0.30,0.66, 0.41,0.69,label[21],"NDC");
   pt22->SetBorderSize(0);
   pt22->SetTextColor(7);
   pt22->SetTextSize(0.65);
   pt22->SetFillColor(0);
   pt22->Draw();
   sprintf(label[22],"O 430 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt23 = new TPaveLabel(0.30,0.63, 0.41,0.66,label[22],"NDC");
   pt23->SetBorderSize(0);
   pt23->SetTextColor(7);
   pt23->SetTextSize(0.65);
   pt23->SetFillColor(0);
   pt23->Draw();
   sprintf(label[23],"X 420 V, 2.0MOhm(MAIN)");
   TPaveLabel *pt24 = new TPaveLabel(0.30,0.60, 0.41,0.63,label[23],"NDC");
   pt24->SetBorderSize(0);
   pt24->SetTextColor(7);
   pt24->SetTextSize(0.65);
   pt24->SetFillColor(0);
   pt24->Draw();
   sprintf(label[24],"+ 400 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt25 = new TPaveLabel(0.30,0.57, 0.41,0.60,label[24],"NDC");
   pt25->SetBorderSize(0);
   pt25->SetTextColor(8);
   pt25->SetTextSize(0.65);
   pt25->SetFillColor(0);
   pt25->Draw();
   sprintf(label[25],"* 390 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt26 = new TPaveLabel(0.30,0.54, 0.41,0.57,label[25],"NDC");
   pt26->SetBorderSize(0);
   pt26->SetTextColor(8);
   pt26->SetTextSize(0.65);
   pt26->SetFillColor(0);
   pt26->Draw();
   sprintf(label[26],"O 380 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt27 = new TPaveLabel(0.30,0.51, 0.41,0.54,label[26],"NDC");
   pt27->SetBorderSize(0);
   pt27->SetTextColor(8);
   pt27->SetTextSize(0.65);
   pt27->SetFillColor(0);
   pt27->Draw();
   sprintf(label[27],"X 370 V, 4.0MOhm(MAIN)");
   TPaveLabel *pt28 = new TPaveLabel(0.30,0.48, 0.41,0.51,label[27],"NDC");
   pt28->SetBorderSize(0);
   pt28->SetTextColor(8);
   pt28->SetTextSize(0.65);
   pt28->SetFillColor(0);
   pt28->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./non-linearity_per_volt_vs_ADC-Signal_6nA.png");
   c9->Print(plotname);

  TCanvas *c10 = new TCanvas("c10","non-Linearity per volt vs HV",0,0,700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,HV_positive, nonLinpV_positive);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("non-linearity per volt vs HV");
   TExec *ex = new TExec("ex","HVoltage();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("HV (V)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("nonLinearity per volt (%)");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   sprintf(labelA,"0.1 MOhm (SNS) pre-Amp");
   TPaveLabel *ptA = new TPaveLabel(0.65,0.85, 0.84,0.89,labelA,"NDC");
   ptA->SetBorderSize(0);
   ptA->SetTextColor(1);
   ptA->SetTextSize(0.75);
   ptA->SetFillColor(0);
   ptA->Draw();
   sprintf(labelB,"0.3 MOhm (KDPA) pre-Amp");
   TPaveLabel *ptB = new TPaveLabel(0.65,0.81, 0.84,0.85,labelB,"NDC");
   ptB->SetBorderSize(0);
   ptB->SetTextColor(2);
   ptB->SetTextSize(0.75);
   ptB->SetFillColor(0);
   ptB->Draw();
   sprintf(labelC,"0.5 MOhm (LUMI) pre-Amp");
   TPaveLabel *ptC = new TPaveLabel(0.65,0.77, 0.84,0.81,labelC,"NDC");
   ptC->SetBorderSize(0);
   ptC->SetTextColor(3);
   ptC->SetTextSize(0.75);
   ptC->SetFillColor(0);
   ptC->Draw();
   sprintf(labelD,"0.6 MOhm (KDPA) pre-Amp");
   TPaveLabel *ptD = new TPaveLabel(0.65,0.73, 0.84,0.77,labelD,"NDC");
   ptD->SetBorderSize(0);
   ptD->SetTextColor(4);
   ptD->SetTextSize(0.75);
   ptD->SetFillColor(0);
   ptD->Draw();
   sprintf(labelE,"1.0 MOhm (LUMI) pre-Amp");
   TPaveLabel *ptE = new TPaveLabel(0.65,0.69, 0.84,0.73,labelE,"NDC");
   ptE->SetBorderSize(0);
   ptE->SetTextColor(6);
   ptE->SetTextSize(0.75);
   ptE->SetFillColor(0);
   ptE->Draw();
   sprintf(labelF,"2.0 MOhm (MAIN) pre-Amp");
   TPaveLabel *ptF = new TPaveLabel(0.65,0.65, 0.84,0.69,labelF,"NDC");
   ptF->SetBorderSize(0);
   ptF->SetTextColor(7);
   ptF->SetTextSize(0.75);
   ptF->SetFillColor(0);
   ptF->Draw();
   sprintf(labelG,"4.0 MOhm (MAIN) pre-Amp");
   TPaveLabel *ptG = new TPaveLabel(0.65,0.61, 0.84,0.65,labelG,"NDC");
   ptG->SetBorderSize(0);
   ptG->SetTextColor(8);
   ptG->SetTextSize(0.75);
   ptG->SetFillColor(0);
   ptG->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./nonLinearity_per_volt_vs_HV_6nA.png");
   c10->Print(plotname);

   TCanvas *c11 = new TCanvas("c11","nonLinearity per volt vs pre-Amp Settings",700,500);
  gPad->SetLogy(0);
  gPad->SetLogx(0);
  gStyle->SetOptStat(kFALSE);

  sprintf(graphname1,"");

   TGraphErrors *gr = new TGraphErrors(points,myPreAmp, nonLinpV_positive);
   gr->SetLineColor(kCyan+3);
   gr->SetMarkerSize(0.75);
   gr->SetTitle("non-linearity per volt vs pre-Amp Settings");
   TExec *ex = new TExec("ex","PreAmp();");
   gr->GetListOfFunctions()->Add(ex);
   gr->Draw("AP");
   gr->GetXaxis()->SetTitle("pre-Amp (MOhm)");
   gr->GetXaxis()->SetTitleColor(1);
   gr->GetYaxis()->SetTitle("nonLinearity per volt (%)");
   gr->GetXaxis()->CenterTitle();
   gr->GetYaxis()->CenterTitle();
   gr->GetYaxis()->SetTitleOffset(1.4);
   gPad->Modified();

   sprintf(label[0]," 770 V HV");
   TPaveLabel *pt1 = new TPaveLabel(0.65,0.86, 0.73,0.89,label[0],"NDC");
   pt1->SetBorderSize(0);
   pt1->SetTextColor(1);
   pt1->SetTextSize(0.75);
   pt1->SetFillColor(0);
   pt1->Draw();
   sprintf(label[1]," 750 V HV");
   TPaveLabel *pt2 = new TPaveLabel(0.65,0.83, 0.73,0.86,label[1],"NDC");
   pt2->SetBorderSize(0);
   pt2->SetTextColor(1);
   pt2->SetTextSize(0.75);
   pt2->SetFillColor(0);
   pt2->Draw();
   sprintf(label[2]," 735 V HV");
   TPaveLabel *pt3 = new TPaveLabel(0.65,0.80, 0.73,0.83,label[2],"NDC");
   pt3->SetBorderSize(0);
   pt3->SetTextColor(1);
   pt3->SetTextSize(0.75);
   pt3->SetFillColor(0);
   pt3->Draw();
   sprintf(label[3]," 720 V HV");
   TPaveLabel *pt4 = new TPaveLabel(0.65,0.77, 0.73,0.80,label[3],"NDC");
   pt4->SetBorderSize(0);
   pt4->SetTextColor(1);
   pt4->SetTextSize(0.75);
   pt4->SetFillColor(0);
   pt4->Draw();
   sprintf(label[4]," 635 V HV");
   TPaveLabel *pt5 = new TPaveLabel(0.65,0.74, 0.73,0.77,label[4],"NDC");
   pt5->SetBorderSize(0);
   pt5->SetTextColor(2);
   pt5->SetTextSize(0.75);
   pt5->SetFillColor(0);
   pt5->Draw();
   sprintf(label[5]," 620 V HV");
   TPaveLabel *pt6 = new TPaveLabel(0.65,0.71, 0.73,0.74,label[5],"NDC");
   pt6->SetBorderSize(0);
   pt6->SetTextColor(2);
   pt6->SetTextSize(0.75);
   pt6->SetFillColor(0);
   pt6->Draw();
   sprintf(label[6]," 600 V HV");
   TPaveLabel *pt7 = new TPaveLabel(0.65,0.68, 0.73,0.71,label[6],"NDC");
   pt7->SetBorderSize(0);
   pt7->SetTextColor(2);
   pt7->SetTextSize(0.75);
   pt7->SetFillColor(0);
   pt7->Draw();
   sprintf(label[7]," 590 V HV");
   TPaveLabel *pt8 = new TPaveLabel(0.65,0.65, 0.73,0.68,label[7],"NDC");
   pt8->SetBorderSize(0);
   pt8->SetTextColor(2);
   pt8->SetTextSize(0.75);
   pt8->SetFillColor(0);
   pt8->Draw();
   sprintf(label[8]," 580 V HV");
   TPaveLabel *pt9 = new TPaveLabel(0.65,0.62, 0.73,0.65,label[8],"NDC");
   pt9->SetBorderSize(0);
   pt9->SetTextColor(3);
   pt9->SetTextSize(0.75);
   pt9->SetFillColor(0);
   pt9->Draw();
   sprintf(label[9]," 560 V HV");
   TPaveLabel *pt10 = new TPaveLabel(0.65,0.59, 0.73,0.62,label[9],"NDC");
   pt10->SetBorderSize(0);
   pt10->SetTextColor(3);
   pt10->SetTextSize(0.75);
   pt10->SetFillColor(0);
   pt10->Draw();
   sprintf(label[10]," 545 V HV");
   TPaveLabel *pt11 = new TPaveLabel(0.65,0.56, 0.73,0.59,label[10],"NDC");
   pt11->SetBorderSize(0);
   pt11->SetTextColor(3);
   pt11->SetTextSize(0.75);
   pt11->SetFillColor(0);
   pt11->Draw();
   sprintf(label[11]," 530 V HV");
   TPaveLabel *pt12 = new TPaveLabel(0.65,0.53, 0.73,0.56,label[11],"NDC");
   pt12->SetBorderSize(0);
   pt12->SetTextColor(3);
   pt12->SetTextSize(0.75);
   pt12->SetFillColor(0);
   pt12->Draw();
   sprintf(label[12]," 560 V HV");
   TPaveLabel *pt13 = new TPaveLabel(0.65,0.50, 0.73,0.53,label[12],"NDC");
   pt13->SetBorderSize(0);
   pt13->SetTextColor(4);
   pt13->SetTextSize(0.75);
   pt13->SetFillColor(0);
   pt13->Draw();
   sprintf(label[13]," 545 V HV");
   TPaveLabel *pt14 = new TPaveLabel(0.65,0.47, 0.73,0.50,label[13],"NDC");
   pt14->SetBorderSize(0);
   pt14->SetTextColor(4);
   pt14->SetTextSize(0.75);
   pt14->SetFillColor(0);
   pt14->Draw();
   sprintf(label[14]," 530 V HV");
   TPaveLabel *pt15 = new TPaveLabel(0.65,0.44, 0.73,0.47,label[14],"NDC");
   pt15->SetBorderSize(0);
   pt15->SetTextColor(4);
   pt15->SetTextSize(0.75);
   pt15->SetFillColor(0);
   pt15->Draw();
   sprintf(label[15]," 520 V HV");
   TPaveLabel *pt16 = new TPaveLabel(0.65,0.41, 0.73,0.44,label[15],"NDC");
   pt16->SetBorderSize(0);
   pt16->SetTextColor(4);
   pt16->SetTextSize(0.75);
   pt16->SetFillColor(0);
   pt16->Draw();
   sprintf(label[16]," 515 V HV");
   TPaveLabel *pt17 = new TPaveLabel(0.78,0.86, 0.86,0.89,label[16],"NDC");
   pt17->SetBorderSize(0);
   pt17->SetTextColor(6);
   pt17->SetTextSize(0.75);
   pt17->SetFillColor(0);
   pt17->Draw();
   sprintf(label[17]," 500 V HV");
   TPaveLabel *pt18 = new TPaveLabel(0.78,0.83, 0.86,0.86,label[17],"NDC");
   pt18->SetBorderSize(0);
   pt18->SetTextColor(6);
   pt18->SetTextSize(0.75);
   pt18->SetFillColor(0);
   pt18->Draw();
   sprintf(label[18]," 485 V HV");
   TPaveLabel *pt19 = new TPaveLabel(0.78,0.80, 0.86,0.83,label[18],"NDC");
   pt19->SetBorderSize(0);
   pt19->SetTextColor(6);
   pt19->SetTextSize(0.75);
   pt19->SetFillColor(0);
   pt19->Draw();
   sprintf(label[19]," 470 V HV");
   TPaveLabel *pt20 = new TPaveLabel(0.78,0.77, 0.86,0.80,label[19],"NDC");
   pt20->SetBorderSize(0);
   pt20->SetTextColor(6);
   pt20->SetTextSize(0.75);
   pt20->SetFillColor(0);
   pt20->Draw();
   sprintf(label[20]," 450 V HV");
   TPaveLabel *pt21 = new TPaveLabel(0.78,0.74, 0.86,0.77,label[20],"NDC");
   pt21->SetBorderSize(0);
   pt21->SetTextColor(7);
   pt21->SetTextSize(0.75);
   pt21->SetFillColor(0);
   pt21->Draw();
   sprintf(label[21]," 440 V HV");
   TPaveLabel *pt22 = new TPaveLabel(0.78,0.71, 0.86,0.74,label[21],"NDC");
   pt22->SetBorderSize(0);
   pt22->SetTextColor(7);
   pt22->SetTextSize(0.75);
   pt22->SetFillColor(0);
   pt22->Draw();
   sprintf(label[22]," 430 V HV");
   TPaveLabel *pt23 = new TPaveLabel(0.78,0.68, 0.86,0.71,label[22],"NDC");
   pt23->SetBorderSize(0);
   pt23->SetTextColor(7);
   pt23->SetTextSize(0.75);
   pt23->SetFillColor(0);
   pt23->Draw();
   sprintf(label[23]," 420 V HV");
   TPaveLabel *pt24 = new TPaveLabel(0.78,0.65, 0.86,0.68,label[23],"NDC");
   pt24->SetBorderSize(0);
   pt24->SetTextColor(7);
   pt24->SetTextSize(0.75);
   pt24->SetFillColor(0);
   pt24->Draw();
   sprintf(label[24]," 400 V HV");
   TPaveLabel *pt25 = new TPaveLabel(0.78,0.62, 0.86,0.65,label[24],"NDC");
   pt25->SetBorderSize(0);
   pt25->SetTextColor(8);
   pt25->SetTextSize(0.75);
   pt25->SetFillColor(0);
   pt25->Draw();
   sprintf(label[25]," 390 V HV");
   TPaveLabel *pt26 = new TPaveLabel(0.78,0.59, 0.86,0.62,label[25],"NDC");
   pt26->SetBorderSize(0);
   pt26->SetTextColor(8);
   pt26->SetTextSize(0.75);
   pt26->SetFillColor(0);
   pt26->Draw();
   sprintf(label[26]," 380 V HV");
   TPaveLabel *pt27 = new TPaveLabel(0.78,0.56, 0.86,0.59,label[26],"NDC");
   pt27->SetBorderSize(0);
   pt27->SetTextColor(8);
   pt27->SetTextSize(0.75);
   pt27->SetFillColor(0);
   pt27->Draw();
   sprintf(label[27]," 370 V HV");
   TPaveLabel *pt28 = new TPaveLabel(0.78,0.53, 0.86,0.56,label[27],"NDC");
   pt28->SetBorderSize(0);
   pt28->SetTextColor(8);
   pt28->SetTextSize(0.75);
   pt28->SetFillColor(0);
   pt28->Draw();

   char flip[256];
   sprintf(flip,"LED flash rate: 120 Hz , with LL: 6 nA");
   TPaveLabel *pt_ff = new TPaveLabel(0.20,0.85,0.50,0.89,flip,"NDC");
   pt_ff->SetBorderSize(0);
   pt_ff->SetTextColor(kBlack);
   pt_ff->SetTextSize(0.80);
   pt_ff->SetFillColor(0);
   pt_ff->Draw();

   char plotname[256];
   sprintf(plotname,"./nonLinearity_per_volt_vs_pre-Amp_Settings_6nA.png");
   c11->Print(plotname);
	}

void HVoltage(){
   Int_t i,points,j;
   Double_t x,y;

   TGraph *g = (TGraph*)gPad->GetListOfPrimitives()->FindObject("Graph");
   points = g->GetN();
   TMarker *m;

	for (i=0; i<points; i++) {
     g->GetPoint(i,x,y);
	m = new TMarker(x,y,29);
	if(i>=0 && i<=3){
	m->SetMarkerColor(1);
	}else if(i>=4 && i<=7){
	m->SetMarkerColor(2);
	}else if(i>=8 && i<=11){
	m->SetMarkerColor(3);
	}else if(i>=12 && i<=15){
	m->SetMarkerColor(4);
	}else if (i>=16 && i<=19){
	m->SetMarkerColor(6);
	}else if(i>=20 && i<=23){
	m->SetMarkerColor(7);	
	}else{
	m->SetMarkerColor(8);
	}
     m->Paint();
	}
	}

void PreAmp(){
   Int_t i,points,j;
   Double_t x,y;

   TGraph *g1 = (TGraph*)gPad->GetListOfPrimitives()->FindObject("Graph");
   points = g1->GetN();
   TMarker *m1;

	for (i=0; i<points; i++) {
     g1->GetPoint(i,x,y);
	if(i==0){
	m1 = new TMarker(x,y,34);
	m1->SetMarkerColor(1);
	}else if(i==1){
	m1 = new TMarker(x,y,29);
	m1->SetMarkerColor(1);
	}else if(i==2){
	m1 = new TMarker(x,y,4);
	m1->SetMarkerColor(1);
	}else if(i==3){
	m1 = new TMarker(x,y,5);
	m1->SetMarkerColor(1);
	}else if(i==4){
	m1 = new TMarker(x,y,34);
	m1->SetMarkerColor(2);
	}else if(i==5){
	m1 = new TMarker(x,y,29);
	m1->SetMarkerColor(2);
	}else if(i==6){
	m1 = new TMarker(x,y,4);
	m1->SetMarkerColor(2);
	}else if(i==7){
	m1 = new TMarker(x,y,5);
	m1->SetMarkerColor(2);
	}else if(i==8){
	m1 = new TMarker(x,y,34);
	m1->SetMarkerColor(3);
	}else if(i==9){
	m1 = new TMarker(x,y,29);
	m1->SetMarkerColor(3);
	}else if(i==10){
	m1 = new TMarker(x,y,4);
	m1->SetMarkerColor(3);
	}else if(i==11){
	m1 = new TMarker(x,y,5);
	m1->SetMarkerColor(3);
	}else if(i==12){
	m1 = new TMarker(x,y,34);
	m1->SetMarkerColor(4);
	}else if(i==13){
	m1 = new TMarker(x,y,29);
	m1->SetMarkerColor(4);
	}else if(i==14){
	m1 = new TMarker(x,y,4);
	m1->SetMarkerColor(4);
	}else if(i==15){
	m1 = new TMarker(x,y,5);
	m1->SetMarkerColor(4);
	}else if (i==16){
	m1 = new TMarker(x,y,34);
	m1->SetMarkerColor(6);
	}else if (i==17){
	m1 = new TMarker(x,y,29);
	m1->SetMarkerColor(6);
	}else if (i==18){
	m1 = new TMarker(x,y,4);
	m1->SetMarkerColor(6);
	}else if (i==19){
	m1 = new TMarker(x,y,5);
	m1->SetMarkerColor(6);
	}else if(i==20){
	m1 = new TMarker(x,y,34);
	m1->SetMarkerColor(7);	
	}else if(i==21){
	m1 = new TMarker(x,y,29);
	m1->SetMarkerColor(7);	
	}else if(i==22){
	m1 = new TMarker(x,y,4);
	m1->SetMarkerColor(7);	
	}else if(i==23){
	m1 = new TMarker(x,y,5);
	m1->SetMarkerColor(7);	
	}else if(i==24){
	m1 = new TMarker(x,y,34);
	m1->SetMarkerColor(8);
	}else if(i==25){
	m1 = new TMarker(x,y,29);
	m1->SetMarkerColor(8);
	}else if(i==26){
	m1 = new TMarker(x,y,4);
	m1->SetMarkerColor(8);
	}else if (i==27){
	m1 = new TMarker(x,y,5);
	m1->SetMarkerColor(8);
	}
     m1->Paint();
	}
	}