ROOT logo
// contact: Ilya Selyuzhenkov (ilya.selyuzhenkov@gmail.com)
//
// Macro to reproduce Fig. 3 of the directed flow paper http://arxiv.org/abs/1306.4145
//
#include "STAR_v1_PRL_v101_i25_e252301_y2008.C"

float myMarkerSize=1.5;
const int xRes=600, yRes=800;
float mainFont = 20;
const int nSystOpt = 4;
float rangeYa = 0.99e-3;
float scale62=0.12;
float scale200=0.37;

TGraphErrors *v1_even_cen_stat_05_80;
TGraphErrors *v1_even_cen_syst_05_80;
TGraphErrors *v1_odd_cen_stat_05_80;
TGraphErrors *v1_odd_cen_syst_05_80;

void Figure3(bool rWrite = false,TString dataFileName="ALICE_v1_arxiv_1306_4145.root")
{
  TGaxis::SetMaxDigits(3);
  myOptions();
  gROOT->ForceStyle();
  directedFlow_2008_STARdataCentrality(0.01*scale200, 0.01*scale62);
  
  float minPad[3]={0,0.36,0.665};
  TCanvas *myCan = new TCanvas("myCan","Figure 3",xRes,yRes);
  myCan->cd();
  TPad *myPad1 = new TPad("myPad1","myPad1",0.,minPad[2],1,1);
  myPadSetUp(myPad1,0.08, 0.09, 0.01, 0.00);
  TPad *myPad2 = new TPad("myPad2","myPad2",0.,minPad[1],1,minPad[2]);
  myPadSetUp(myPad2,0.08, 0.0, 0.01, 0.0);
  TPad *myPad3 = new TPad("myPad3","myPad3",0.,minPad[0],1,minPad[1]);
  myPadSetUp(myPad3,0.08, 0.00, 0.01, 0.16);
  myPad1->Draw();
  myPad2->Draw();
  myPad3->Draw();
  
  TH1F *myBlankHisto1 = new TH1F("myBlankHisto1","Blank Histogram",10,0,82);
  myHistoSetUp(myBlankHisto1,"centrality (%)","v_{1}",-rangeYa,rangeYa*0.25, 1, 2, 115, 305);
  TH1F *myBlankHisto2 = new TH1F("myBlankHisto2","Blank Histogram",10,0,82);
  myHistoSetUp(myBlankHisto2,"centrality (%)","#LTp_{x}#GT/#LTp_{T}#GT",-rangeYa,rangeYa*0.25, 1, 2, 115, 305);
  TH1F *myBlankHisto3 = new TH1F("myBlankHisto3","Blank Histogram",0,0,82);
  myHistoSetUp(myBlankHisto3,"centrality (%)","v_{1}",-rangeYa,rangeYa*0.25, 1, 2, 115, 305);
  
  // get graphs
  TFile *dataFile = TFile::Open(dataFileName,"READ");
  
  v1_even_cen_stat_05_80 = (TGraphErrors*)dataFile->Get("v1_even_cen_stat_05_80");
  v1_even_cen_syst_05_80 = (TGraphErrors*)dataFile->Get("v1_even_cen_syst_05_80");
  v1_odd_cen_stat_05_80 = (TGraphErrors*)dataFile->Get("v1_odd_cen_stat_05_80");
  v1_odd_cen_syst_05_80 = (TGraphErrors*)dataFile->Get("v1_odd_cen_syst_05_80");
  px_even_cen_stat_05_80 = (TGraphErrors*)dataFile->Get("px_even_cen_stat_05_80");
  px_even_cen_syst_05_80 = (TGraphErrors*)dataFile->Get("px_even_cen_syst_05_80");
  px_odd_cen_stat_05_80 = (TGraphErrors*)dataFile->Get("px_odd_cen_stat_05_80");
  px_odd_cen_syst_05_80 = (TGraphErrors*)dataFile->Get("px_odd_cen_syst_05_80");
  
  // setup graphs
  int SystlineWidth =6;
  int colorStat = kBlue; int colorSyst = colorStat-10;
  myTGraphSetUp(v1_even_cen_syst_05_80,kOpenCircle,colorSyst,0,1,colorSyst,SystlineWidth,1001,colorSyst);
  myTGraphSetUp(v1_even_cen_stat_05_80,kOpenCircle,colorStat,myMarkerSize,1,colorStat,2,1001,colorStat);
  
  colorStat = kMagenta+2; colorSyst = colorStat-10;
  myTGraphSetUp(v1_odd_cen_syst_05_80,kFullDiamond,colorSyst,0,1,colorSyst,SystlineWidth,1001,colorSyst);
  myTGraphSetUp(v1_odd_cen_stat_05_80,kFullDiamond,colorStat,1.7*myMarkerSize,1,colorStat,2,1001,colorStat);
  
  colorStat = kBlue; colorSyst = colorStat-10;
  myTGraphSetUp(px_even_cen_syst_05_80,kOpenSquare,colorSyst,0,1,colorSyst,SystlineWidth,1001,colorSyst);
  myTGraphSetUp(px_even_cen_stat_05_80,kOpenSquare,colorStat,myMarkerSize,1,colorStat,2,1001,colorStat);
  
  colorStat = kMagenta+2; colorSyst = colorStat-10;
  myTGraphSetUp(px_odd_cen_syst_05_80,kFullSquare,colorSyst,0,1,colorSyst,SystlineWidth,1001,colorSyst);
  myTGraphSetUp(px_odd_cen_stat_05_80,kFullSquare,colorStat,myMarkerSize,1,colorStat,2,1001,colorStat);
  
  myTGraphSetUp(v1_star_AuAu200_cent,kOpenCross,kGreen+2,myMarkerSize,1,kGreen+2,2,1001,kGreen+2);
  myTGraphSetUp(v1_star_AuAu62_cent,kOpenStar,kBlue+2,myMarkerSize*1.3,1,kBlue+2,2,1001,kBlue+2);  
  
  
  TGraphErrors *v1_odd_cen_syst_05_80_clone=(TGraphErrors*)v1_odd_cen_syst_05_80->Clone("v1_odd_cen_syst_05_80_clone"); v1_odd_cen_syst_05_80_clone->SetLineWidth(1);
  TGraphErrors *v1_even_cen_syst_05_80_clone=(TGraphErrors*)v1_even_cen_syst_05_80->Clone("v1_even_cen_syst_05_80_clone"); v1_even_cen_syst_05_80_clone->SetLineWidth(1);
  
  TLegend *myLegend1SysA = new TLegend(0.11,0.09,0.47,0.2);
  myLegendSetUp(myLegend1SysA,mainFont);
  myLegend1SysA->AddEntry(v1_odd_cen_syst_05_80_clone," ","F");
  TLegend *myLegend1a = new TLegend(0.11,0.09,0.47,0.2);
  myLegendSetUp(myLegend1a,mainFont);
  myLegend1a->AddEntry(v1_odd_cen_stat_05_80," ","P");
  
  TLegend *myLegend1b = new TLegend(0.215,0.09,0.575,0.2);
  myLegendSetUp(myLegend1b,mainFont);
  myLegend1b->AddEntry(v1_even_cen_stat_05_80," ","P");
  TLegend *myLegend1SysB = new TLegend(0.215,0.09,0.575,0.2);
  myLegendSetUp(myLegend1SysB,mainFont);
  myLegend1SysB->AddEntry(v1_even_cen_syst_05_80_clone," v_{1}","F");
  
  TGraphErrors *px_odd_cen_syst_05_80_clone=(TGraphErrors*)px_odd_cen_syst_05_80->Clone("px_odd_cen_syst_05_80_clone"); px_odd_cen_syst_05_80_clone->SetLineWidth(1);
  TGraphErrors *px_even_cen_syst_05_80_clone=(TGraphErrors*)px_even_cen_syst_05_80->Clone("px_even_cen_syst_05_80_clone"); px_even_cen_syst_05_80_clone->SetLineWidth(1);
  
  TLegend *myLegend1pTSysA = new TLegend(0.11,0.09,0.47,0.2);
  myLegendSetUp(myLegend1pTSysA,mainFont);
  myLegend1pTSysA->AddEntry(px_odd_cen_syst_05_80_clone," ","F");
  TLegend *myLegend1pTa = new TLegend(0.11,0.09,0.47,0.2);
  myLegendSetUp(myLegend1pTa,mainFont);
  myLegend1pTa->AddEntry(px_odd_cen_stat_05_80," ","P");
  
  TLegend *myLegend1pTb = new TLegend(0.215,0.09,0.575,0.2);
  myLegendSetUp(myLegend1pTb,mainFont);
  myLegend1pTb->AddEntry(px_even_cen_stat_05_80," ","P");
  TLegend *myLegend1pTSysB = new TLegend(0.215,0.09,0.575,0.2);
  myLegendSetUp(myLegend1pTSysB,mainFont);
  myLegend1pTSysB->AddEntry(px_even_cen_syst_05_80_clone," #LTp_{x}#GT/#LTp_{T}#GT","F");
  
  TLegend *myLegend3 = new TLegend(0.11,0.2,0.47,0.38);
  myLegendSetUp(myLegend3,mainFont);
  myLegend3->AddEntry(v1_star_AuAu200_cent," #times 0.37  Au-Au@200GeV","P");
  myLegend3->AddEntry(v1_star_AuAu62_cent," #times 0.12  Au-Au@62GeV","P");
  
  // pad1
  myPad1->cd();  
  myBlankHisto1->Draw();
  
  TLatex *myText = new TLatex();
  myText->SetNDC();
  myText->SetTextSize(mainFont);
  myText->SetTextColor(1);
  myText->DrawLatex(0.1,0.81,"ALICE Pb-Pb@2.76TeV  |#eta|<0.8 p_{T}>0.15 GeV/c");
  myText->DrawLatex(0.13,0.21,"odd     even");
  myText->SetTextSize(mainFont*1.5);
  myText->DrawLatex(0.93,0.81,"(a)");
  
  myLegend1SysA->Draw();
  myLegend1SysB->Draw();
  myLegend1a->Draw();
  myLegend1b->Draw();
  
  float shift =-1.2;
  ShiftAlongXaxis(v1_even_cen_syst_05_80, shift);
  ShiftAlongXaxis(v1_even_cen_stat_05_80, shift);
  ShiftAlongXaxis(px_even_cen_syst_05_80, shift);
  ShiftAlongXaxis(px_even_cen_stat_05_80, shift);
  
  v1_even_cen_syst_05_80->Draw("P,eZ");  
  v1_odd_cen_syst_05_80->Draw("eZ");  
  v1_even_cen_stat_05_80->Draw("P,eZ");
  v1_odd_cen_stat_05_80->Draw("P,eZ");
  
  // pad2
  myPad2->cd();
  myBlankHisto2->Draw();
  
  TLatex *myText2 = new TLatex();
  myText2->SetNDC();
  myText2->SetTextColor(1);
  myText2->SetTextSize(mainFont);
  myText2->DrawLatex(0.13,0.21,"odd     even");
  myText2->SetTextSize(mainFont*1.5);
  myText2->DrawLatex(0.93,0.88,"(b)");
  
  myLegend1pTSysA->Draw();
  myLegend1pTSysB->Draw();
  myLegend1pTa->Draw();
  myLegend1pTb->Draw();
  
  px_even_cen_syst_05_80->Draw("P,eZ");
  px_odd_cen_syst_05_80->Draw("P,eZ");
  px_even_cen_stat_05_80->Draw("P,eZ");
  px_odd_cen_stat_05_80->Draw("P,eZ");
  
  // pad3
  myPad3->cd();
  myBlankHisto3->Draw();
  
  TLatex *myText3 = new TLatex();
  myText3->SetNDC();
  myText3->SetTextColor(1);
  myText3->SetTextSize(mainFont*1.5);
  myText3->DrawLatex(0.93,0.9,"(c)");
  myText->SetTextSize(mainFont);
  myText->DrawLatex(0.11,0.4,"STAR (scaled) |#eta|<1.3");
  
  myLegend3->Draw();
  
  ShiftAlongXaxis(v1_star_AuAu62_cent, -1.5);
  ShiftAlongXaxis(v1_star_AuAu200_cent, 1.5);
  
  v1_star_AuAu62_cent->GetXaxis()->SetLimits(10,80);
  v1_odd_cen_syst_05_80->Draw("eZ");
  v1_star_AuAu62_cent->Draw("P,eZ");
  v1_star_AuAu200_cent->Draw("P,eZ");
  v1_odd_cen_stat_05_80->Draw("P,eZ");
  
  // save output if option rWrite=true
  TString fileName="Figure3";
  myCan->Update();
  if (rWrite)  
  {
    myCan->SaveAs(fileName+".png");
    myCan->SaveAs(fileName+".eps");
    myCan->SaveAs(fileName+".pdf");
  }
}

// only helper functions below

void myHistoSetUp
(
  TH1F *hist=0, TString xTitle="xTitle", TString yTitle="yTitle", float minY=-1, float maxY=1, int lineColor=1, int lineStyle=2,
 int nDivisionsX=305,int nDivisionsY=305
)
{
  hist->GetXaxis()->SetTitle(xTitle);
  hist->GetYaxis()->SetTitle(yTitle);
  hist->SetMinimum(minY);
  hist->SetMaximum(maxY);
  hist->SetLineColor(lineColor);
  hist->SetLineStyle(lineStyle);
  hist->SetNdivisions(nDivisionsX,"x");
  hist->SetNdivisions(nDivisionsY,"y");
  return;
}


void myLegendSetUp(TLegend *currentLegend=0,float currentTextSize=0.07){
  currentLegend->SetBorderSize(0);
  currentLegend->SetFillStyle(0);
  currentLegend->SetFillColor(0);
  currentLegend->SetMargin(0.25);
  currentLegend->SetTextSize(currentTextSize);
  currentLegend->SetEntrySeparation(0.5);
  return;
}

void myPadSetUp(TPad *currentPad, float currentLeft=0.11, float currentTop=0.04, float currentRight=0.04, float currentBottom=0.15){
  currentPad->SetLeftMargin(currentLeft);
  currentPad->SetTopMargin(currentTop);
  currentPad->SetRightMargin(currentRight);
  currentPad->SetBottomMargin(currentBottom);
  return;
}

void myGraphSetUp(TGraphErrors *currentGraph=0, Float_t currentMarkerSize = 1.0,
		  int currentMarkerStyle=20, int currentMarkerColor=0,
		  int currentLineStyle=1, int currentLineColor=0)
{
  currentGraph->SetMarkerSize(currentMarkerSize);
  currentGraph->SetMarkerStyle(currentMarkerStyle);
  currentGraph->SetMarkerColor(currentMarkerColor);
  currentGraph->SetLineStyle(currentLineStyle);
  currentGraph->SetLineColor(currentLineColor);
  return;
}

void myOptions(Int_t lStat=0){
  int font = 43;
  gStyle->SetFrameBorderMode(0);
  gStyle->SetFrameFillColor(0);
  gStyle->SetCanvasBorderMode(0);
  gStyle->SetPadBorderMode(0);
  gStyle->SetPadColor(10);
  gStyle->SetCanvasColor(10);
  gStyle->SetTitleFillColor(10);
  gStyle->SetTitleBorderSize(1);
  gStyle->SetStatColor(10);
  gStyle->SetStatBorderSize(1);
  gStyle->SetLegendBorderSize(1);
  //
  gStyle->SetDrawBorder(0);
  gStyle->SetTextFont(font);
  gStyle->SetStatFont(font);
  gStyle->SetLegendFont(font);
  gStyle->SetStatFontSize(20);
  gStyle->SetStatX(0.97);
  gStyle->SetStatY(0.98);
  gStyle->SetStatH(0.03);
  gStyle->SetStatW(0.3);
  gStyle->SetTickLength(0.02,"y");
  gStyle->SetEndErrorSize(3);
  gStyle->SetLabelSize(20,"xyz");
  gStyle->SetLabelFont(font,"xyz"); 
  gStyle->SetLabelOffset(0.01,"xyz");
  gStyle->SetTitleFont(font,"xyz");
  gStyle->SetTitleOffset(1.2,"y");  
  gStyle->SetTitleOffset(3,"xz");  
  gStyle->SetTitleSize(21,"x");  
  gStyle->SetTitleSize(24,"y");  
  gStyle->SetMarkerSize(1); 
  gStyle->SetPalette(1,0); 
  
  if (lStat){
    gStyle->SetOptTitle(1);
    gStyle->SetOptStat(1111);
    gStyle->SetOptFit(1111);
  }
  else {
    gStyle->SetOptTitle(0);
    gStyle->SetOptStat(0);
    gStyle->SetOptFit(0);
  }
}

TGraphErrors* makeGraphH1(TH1* hist, TString name="")
{
  name.ReplaceAll(" ","");
  Int_t nbins = hist->GetNbinsX();
  Double_t* x = new Double_t[nbins];
  Double_t* y = new Double_t[nbins];
  Double_t* xerr = new Double_t[nbins]; 
  Double_t* yerr = new Double_t[nbins];
  Int_t n=0;
  for (Int_t i=0; i<nbins; i++)
  {
    x[n] = hist->GetXaxis()->GetBinCenter(i+1);
    y[n] = hist->GetBinContent(i+1);
    xerr[n] = 0.0;
    yerr[n] = hist->GetBinError(i+1);
    n++;
  }
  TGraphErrors* gr = new TGraphErrors(n,x,y,xerr,yerr);
  delete [] x;
  delete [] y;
  delete [] xerr;
  delete [] yerr;
  return gr;
}

TGraphErrors* makeGraphPr(TProfile* hist, TString name="")
{
  name.ReplaceAll(" ","");
  Int_t nbins = hist->GetNbinsX();
  Double_t* x = new Double_t[nbins];
  Double_t* y = new Double_t[nbins];
  Double_t* xerr = new Double_t[nbins]; 
  Double_t* yerr = new Double_t[nbins];
  Int_t n=0;
  for (Int_t i=0; i<nbins; i++)
  {
    x[n] = hist->GetXaxis()->GetBinCenter(i+1);
    y[n] = hist->GetBinContent(i+1);
    xerr[n] = 0.0;
    yerr[n] = hist->GetBinError(i+1);
    n++;
  }
  TGraphErrors* gr = new TGraphErrors(n,x,y,xerr,yerr);
  delete [] x;
  delete [] y;
  delete [] xerr;
  delete [] yerr;
  return gr;
}

void ShiftAlongXaxis(TGraphErrors *ge, Double_t shift)
{
  if(!ge)
  {
    printf("\n WARNING: ge is NULL in ShiftAlongXaxis() !!!! \n\n");
    return;
  }
  Int_t nPoints = ge->GetN();
  Double_t x = 0.;
  Double_t y = 0.;
  for(Int_t p=0;p<nPoints;p++)
  {
    ge->GetPoint(p,x,y);
    x+=shift;
    ge->SetPoint(p,x,y);
  }
}

void myTGraphSetUp
(
  TGraphErrors *currentGraph=0,
 int myMarkerStyle=8,
 int myMarkerColor=1,
 float myMarkerSize=1,
 int myLineStyle=1,
 int myLineColor=1,
 float myLineWidth=1,
 int myFillStyle =1001,
 int myFillColor =1 
)
{
  currentGraph->SetMarkerStyle(myMarkerStyle);
  currentGraph->SetMarkerColor(myMarkerColor);
  currentGraph->SetMarkerSize(myMarkerSize);
  currentGraph->SetLineColor(myLineColor);
  currentGraph->SetLineStyle(myLineStyle);
  currentGraph->SetLineWidth(myLineWidth);
  currentGraph->SetFillStyle(myFillStyle);
  currentGraph->SetFillColor(myFillColor);
}
 Figure3.C:1
 Figure3.C:2
 Figure3.C:3
 Figure3.C:4
 Figure3.C:5
 Figure3.C:6
 Figure3.C:7
 Figure3.C:8
 Figure3.C:9
 Figure3.C:10
 Figure3.C:11
 Figure3.C:12
 Figure3.C:13
 Figure3.C:14
 Figure3.C:15
 Figure3.C:16
 Figure3.C:17
 Figure3.C:18
 Figure3.C:19
 Figure3.C:20
 Figure3.C:21
 Figure3.C:22
 Figure3.C:23
 Figure3.C:24
 Figure3.C:25
 Figure3.C:26
 Figure3.C:27
 Figure3.C:28
 Figure3.C:29
 Figure3.C:30
 Figure3.C:31
 Figure3.C:32
 Figure3.C:33
 Figure3.C:34
 Figure3.C:35
 Figure3.C:36
 Figure3.C:37
 Figure3.C:38
 Figure3.C:39
 Figure3.C:40
 Figure3.C:41
 Figure3.C:42
 Figure3.C:43
 Figure3.C:44
 Figure3.C:45
 Figure3.C:46
 Figure3.C:47
 Figure3.C:48
 Figure3.C:49
 Figure3.C:50
 Figure3.C:51
 Figure3.C:52
 Figure3.C:53
 Figure3.C:54
 Figure3.C:55
 Figure3.C:56
 Figure3.C:57
 Figure3.C:58
 Figure3.C:59
 Figure3.C:60
 Figure3.C:61
 Figure3.C:62
 Figure3.C:63
 Figure3.C:64
 Figure3.C:65
 Figure3.C:66
 Figure3.C:67
 Figure3.C:68
 Figure3.C:69
 Figure3.C:70
 Figure3.C:71
 Figure3.C:72
 Figure3.C:73
 Figure3.C:74
 Figure3.C:75
 Figure3.C:76
 Figure3.C:77
 Figure3.C:78
 Figure3.C:79
 Figure3.C:80
 Figure3.C:81
 Figure3.C:82
 Figure3.C:83
 Figure3.C:84
 Figure3.C:85
 Figure3.C:86
 Figure3.C:87
 Figure3.C:88
 Figure3.C:89
 Figure3.C:90
 Figure3.C:91
 Figure3.C:92
 Figure3.C:93
 Figure3.C:94
 Figure3.C:95
 Figure3.C:96
 Figure3.C:97
 Figure3.C:98
 Figure3.C:99
 Figure3.C:100
 Figure3.C:101
 Figure3.C:102
 Figure3.C:103
 Figure3.C:104
 Figure3.C:105
 Figure3.C:106
 Figure3.C:107
 Figure3.C:108
 Figure3.C:109
 Figure3.C:110
 Figure3.C:111
 Figure3.C:112
 Figure3.C:113
 Figure3.C:114
 Figure3.C:115
 Figure3.C:116
 Figure3.C:117
 Figure3.C:118
 Figure3.C:119
 Figure3.C:120
 Figure3.C:121
 Figure3.C:122
 Figure3.C:123
 Figure3.C:124
 Figure3.C:125
 Figure3.C:126
 Figure3.C:127
 Figure3.C:128
 Figure3.C:129
 Figure3.C:130
 Figure3.C:131
 Figure3.C:132
 Figure3.C:133
 Figure3.C:134
 Figure3.C:135
 Figure3.C:136
 Figure3.C:137
 Figure3.C:138
 Figure3.C:139
 Figure3.C:140
 Figure3.C:141
 Figure3.C:142
 Figure3.C:143
 Figure3.C:144
 Figure3.C:145
 Figure3.C:146
 Figure3.C:147
 Figure3.C:148
 Figure3.C:149
 Figure3.C:150
 Figure3.C:151
 Figure3.C:152
 Figure3.C:153
 Figure3.C:154
 Figure3.C:155
 Figure3.C:156
 Figure3.C:157
 Figure3.C:158
 Figure3.C:159
 Figure3.C:160
 Figure3.C:161
 Figure3.C:162
 Figure3.C:163
 Figure3.C:164
 Figure3.C:165
 Figure3.C:166
 Figure3.C:167
 Figure3.C:168
 Figure3.C:169
 Figure3.C:170
 Figure3.C:171
 Figure3.C:172
 Figure3.C:173
 Figure3.C:174
 Figure3.C:175
 Figure3.C:176
 Figure3.C:177
 Figure3.C:178
 Figure3.C:179
 Figure3.C:180
 Figure3.C:181
 Figure3.C:182
 Figure3.C:183
 Figure3.C:184
 Figure3.C:185
 Figure3.C:186
 Figure3.C:187
 Figure3.C:188
 Figure3.C:189
 Figure3.C:190
 Figure3.C:191
 Figure3.C:192
 Figure3.C:193
 Figure3.C:194
 Figure3.C:195
 Figure3.C:196
 Figure3.C:197
 Figure3.C:198
 Figure3.C:199
 Figure3.C:200
 Figure3.C:201
 Figure3.C:202
 Figure3.C:203
 Figure3.C:204
 Figure3.C:205
 Figure3.C:206
 Figure3.C:207
 Figure3.C:208
 Figure3.C:209
 Figure3.C:210
 Figure3.C:211
 Figure3.C:212
 Figure3.C:213
 Figure3.C:214
 Figure3.C:215
 Figure3.C:216
 Figure3.C:217
 Figure3.C:218
 Figure3.C:219
 Figure3.C:220
 Figure3.C:221
 Figure3.C:222
 Figure3.C:223
 Figure3.C:224
 Figure3.C:225
 Figure3.C:226
 Figure3.C:227
 Figure3.C:228
 Figure3.C:229
 Figure3.C:230
 Figure3.C:231
 Figure3.C:232
 Figure3.C:233
 Figure3.C:234
 Figure3.C:235
 Figure3.C:236
 Figure3.C:237
 Figure3.C:238
 Figure3.C:239
 Figure3.C:240
 Figure3.C:241
 Figure3.C:242
 Figure3.C:243
 Figure3.C:244
 Figure3.C:245
 Figure3.C:246
 Figure3.C:247
 Figure3.C:248
 Figure3.C:249
 Figure3.C:250
 Figure3.C:251
 Figure3.C:252
 Figure3.C:253
 Figure3.C:254
 Figure3.C:255
 Figure3.C:256
 Figure3.C:257
 Figure3.C:258
 Figure3.C:259
 Figure3.C:260
 Figure3.C:261
 Figure3.C:262
 Figure3.C:263
 Figure3.C:264
 Figure3.C:265
 Figure3.C:266
 Figure3.C:267
 Figure3.C:268
 Figure3.C:269
 Figure3.C:270
 Figure3.C:271
 Figure3.C:272
 Figure3.C:273
 Figure3.C:274
 Figure3.C:275
 Figure3.C:276
 Figure3.C:277
 Figure3.C:278
 Figure3.C:279
 Figure3.C:280
 Figure3.C:281
 Figure3.C:282
 Figure3.C:283
 Figure3.C:284
 Figure3.C:285
 Figure3.C:286
 Figure3.C:287
 Figure3.C:288
 Figure3.C:289
 Figure3.C:290
 Figure3.C:291
 Figure3.C:292
 Figure3.C:293
 Figure3.C:294
 Figure3.C:295
 Figure3.C:296
 Figure3.C:297
 Figure3.C:298
 Figure3.C:299
 Figure3.C:300
 Figure3.C:301
 Figure3.C:302
 Figure3.C:303
 Figure3.C:304
 Figure3.C:305
 Figure3.C:306
 Figure3.C:307
 Figure3.C:308
 Figure3.C:309
 Figure3.C:310
 Figure3.C:311
 Figure3.C:312
 Figure3.C:313
 Figure3.C:314
 Figure3.C:315
 Figure3.C:316
 Figure3.C:317
 Figure3.C:318
 Figure3.C:319
 Figure3.C:320
 Figure3.C:321
 Figure3.C:322
 Figure3.C:323
 Figure3.C:324
 Figure3.C:325
 Figure3.C:326
 Figure3.C:327
 Figure3.C:328
 Figure3.C:329
 Figure3.C:330
 Figure3.C:331
 Figure3.C:332
 Figure3.C:333
 Figure3.C:334
 Figure3.C:335
 Figure3.C:336
 Figure3.C:337
 Figure3.C:338
 Figure3.C:339
 Figure3.C:340
 Figure3.C:341
 Figure3.C:342
 Figure3.C:343
 Figure3.C:344
 Figure3.C:345
 Figure3.C:346
 Figure3.C:347
 Figure3.C:348
 Figure3.C:349
 Figure3.C:350
 Figure3.C:351
 Figure3.C:352
 Figure3.C:353
 Figure3.C:354
 Figure3.C:355
 Figure3.C:356
 Figure3.C:357
 Figure3.C:358
 Figure3.C:359
 Figure3.C:360
 Figure3.C:361
 Figure3.C:362
 Figure3.C:363
 Figure3.C:364
 Figure3.C:365
 Figure3.C:366
 Figure3.C:367
 Figure3.C:368
 Figure3.C:369
 Figure3.C:370
 Figure3.C:371
 Figure3.C:372
 Figure3.C:373
 Figure3.C:374
 Figure3.C:375
 Figure3.C:376
 Figure3.C:377
 Figure3.C:378
 Figure3.C:379
 Figure3.C:380
 Figure3.C:381
 Figure3.C:382
 Figure3.C:383
 Figure3.C:384
 Figure3.C:385
 Figure3.C:386
 Figure3.C:387
 Figure3.C:388
 Figure3.C:389
 Figure3.C:390
 Figure3.C:391
 Figure3.C:392
 Figure3.C:393