@@ -246,6 +246,8 @@ struct nucleiInJets {
246246 jetHist.get <TH1>(HIST (" hNEventsInc" ))->GetXaxis ()->SetBinLabel (2 , " Sel8" );
247247 jetHist.get <TH1>(HIST (" hNEventsInc" ))->GetXaxis ()->SetBinLabel (3 , " |Vz|<10" );
248248
249+ jetHist.add (" hNEventsIncVsCent" , " hNEventsIncVsCent" , {HistType::kTH2D , {{4 , 0 .f , 4 .f }, {CentAxis}}});
250+
249251 // TPC nSigma vs pT (inclusive)
250252 jetHist.add <TH3>(" tracksInc/proton/h3PtVsProtonNSigmaTPCVsPt" , " pT(p) vs NSigmaTPC (p) vs centrality; #it{p}_{T} (GeV/#it{c}); NSigmaTPC; centrality" , HistType::kTH3F , {PtAxis, {200 , -10 , 10 }, CentAxis});
251253 jetHist.add <TH3>(" tracksInc/antiProton/h3PtVsantiProtonNSigmaTPCVsPt" , " pT(#bar{p}) vs NSigmaTPC (#bar{p}) vs centrality; #it{p}_{T} (GeV/#it{c}); NSigmaTPC; centrality" , HistType::kTH3F , {PtAxis, {200 , -10 , 10 }, CentAxis});
@@ -415,18 +417,18 @@ struct nucleiInJets {
415417
416418 if (cEnableProtonQA) {
417419 jetHist.add <TH2>(" tracks/proton/dca/after/hDCAxyVsPtProton" , " DCAxy vs Pt (p)" , HistType::kTH2F , {{dcaxyAxis}, {PtAxis}});
418- jetHist.add <TH2 >(" tracksInc/proton/dca/after/hDCAxyVsPtProton" , " DCAxy vs Pt (p)" , HistType::kTH2F , {{dcaxyAxis}, {PtAxis}});
420+ jetHist.add <TH3 >(" tracksInc/proton/dca/after/hDCAxyVsPtProton" , " DCAxy vs Pt (p)" , HistType::kTH3F , {{dcaxyAxis}, {PtAxis}, {CentAxis }});
419421 jetHist.add <TH2>(" tracks/antiProton/dca/after/hDCAxyVsPtantiProton" , " DCAxy vs Pt (#bar{p})" , HistType::kTH2F , {{dcaxyAxis}, {PtAxis}});
420422 jetHist.add <TH2>(" tracks/proton/dca/after/hDCAzVsPtProton" , " DCAz vs Pt (p)" , HistType::kTH2F , {{dcazAxis}, {PtAxis}});
421- jetHist.add <TH2 >(" tracksInc/proton/dca/after/hDCAzVsPtProton" , " DCAz vs Pt (p)" , HistType::kTH2F , {{dcazAxis}, {PtAxis}});
423+ jetHist.add <TH3 >(" tracksInc/proton/dca/after/hDCAzVsPtProton" , " DCAz vs Pt (p)" , HistType::kTH3F , {{dcazAxis}, {PtAxis}, {CentAxis }});
422424 jetHist.add <TH2>(" tracks/antiProton/dca/after/hDCAzVsPtantiProton" , " DCAz vs Pt (#bar{p})" , HistType::kTH2F , {{dcazAxis}, {PtAxis}});
423425 }
424426 if (cEnableDeuteronQA) {
425427 jetHist.add <TH2>(" tracks/deuteron/dca/after/hDCAxyVsPtDeuteron" , " DCAxy vs Pt (d)" , HistType::kTH2F , {{dcaxyAxis}, {PtAxis}});
426- jetHist.add <TH2 >(" tracksInc/deuteron/dca/after/hDCAxyVsPtDeuteron" , " DCAxy vs Pt (d)" , HistType::kTH2F , {{dcaxyAxis}, {PtAxis}});
428+ jetHist.add <TH3 >(" tracksInc/deuteron/dca/after/hDCAxyVsPtDeuteron" , " DCAxy vs Pt (d)" , HistType::kTH3F , {{dcaxyAxis}, {PtAxis}, {CentAxis }});
427429 jetHist.add <TH2>(" tracks/antiDeuteron/dca/after/hDCAxyVsPtantiDeuteron" , " DCAxy vs Pt (#bar{d})" , HistType::kTH2F , {{dcaxyAxis}, {PtAxis}});
428430 jetHist.add <TH2>(" tracks/deuteron/dca/after/hDCAzVsPtDeuteron" , " DCAz vs Pt (d)" , HistType::kTH2F , {{dcazAxis}, {PtAxis}});
429- jetHist.add <TH2 >(" tracksInc/deuteron/dca/after/hDCAzVsPtDeuteron" , " DCAz vs Pt (d)" , HistType::kTH2F , {{dcazAxis}, {PtAxis}});
431+ jetHist.add <TH3 >(" tracksInc/deuteron/dca/after/hDCAzVsPtDeuteron" , " DCAz vs Pt (d)" , HistType::kTH3F , {{dcazAxis}, {PtAxis}, {CentAxis }});
430432 jetHist.add <TH2>(" tracks/antiDeuteron/dca/after/hDCAzVsPtantiDeuteron" , " DCAz vs Pt (#bar{d})" , HistType::kTH2F , {{dcazAxis}, {PtAxis}});
431433 }
432434 if (cEnableTritonQA) {
@@ -463,20 +465,20 @@ struct nucleiInJets {
463465 jetHist.add <TH2>(" tracks/helium/h2TOFmass2HeliumVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}t; TOFmass2; #it{p}_{T}/z (GeV)" , HistType::kTH2F , {{massHeAxis}, {ptZHeAxis}});
464466 jetHist.add <TH2>(" tracks/antiHelium/h2TOFmass2antiHeliumVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T}/z (GeV)" , HistType::kTH2F , {{massHeAxis}, {ptZHeAxis}});
465467
466- jetHist.add <TH2 >(" tracksInc/proton/h2TOFmassProtonVsPt" , " h2TOFmassProtonVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH2F , {{80 , 0.4 , 4 .}, {50 , 0 ., 5 .}});
467- jetHist.add <TH2 >(" tracksInc/antiProton/h2TOFmassantiProtonVsPt" , " h2TOFmassantiProtonVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH2F , {{80 , 0.4 , 4 .}, {50 , 0 ., 5 .}});
468- jetHist.add <TH2 >(" tracksInc/deuteron/h2TOFmassDeuteronVsPt" , " h2TOFmassDeuteronVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH2F , {{80 , 0.4 , 4 .}, {50 , 0 ., 5 .}});
469- jetHist.add <TH2 >(" tracksInc/antiDeuteron/h2TOFmassantiDeuteronVsPt" , " h2TOFmassantiDeuteronVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH2F , {{80 , 0.4 , 4 .}, {50 , 0 ., 5 .}});
468+ jetHist.add <TH3 >(" tracksInc/proton/h2TOFmassProtonVsPt" , " h2TOFmassProtonVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH3F , {{80 , 0.4 , 4 .}, {50 , 0 ., 5 .}, {CentAxis }});
469+ jetHist.add <TH3 >(" tracksInc/antiProton/h2TOFmassantiProtonVsPt" , " h2TOFmassantiProtonVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH3F , {{80 , 0.4 , 4 .}, {50 , 0 ., 5 .}, {CentAxis }});
470+ jetHist.add <TH3 >(" tracksInc/deuteron/h2TOFmassDeuteronVsPt" , " h2TOFmassDeuteronVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH3F , {{80 , 0.4 , 4 .}, {50 , 0 ., 5 .}, {CentAxis }});
471+ jetHist.add <TH3 >(" tracksInc/antiDeuteron/h2TOFmassantiDeuteronVsPt" , " h2TOFmassantiDeuteronVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH3F , {{80 , 0.4 , 4 .}, {50 , 0 ., 5 .}, {CentAxis }});
470472
471- jetHist.add <TH2 >(" tracksInc/proton/h2TOFmass2ProtonVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T} (GeV)" , HistType::kTH2F , {{massPrAxis}, {250 , 0 ., 5 .}});
472- jetHist.add <TH2 >(" tracksInc/antiProton/h2TOFmass2antiProtonVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T} (GeV)" , HistType::kTH2F , {{massPrAxis}, {250 , 0 ., 5 .}});
473- jetHist.add <TH2 >(" tracksInc/deuteron/h2TOFmass2DeuteronVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T} (GeV)" , HistType::kTH2F , {{massDeAxis}, {250 , 0 ., 5 .}});
474- jetHist.add <TH2 >(" tracksInc/antiDeuteron/h2TOFmass2antiDeuteronVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T} (GeV)" , HistType::kTH2F , {{massDeAxis}, {250 , 0 ., 5 .}});
473+ jetHist.add <TH3 >(" tracksInc/proton/h2TOFmass2ProtonVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T} (GeV)" , HistType::kTH3F , {{massPrAxis}, {250 , 0 ., 5 .}, {CentAxis }});
474+ jetHist.add <TH3 >(" tracksInc/antiProton/h2TOFmass2antiProtonVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T} (GeV)" , HistType::kTH3F , {{massPrAxis}, {250 , 0 ., 5 .}, {CentAxis }});
475+ jetHist.add <TH3 >(" tracksInc/deuteron/h2TOFmass2DeuteronVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T} (GeV)" , HistType::kTH3F , {{massDeAxis}, {250 , 0 ., 5 .}, {CentAxis }});
476+ jetHist.add <TH3 >(" tracksInc/antiDeuteron/h2TOFmass2antiDeuteronVsPt" , " #Delta M^{2} (t) vs #it{p}_{T}; TOFmass2; #it{p}_{T} (GeV)" , HistType::kTH3F , {{massDeAxis}, {250 , 0 ., 5 .}, {CentAxis }});
475477
476- jetHist.add <TH2 >(" tracksInc/proton/h2TofNsigmaProtonVsPt" , " h2TofNsigmaProtonVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH2F , {{100 , -5 , 5 }, {100 , 0 ., 10 .}});
477- jetHist.add <TH2 >(" tracksInc/antiProton/h2TofNsigmaantiProtonVsPt" , " h2TofNsigmaantiProtonVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH2F , {{100 , -5 , 5 }, {100 , 0 ., 10 .}});
478- jetHist.add <TH2 >(" tracksInc/deuteron/h2TofNsigmaDeuteronVsPt" , " h2TofNsigmaDeuteronVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH2F , {{100 , -5 , 5 }, {100 , 0 ., 10 .}});
479- jetHist.add <TH2 >(" tracksInc/antiDeuteron/h2TofNsigmaantiDeuteronVsPt" , " h2TofNsigmaantiDeuteronVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH2F , {{100 , -5 , 5 }, {100 , 0 ., 10 .}});
478+ jetHist.add <TH3 >(" tracksInc/proton/h2TofNsigmaProtonVsPt" , " h2TofNsigmaProtonVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH3F , {{100 , -5 , 5 }, {100 , 0 ., 10 .}, {CentAxis }});
479+ jetHist.add <TH3 >(" tracksInc/antiProton/h2TofNsigmaantiProtonVsPt" , " h2TofNsigmaantiProtonVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH3F , {{100 , -5 , 5 }, {100 , 0 ., 10 .}, {CentAxis }});
480+ jetHist.add <TH3 >(" tracksInc/deuteron/h2TofNsigmaDeuteronVsPt" , " h2TofNsigmaDeuteronVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH3F , {{100 , -5 , 5 }, {100 , 0 ., 10 .}, {CentAxis }});
481+ jetHist.add <TH3 >(" tracksInc/antiDeuteron/h2TofNsigmaantiDeuteronVsPt" , " h2TofNsigmaantiDeuteronVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH3F , {{100 , -5 , 5 }, {100 , 0 ., 10 .}, {CentAxis }});
480482
481483 // TOF hist nSigma
482484 jetHist.add <TH2>(" tracks/proton/h2TofNsigmaProtonVsPt" , " h2TofNsigmaProtonVsPt; TofNsigma; #it{p}_{T} (GeV)" , HistType::kTH2F , {{100 , -5 , 5 }, {50 , 0 ., 5 .}});
@@ -495,7 +497,7 @@ struct nucleiInJets {
495497 jetHist.get <TH1>(HIST (" recInc/eventStat" ))->GetXaxis ()->SetBinLabel (2 , " Sel8" );
496498 jetHist.get <TH1>(HIST (" recInc/eventStat" ))->GetXaxis ()->SetBinLabel (3 , " |Vz|<10" );
497499
498- jetHist.add <TH1 >(" recInc/vertexZ" , " vertexZ (inclusive)" , HistType::kTH1F , {{100 , -15.0 , 15.0 }});
500+ jetHist.add <TH2 >(" recInc/vertexZ" , " vertexZ (inclusive)" , HistType::kTH2F , {{100 , -15.0 , 15.0 }, {CentAxis }});
499501 jetHist.add <TH3>(" recInc/pt/PtParticleTypeTPC" , " Pt vs ParticleType vs Centrality (TPC)" , HistType::kTH3F , {{100 , 0 .f , 10 .f }, {14 , -7 , 7 }, {100 , 0 , 100 }});
500502 jetHist.add <TH3>(" recInc/pt/PtParticleTypeTPCTOF" , " Pt vs ParticleType vs Centrality (TPC+TOF)" , HistType::kTH3F , {{100 , 0 .f , 10 .f }, {14 , -7 , 7 }, {100 , 0 , 100 }});
501503 jetHist.add <TH3>(" recInc/pt/PtParticleTypeTPCTOFVeto" , " Pt vs ParticleType vs Centrality (TPC+TOF Veto)" , HistType::kTH3F , {{100 , 0 .f , 10 .f }, {14 , -7 , 7 }, {100 , 0 , 100 }});
@@ -1369,7 +1371,7 @@ struct nucleiInJets {
13691371 default :
13701372 centrality = -999 ;
13711373 }
1372-
1374+ jetHist. fill ( HIST ( " hNEventsIncVsCent " ), coll. posZ (), centrality);
13731375 for (const auto & track : tracks) {
13741376 auto trk = track.track_as <TrackCandidates>();
13751377 if (!isTrackSelected (trk)) {
@@ -1429,12 +1431,12 @@ struct nucleiInJets {
14291431 }
14301432
14311433 if (cEnableProtonQA && std::abs (trk.tpcNSigmaPr ()) < cfgnTPCPIDPr) {
1432- jetHist.fill (HIST (" tracksInc/proton/dca/after/hDCAxyVsPtProton" ), trk.dcaXY (), trk.pt ());
1433- jetHist.fill (HIST (" tracksInc/proton/dca/after/hDCAzVsPtProton" ), trk.dcaZ (), trk.pt ());
1434+ jetHist.fill (HIST (" tracksInc/proton/dca/after/hDCAxyVsPtProton" ), trk.dcaXY (), trk.pt (), centrality );
1435+ jetHist.fill (HIST (" tracksInc/proton/dca/after/hDCAzVsPtProton" ), trk.dcaZ (), trk.pt (), centrality );
14341436 }
14351437 if (cEnableDeuteronQA && std::abs (trk.tpcNSigmaDe ()) < cfgnTPCPIDDe) {
1436- jetHist.fill (HIST (" tracksInc/deuteron/dca/after/hDCAxyVsPtDeuteron" ), trk.dcaXY (), trk.pt ());
1437- jetHist.fill (HIST (" tracksInc/deuteron/dca/after/hDCAzVsPtDeuteron" ), trk.dcaZ (), trk.pt ());
1438+ jetHist.fill (HIST (" tracksInc/deuteron/dca/after/hDCAxyVsPtDeuteron" ), trk.dcaXY (), trk.pt (), centrality );
1439+ jetHist.fill (HIST (" tracksInc/deuteron/dca/after/hDCAzVsPtDeuteron" ), trk.dcaZ (), trk.pt (), centrality );
14381440 }
14391441
14401442 } else { // anti-particle info
@@ -1466,27 +1468,27 @@ struct nucleiInJets {
14661468 if (addTOFplots && trk.hasTOF ()) {
14671469 massTOF = trk.p () * TMath::Sqrt (1 .f / (trk.beta () * trk.beta ()) - 1 .f );
14681470 if (!useTPCpreSel) {
1469- jetHist.fill (HIST (" tracksInc/antiProton/h2TOFmassantiProtonVsPt" ), massTOF, trk.pt ());
1470- jetHist.fill (HIST (" tracksInc/antiProton/h2TOFmass2antiProtonVsPt" ), massTOF * massTOF - gMassProton * gMassProton , trk.pt ());
1471- jetHist.fill (HIST (" tracksInc/antiProton/h2TofNsigmaantiProtonVsPt" ), trk.tofNSigmaPr (), trk.pt ());
1471+ jetHist.fill (HIST (" tracksInc/antiProton/h2TOFmassantiProtonVsPt" ), massTOF, trk.pt (), centrality );
1472+ jetHist.fill (HIST (" tracksInc/antiProton/h2TOFmass2antiProtonVsPt" ), massTOF * massTOF - gMassProton * gMassProton , trk.pt (), centrality );
1473+ jetHist.fill (HIST (" tracksInc/antiProton/h2TofNsigmaantiProtonVsPt" ), trk.tofNSigmaPr (), trk.pt (), centrality );
14721474
1473- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmassantiDeuteronVsPt" ), massTOF, trk.pt ());
1474- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmass2antiDeuteronVsPt" ), massTOF * massTOF - gMassDeuteron * gMassDeuteron , trk.pt ());
1475- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TofNsigmaantiDeuteronVsPt" ), trk.tofNSigmaDe (), trk.pt ());
1475+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmassantiDeuteronVsPt" ), massTOF, trk.pt (), centrality );
1476+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmass2antiDeuteronVsPt" ), massTOF * massTOF - gMassDeuteron * gMassDeuteron , trk.pt (), centrality );
1477+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TofNsigmaantiDeuteronVsPt" ), trk.tofNSigmaDe (), trk.pt (), centrality );
14761478 } else {
14771479 if (std::abs (trk.tpcNSigmaPr ()) < cfgnTPCPIDPr) {
1478- jetHist.fill (HIST (" tracksInc/antiProton/h2TOFmassantiProtonVsPt" ), massTOF, trk.pt ());
1479- jetHist.fill (HIST (" tracksInc/antiProton/h2TOFmass2antiProtonVsPt" ), massTOF * massTOF - gMassProton * gMassProton , trk.pt ());
1480- jetHist.fill (HIST (" tracksInc/antiProton/h2TofNsigmaantiProtonVsPt" ), trk.tofNSigmaPr (), trk.pt ());
1480+ jetHist.fill (HIST (" tracksInc/antiProton/h2TOFmassantiProtonVsPt" ), massTOF, trk.pt (), centrality );
1481+ jetHist.fill (HIST (" tracksInc/antiProton/h2TOFmass2antiProtonVsPt" ), massTOF * massTOF - gMassProton * gMassProton , trk.pt (), centrality );
1482+ jetHist.fill (HIST (" tracksInc/antiProton/h2TofNsigmaantiProtonVsPt" ), trk.tofNSigmaPr (), trk.pt (), centrality );
14811483 }
14821484 if (std::abs (trk.tpcNSigmaDe ()) < cfgnTPCPIDDe) {
1483- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmassantiDeuteronVsPt" ), massTOF, trk.pt ());
1484- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmass2antiDeuteronVsPt" ), massTOF * massTOF - gMassDeuteron * gMassDeuteron , trk.pt ());
1485- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TofNsigmaantiDeuteronVsPt" ), trk.tofNSigmaDe (), trk.pt ());
1485+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmassantiDeuteronVsPt" ), massTOF, trk.pt (), centrality );
1486+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmass2antiDeuteronVsPt" ), massTOF * massTOF - gMassDeuteron * gMassDeuteron , trk.pt (), centrality );
1487+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TofNsigmaantiDeuteronVsPt" ), trk.tofNSigmaDe (), trk.pt (), centrality );
14861488 } else {
1487- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmassantiDeuteronVsPt" ), massTOF, trk.pt ());
1488- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmass2antiDeuteronVsPt" ), massTOF * massTOF - gMassDeuteron * gMassDeuteron , trk.pt ());
1489- jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TofNsigmaantiDeuteronVsPt" ), trk.tofNSigmaDe (), trk.pt ());
1489+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmassantiDeuteronVsPt" ), massTOF, trk.pt (), centrality );
1490+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TOFmass2antiDeuteronVsPt" ), massTOF * massTOF - gMassDeuteron * gMassDeuteron , trk.pt (), centrality );
1491+ jetHist.fill (HIST (" tracksInc/antiDeuteron/h2TofNsigmaantiDeuteronVsPt" ), trk.tofNSigmaDe (), trk.pt (), centrality );
14901492 }
14911493 }
14921494 }
@@ -1971,8 +1973,6 @@ struct nucleiInJets {
19711973 jetHist.fill (HIST (" recInc/eventStat" ), 1.5 );
19721974 if (std::abs (coll.posZ ()) > 10 ) // bad vertex
19731975 return ;
1974-
1975- jetHist.fill (HIST (" recInc/vertexZ" ), coll.posZ ());
19761976 jetHist.fill (HIST (" recInc/eventStat" ), 2.5 );
19771977
19781978 float centrality = -999 ;
@@ -1989,7 +1989,7 @@ struct nucleiInJets {
19891989 default :
19901990 centrality = -999 ;
19911991 }
1992-
1992+ jetHist. fill ( HIST ( " recInc/vertexZ " ), coll. posZ (), centrality);
19931993 for (const auto & track : tracks) {
19941994 if (!isTrackSelected (track)) {
19951995 continue ;
0 commit comments