#include "pdgmap.hh"

#include <cstdlib>

std::map<int, std::pair<QString,QString> > pdgmap;
std::map<int, QString> elnames;

void pdgmap_init(void);
void elnames_init(void);

std::pair<QString,QString> 
pdgstring(int code)
{
  pdgmap_init();
  elnames_init();

  std::pair<QString,QString> res;
  std::map<int, std::pair<QString,QString> >::iterator it=pdgmap.find(code);
  if (it!=pdgmap.end())
    res=it->second;
  else
    {
      if (abs(code)>1000000000)
	{
	  code=code%1000000000;
	  int l=abs(code)/10000000;
	  int z=abs(code)/10000-l*1000;
	  int a=abs(code)/10-l*1000000-z*1000;
	  int i=abs(code)-l*10000000-z*10000-a*10;
	  
	  QString richa=QString::number(a);
	  QString plaina=QString::number(a);
 	  for (int j=0; j<richa.length(); j++)
 	    {
 	      QChar aj=richa[j];
	      if (aj.unicode()==49)
		richa[j]=QChar(0x00b9);
 	      else if (aj.unicode()==50)
 		richa[j]=QChar(0x00b2);
 	      else if (aj.unicode()==51)
 		richa[j]=QChar(0x00b3);
 	      else
 		richa[j]=QChar(0x2070+aj.unicode()-0x0030);
 	    }
	  if (elnames.find(z)!=elnames.end())
	    res=std::pair<QString,QString>(plaina+elnames[z]+QString(i>0?"*":""), richa+elnames[z]+QString(i>0?"*":""));
	  else
	    res=std::pair<QString,QString>(plaina+"("+QString::number(z)+"?)"+QString(i>0?"*":""), richa+"("+QString::number(z)+"?)"+QString(i>0?"*":""));
	}
      else
	res=std::pair<QString,QString>(QString::number(code), QString::number(code));
    }
  return res;
}

void elnames_init(void)
{
  static bool init_done=false;
  if (!init_done)
    {
      elnames[1]="H";
      elnames[2]="He";
      elnames[3]="Li";
      elnames[4]="Be";
      elnames[5]="B";
      elnames[6]="C";
      elnames[7]="N";
      elnames[8]="O";
      elnames[9]="F";
      elnames[10]="Ne";
      elnames[11]="Na";
      elnames[12]="Mg";
      elnames[13]="Al";
      elnames[14]="Si";
      elnames[15]="P";
      elnames[16]="S";
      elnames[17]="Cl";
      elnames[18]="Ar";
      elnames[19]="K";
      elnames[20]="Ca";
      elnames[21]="Sc";
      elnames[22]="Ti";
      elnames[23]="V";
      elnames[24]="Cr";
      elnames[25]="Mn";
      elnames[26]="Fe";
      elnames[27]="Co";
      elnames[28]="Ni";
      elnames[29]="Cu";
      elnames[30]="Zn";
      elnames[31]="Ga";
      elnames[32]="Ge";
      elnames[33]="As";
      elnames[34]="Se";
      elnames[35]="Br";
      elnames[36]="Kr";
      elnames[37]="Rb";
      elnames[38]="Sr";
      elnames[39]="Y";
      elnames[40]="Zr";
      elnames[41]="Nb";
      elnames[42]="Mo";
      elnames[43]="Tc";
      elnames[44]="Ru";
      elnames[45]="Rh";
      elnames[46]="Pd";
      elnames[47]="Ag";
      elnames[48]="Cd";
      elnames[49]="In";
      elnames[50]="Sn";
      elnames[51]="Sb";
      elnames[52]="Te";
      elnames[53]="I";
      elnames[54]="Xe";
      elnames[55]="Cs";
      elnames[56]="Ba";
      elnames[57]="La";
      elnames[58]="Ce";
      elnames[59]="Pr";
      elnames[60]="Nd";
      elnames[61]="Pm";
      elnames[62]="Sm";
      elnames[63]="Eu";
      elnames[64]="Gd";
      elnames[65]="Tb";
      elnames[66]="Dy";
      elnames[67]="Ho";
      elnames[68]="Er";
      elnames[69]="Tm";
      elnames[70]="Yb";
      elnames[71]="Lu";
      elnames[72]="Hf";
      elnames[73]="Ta";
      elnames[74]="W";
      elnames[75]="Re";
      elnames[76]="Os";
      elnames[77]="Ir";
      elnames[78]="Pt";
      elnames[79]="Au";
      elnames[80]="Hg";
      elnames[81]="Tl";
      elnames[82]="Pb";
      elnames[83]="Bi";
      elnames[84]="Po";
      elnames[85]="At";
      elnames[86]="Rn";
      elnames[87]="Fr";
      elnames[88]="Ra";
      elnames[89]="Ac";
      elnames[90]="Th";
      elnames[91]="Pa";
      elnames[92]="U";
      elnames[93]="Np";
      elnames[94]="Pu";
      elnames[95]="Am";
      elnames[96]="Cm";
      elnames[97]="Bk";
      elnames[98]="Cf";
      elnames[99]="Es";
      elnames[100]="Fm";
      elnames[101]="Md";
      elnames[102]="No";
      elnames[103]="Lr";
      elnames[104]="Rf";
      elnames[105]="Db";
      elnames[106]="Sg";
      elnames[107]="Bh";
      elnames[108]="Hs";
      elnames[109]="Mt";
      elnames[110]="Ds";
      elnames[111]="Rg";
      elnames[112]="Cn";
      elnames[113]="Uut";
      elnames[114]="Fl";
      elnames[115]="Uup";
      elnames[116]="Lv";
      elnames[117]="Uus";
      elnames[118]="Uuo";
      init_done=true;
    }
}

void pdgmap_init(void)
{
  static bool init_done=false;
  if (!init_done)
    {
      pdgmap[1] = std::pair<QString,QString>(QString("d"), QString::fromUtf8("d"));
      pdgmap[-1] = std::pair<QString,QString>(QString("d_bar"), QString::fromUtf8("d\u0305"));
      pdgmap[2] = std::pair<QString,QString>(QString("u"), QString::fromUtf8("u"));
      pdgmap[-2] = std::pair<QString,QString>(QString("u_bar"), QString::fromUtf8("u\u0305"));
      pdgmap[3] = std::pair<QString,QString>(QString("s"), QString::fromUtf8("s"));
      pdgmap[-3] = std::pair<QString,QString>(QString("s_bar"), QString::fromUtf8("s\u0305"));
      pdgmap[4] = std::pair<QString,QString>(QString("c"), QString::fromUtf8("c"));
      pdgmap[-4] = std::pair<QString,QString>(QString("c_bar"), QString::fromUtf8("c\u0305"));
      pdgmap[5] = std::pair<QString,QString>(QString("b"), QString::fromUtf8("b"));
      pdgmap[-5] = std::pair<QString,QString>(QString("b_bar"), QString::fromUtf8("b\u0305"));
      pdgmap[6] = std::pair<QString,QString>(QString("t"), QString::fromUtf8("t"));
      pdgmap[-6] = std::pair<QString,QString>(QString("t_bar"), QString::fromUtf8("t\u0305"));
      pdgmap[7] = std::pair<QString,QString>(QString("b'"), QString::fromUtf8("b'"));
      pdgmap[-7] = std::pair<QString,QString>(QString("b'_bar"), QString::fromUtf8("b\u0305'"));
      pdgmap[8] = std::pair<QString,QString>(QString("t'"), QString::fromUtf8("t'"));
      pdgmap[-8] = std::pair<QString,QString>(QString("t'_bar"), QString::fromUtf8("t\u0305'"));
      pdgmap[11] = std::pair<QString,QString>(QString("e-"), QString::fromUtf8("e\u207b"));
      pdgmap[-11] = std::pair<QString,QString>(QString("e+"), QString::fromUtf8("e\u207a"));
      pdgmap[12] = std::pair<QString,QString>(QString("nu_e"), QString::fromUtf8("\u03bd\u2091"));
      pdgmap[-12] = std::pair<QString,QString>(QString("nu_e_bar"), QString::fromUtf8("\u03bd\u0305\u2091"));
      pdgmap[13] = std::pair<QString,QString>(QString("mu-"), QString::fromUtf8("\u03bc\u207b"));
      pdgmap[-13] = std::pair<QString,QString>(QString("mu+"), QString::fromUtf8("\u03bc\u207a"));
      pdgmap[14] = std::pair<QString,QString>(QString("nu_mu"), QString::fromUtf8("\u03bd\u1d64"));
      pdgmap[-14] = std::pair<QString,QString>(QString("nu_mu_bar"), QString::fromUtf8("\u03bd\u0305\u1d64"));
      pdgmap[15] = std::pair<QString,QString>(QString("tau-"), QString::fromUtf8("\u03c4\u207b"));
      pdgmap[-15] = std::pair<QString,QString>(QString("tau+"), QString::fromUtf8("\u03c4\u207a"));
      pdgmap[16] = std::pair<QString,QString>(QString("nu_tau"), QString::fromUtf8("\u03bd \u031e"));
      pdgmap[-16] = std::pair<QString,QString>(QString("nu_tau_bar"), QString::fromUtf8("\u03bd\u0305 \u031e"));
      pdgmap[17] = std::pair<QString,QString>(QString("tau'-"), QString::fromUtf8("\u03c4'\u207b"));
      pdgmap[-17] = std::pair<QString,QString>(QString("tau'+"), QString::fromUtf8("\u03c4'\u207a"));
      pdgmap[18] = std::pair<QString,QString>(QString("nu'_tau"), QString::fromUtf8("\u03bd' \u031e"));
      pdgmap[-18] = std::pair<QString,QString>(QString("nu'_tau_bar"), QString::fromUtf8("\u03bd\u0305' \u031e"));
      pdgmap[21] = std::pair<QString,QString>(QString("g"), QString::fromUtf8("g"));
      pdgmap[22] = std::pair<QString,QString>(QString("gamma"), QString::fromUtf8("\u03b3"));
      pdgmap[23] = std::pair<QString,QString>(QString("Z0"), QString::fromUtf8("Z\u2070"));
      pdgmap[24] = std::pair<QString,QString>(QString("W+"), QString::fromUtf8("W\u207a"));
      pdgmap[-24] = std::pair<QString,QString>(QString("W-"), QString::fromUtf8("W\u207b"));
      pdgmap[25] = std::pair<QString,QString>(QString("h0"), QString::fromUtf8("h\u2070"));
      pdgmap[28] = std::pair<QString,QString>(QString("reggeon"), QString::fromUtf8("reggeon"));
      pdgmap[29] = std::pair<QString,QString>(QString("pomeron"), QString::fromUtf8("pomeron"));
      pdgmap[32] = std::pair<QString,QString>(QString("Z'0"), QString::fromUtf8("Z'\u2070"));
      pdgmap[33] = std::pair<QString,QString>(QString("Z\"0"), QString::fromUtf8("Z''\u2070"));
      pdgmap[34] = std::pair<QString,QString>(QString("W'+"), QString::fromUtf8("W'\u207a"));
      pdgmap[-34] = std::pair<QString,QString>(QString("W'-"), QString::fromUtf8("W'\u207b"));
      pdgmap[35] = std::pair<QString,QString>(QString("H0"), QString::fromUtf8("H\u2070"));
      pdgmap[36] = std::pair<QString,QString>(QString("A0"), QString::fromUtf8("A\u2070"));
      pdgmap[37] = std::pair<QString,QString>(QString("H+"), QString::fromUtf8("H\u207a"));
      pdgmap[-37] = std::pair<QString,QString>(QString("H-"), QString::fromUtf8("H\u207b"));
      pdgmap[38] = std::pair<QString,QString>(QString("eta_tech0"), QString::fromUtf8("eta_tech0"));
      pdgmap[39] = std::pair<QString,QString>(QString("LQ_ue"), QString::fromUtf8("LQ_ue"));
      pdgmap[-39] = std::pair<QString,QString>(QString("LQ_ue_bar"), QString::fromUtf8("LQ_ue_bar"));
      pdgmap[40] = std::pair<QString,QString>(QString("R0"), QString::fromUtf8("R0"));
      pdgmap[-40] = std::pair<QString,QString>(QString("R0_bar"), QString::fromUtf8("R0_bar"));
      pdgmap[51] = std::pair<QString,QString>(QString("pi_tech0"), QString::fromUtf8("pi_tech0"));
      pdgmap[52] = std::pair<QString,QString>(QString("pi_tech+"), QString::fromUtf8("pi_tech+"));
      pdgmap[-52] = std::pair<QString,QString>(QString("pi_tech-"), QString::fromUtf8("pi_tech-"));
      pdgmap[53] = std::pair<QString,QString>(QString("pi'_tech0"), QString::fromUtf8("pi'_tech0"));
      pdgmap[54] = std::pair<QString,QString>(QString("rho_tech0"), QString::fromUtf8("rho_tech0"));
      pdgmap[55] = std::pair<QString,QString>(QString("rho_tech+"), QString::fromUtf8("rho_tech+"));
      pdgmap[-55] = std::pair<QString,QString>(QString("rho_tech-"), QString::fromUtf8("rho_tech-"));
      pdgmap[56] = std::pair<QString,QString>(QString("omega_tech"), QString::fromUtf8("omega_tech"));
      pdgmap[61] = std::pair<QString,QString>(QString("H_L++"), QString::fromUtf8("H_L++"));
      pdgmap[-61] = std::pair<QString,QString>(QString("H_L--"), QString::fromUtf8("H_L--"));
      pdgmap[62] = std::pair<QString,QString>(QString("H_R++"), QString::fromUtf8("H_R++"));
      pdgmap[-62] = std::pair<QString,QString>(QString("H_R--"), QString::fromUtf8("H_R--"));
      pdgmap[63] = std::pair<QString,QString>(QString("W_R+"), QString::fromUtf8("W_R+"));
      pdgmap[-63] = std::pair<QString,QString>(QString("W_R-"), QString::fromUtf8("W_R-"));
      pdgmap[64] = std::pair<QString,QString>(QString("nu_Re"), QString::fromUtf8("nu_Re"));
      pdgmap[-64] = std::pair<QString,QString>(QString("nu_Re_bar"), QString::fromUtf8("nu_Re_bar"));
      pdgmap[65] = std::pair<QString,QString>(QString("nu_Rmu"), QString::fromUtf8("nu_Rmu"));
      pdgmap[-65] = std::pair<QString,QString>(QString("nu_Rmu_bar"), QString::fromUtf8("nu_Rmu_bar"));
      pdgmap[66] = std::pair<QString,QString>(QString("nu_Rtau"), QString::fromUtf8("nu_Rtau"));
      pdgmap[-66] = std::pair<QString,QString>(QString("nu_Rtau_bar"), QString::fromUtf8("nu_Rtau_bar"));
      pdgmap[81] = std::pair<QString,QString>(QString("specflav"), QString::fromUtf8("specflav"));
      pdgmap[82] = std::pair<QString,QString>(QString("rndmflav"), QString::fromUtf8("rndmflav"));
      pdgmap[-82] = std::pair<QString,QString>(QString("rndmflav_bar"), QString::fromUtf8("rndmflav_bar"));
      pdgmap[83] = std::pair<QString,QString>(QString("phasespa"), QString::fromUtf8("phasespa"));
      pdgmap[84] = std::pair<QString,QString>(QString("c-hadron"), QString::fromUtf8("c-hadron"));
      pdgmap[-84] = std::pair<QString,QString>(QString("c-hadron_bar"), QString::fromUtf8("c-hadron_bar"));
      pdgmap[85] = std::pair<QString,QString>(QString("b-hadron"), QString::fromUtf8("b-hadron"));
      pdgmap[-85] = std::pair<QString,QString>(QString("b-hadron_bar"), QString::fromUtf8("b-hadron_bar"));
      pdgmap[91] = std::pair<QString,QString>(QString("cluster"), QString::fromUtf8("cluster"));
      pdgmap[92] = std::pair<QString,QString>(QString("string"), QString::fromUtf8("string"));
      pdgmap[93] = std::pair<QString,QString>(QString("indep."), QString::fromUtf8("indep."));
      pdgmap[94] = std::pair<QString,QString>(QString("CMshower"), QString::fromUtf8("CMshower"));
      pdgmap[95] = std::pair<QString,QString>(QString("SPHEaxis"), QString::fromUtf8("SPHEaxis"));
      pdgmap[96] = std::pair<QString,QString>(QString("THRUaxis"), QString::fromUtf8("THRUaxis"));
      pdgmap[97] = std::pair<QString,QString>(QString("CLUSjet"), QString::fromUtf8("CLUSjet"));
      pdgmap[98] = std::pair<QString,QString>(QString("CELLjet"), QString::fromUtf8("CELLjet"));
      pdgmap[99] = std::pair<QString,QString>(QString("table"), QString::fromUtf8("table"));
      pdgmap[110] = std::pair<QString,QString>(QString("rho_diff0"), QString::fromUtf8("rho_diff0"));
      pdgmap[111] = std::pair<QString,QString>(QString("pi0"), QString::fromUtf8("\u03c0\u2070"));
      pdgmap[113] = std::pair<QString,QString>(QString("rho0"), QString::fromUtf8("\u03c1\u2070"));
      pdgmap[115] = std::pair<QString,QString>(QString("a_20"), QString::fromUtf8("a_20"));
      pdgmap[130] = std::pair<QString,QString>(QString("K_L0"), QString::fromUtf8("K\u2070\u02ea"));// \u0322"));
      pdgmap[210] = std::pair<QString,QString>(QString("pi_diffr+"), QString::fromUtf8("pi_diffr+"));
      pdgmap[-210] = std::pair<QString,QString>(QString("pi_diffr-"), QString::fromUtf8("pi_diffr-"));
      pdgmap[211] = std::pair<QString,QString>(QString("pi+"), QString::fromUtf8("\u03c0\u207a"));
      pdgmap[-211] = std::pair<QString,QString>(QString("pi-"), QString::fromUtf8("\u03c0\u207b"));
      pdgmap[213] = std::pair<QString,QString>(QString("rho+"), QString::fromUtf8("\u03c1\u207a"));
      pdgmap[-213] = std::pair<QString,QString>(QString("rho-"), QString::fromUtf8("\u03c1\u207b"));
      pdgmap[215] = std::pair<QString,QString>(QString("a_2+"), QString::fromUtf8("a_2+"));
      pdgmap[-215] = std::pair<QString,QString>(QString("a_2-"), QString::fromUtf8("a_2-"));
      pdgmap[220] = std::pair<QString,QString>(QString("omega_di"), QString::fromUtf8("omega_di"));
      pdgmap[221] = std::pair<QString,QString>(QString("eta"), QString::fromUtf8("\u03b7"));
      pdgmap[223] = std::pair<QString,QString>(QString("omega"), QString::fromUtf8("\u03c9"));
      pdgmap[225] = std::pair<QString,QString>(QString("f_2"), QString::fromUtf8("f_2"));
      pdgmap[310] = std::pair<QString,QString>(QString("K_S0"), QString::fromUtf8("K\u2070\u2085"));
      pdgmap[311] = std::pair<QString,QString>(QString("K0"), QString::fromUtf8("K\u2070"));
      pdgmap[-311] = std::pair<QString,QString>(QString("K0_bar"), QString::fromUtf8("K\u0305\u2070"));
      pdgmap[313] = std::pair<QString,QString>(QString("K*0"), QString::fromUtf8("K*0"));
      pdgmap[-313] = std::pair<QString,QString>(QString("K*0_bar"), QString::fromUtf8("K*0_bar"));
      pdgmap[315] = std::pair<QString,QString>(QString("K*_20"), QString::fromUtf8("K*_20"));
      pdgmap[-315] = std::pair<QString,QString>(QString("K*_20_bar"), QString::fromUtf8("K*_20_bar"));
      pdgmap[321] = std::pair<QString,QString>(QString("K+"), QString::fromUtf8("K\u207a"));
      pdgmap[-321] = std::pair<QString,QString>(QString("K-"), QString::fromUtf8("K\u207b"));
      pdgmap[323] = std::pair<QString,QString>(QString("K*+"), QString::fromUtf8("K*+"));
      pdgmap[-323] = std::pair<QString,QString>(QString("K*-"), QString::fromUtf8("K*-"));
      pdgmap[325] = std::pair<QString,QString>(QString("K*_2+"), QString::fromUtf8("K*_2+"));
      pdgmap[-325] = std::pair<QString,QString>(QString("K*_2-"), QString::fromUtf8("K*_2-"));
      pdgmap[330] = std::pair<QString,QString>(QString("phi_diff"), QString::fromUtf8("phi_diff"));
      pdgmap[331] = std::pair<QString,QString>(QString("eta'"), QString::fromUtf8("\u03b7'"));
      pdgmap[333] = std::pair<QString,QString>(QString("phi"), QString::fromUtf8("phi"));
      pdgmap[335] = std::pair<QString,QString>(QString("f'_2"), QString::fromUtf8("f'_2"));
      pdgmap[411] = std::pair<QString,QString>(QString("D+"), QString::fromUtf8("D+"));
      pdgmap[-411] = std::pair<QString,QString>(QString("D-"), QString::fromUtf8("D-"));
      pdgmap[413] = std::pair<QString,QString>(QString("D*+"), QString::fromUtf8("D*+"));
      pdgmap[-413] = std::pair<QString,QString>(QString("D*-"), QString::fromUtf8("D*-"));
      pdgmap[415] = std::pair<QString,QString>(QString("D*_2+"), QString::fromUtf8("D*_2+"));
      pdgmap[-415] = std::pair<QString,QString>(QString("D*_2-"), QString::fromUtf8("D*_2-"));
      pdgmap[421] = std::pair<QString,QString>(QString("D0"), QString::fromUtf8("D0"));
      pdgmap[-421] = std::pair<QString,QString>(QString("D0_bar"), QString::fromUtf8("D0_bar"));
      pdgmap[423] = std::pair<QString,QString>(QString("D*0"), QString::fromUtf8("D*0"));
      pdgmap[-423] = std::pair<QString,QString>(QString("D*0_bar"), QString::fromUtf8("D*0_bar"));
      pdgmap[425] = std::pair<QString,QString>(QString("D*_20"), QString::fromUtf8("D*_20"));
      pdgmap[-425] = std::pair<QString,QString>(QString("D*_20_bar"), QString::fromUtf8("D*_20_bar"));
      pdgmap[431] = std::pair<QString,QString>(QString("D_s+"), QString::fromUtf8("D_s+"));
      pdgmap[-431] = std::pair<QString,QString>(QString("D_s-"), QString::fromUtf8("D_s-"));
      pdgmap[433] = std::pair<QString,QString>(QString("D*_s+"), QString::fromUtf8("D*_s+"));
      pdgmap[-433] = std::pair<QString,QString>(QString("D*_s-"), QString::fromUtf8("D*_s-"));
      pdgmap[435] = std::pair<QString,QString>(QString("D*_2s+"), QString::fromUtf8("D*_2s+"));
      pdgmap[-435] = std::pair<QString,QString>(QString("D*_2s-"), QString::fromUtf8("D*_2s-"));
      pdgmap[440] = std::pair<QString,QString>(QString("J/psi_di"), QString::fromUtf8("J/psi_di"));
      pdgmap[441] = std::pair<QString,QString>(QString("eta_c"), QString::fromUtf8("\u03b7_c"));
      pdgmap[443] = std::pair<QString,QString>(QString("J/psi"), QString::fromUtf8("J/\u03a8"));
      pdgmap[445] = std::pair<QString,QString>(QString("chi_2c"), QString::fromUtf8("chi_2c"));
      pdgmap[511] = std::pair<QString,QString>(QString("B0"), QString::fromUtf8("B\u2070"));
      pdgmap[-511] = std::pair<QString,QString>(QString("B0_bar"), QString::fromUtf8("B\u0305\u2070"));
      pdgmap[513] = std::pair<QString,QString>(QString("B*0"), QString::fromUtf8("B*0"));
      pdgmap[-513] = std::pair<QString,QString>(QString("B*0_bar"), QString::fromUtf8("B*0_bar"));
      pdgmap[515] = std::pair<QString,QString>(QString("B*_20"), QString::fromUtf8("B*_20"));
      pdgmap[-515] = std::pair<QString,QString>(QString("B*_20_bar"), QString::fromUtf8("B*_20_bar"));
      pdgmap[521] = std::pair<QString,QString>(QString("B+"), QString::fromUtf8("B+"));
      pdgmap[-521] = std::pair<QString,QString>(QString("B-"), QString::fromUtf8("B-"));
      pdgmap[523] = std::pair<QString,QString>(QString("B*+"), QString::fromUtf8("B*+"));
      pdgmap[-523] = std::pair<QString,QString>(QString("B*-"), QString::fromUtf8("B*-"));
      pdgmap[525] = std::pair<QString,QString>(QString("B*_2+"), QString::fromUtf8("B*_2+"));
      pdgmap[-525] = std::pair<QString,QString>(QString("B*_2-"), QString::fromUtf8("B*_2-"));
      pdgmap[531] = std::pair<QString,QString>(QString("B_s0"), QString::fromUtf8("B_s0"));
      pdgmap[-531] = std::pair<QString,QString>(QString("B_s0_bar"), QString::fromUtf8("B_s0_bar"));
      pdgmap[533] = std::pair<QString,QString>(QString("B*_s0"), QString::fromUtf8("B*_s0"));
      pdgmap[-533] = std::pair<QString,QString>(QString("B*_s0_bar"), QString::fromUtf8("B*_s0_bar"));
      pdgmap[535] = std::pair<QString,QString>(QString("B*_2s0"), QString::fromUtf8("B*_2s0"));
      pdgmap[-535] = std::pair<QString,QString>(QString("B*_2s0_bar"), QString::fromUtf8("B*_2s0_bar"));
      pdgmap[541] = std::pair<QString,QString>(QString("B_c+"), QString::fromUtf8("B_c+"));
      pdgmap[-541] = std::pair<QString,QString>(QString("B_c-"), QString::fromUtf8("B_c-"));
      pdgmap[543] = std::pair<QString,QString>(QString("B*_c+"), QString::fromUtf8("B*_c+"));
      pdgmap[-543] = std::pair<QString,QString>(QString("B*_c-"), QString::fromUtf8("B*_c-"));
      pdgmap[545] = std::pair<QString,QString>(QString("B*_2c+"), QString::fromUtf8("B*_2c+"));
      pdgmap[-545] = std::pair<QString,QString>(QString("B*_2c-"), QString::fromUtf8("B*_2c-"));
      pdgmap[551] = std::pair<QString,QString>(QString("eta_b"), QString::fromUtf8("eta_b"));
      pdgmap[553] = std::pair<QString,QString>(QString("Upsilon"), QString::fromUtf8("Upsilon"));
      pdgmap[555] = std::pair<QString,QString>(QString("chi_2b"), QString::fromUtf8("chi_2b"));
      pdgmap[1103] = std::pair<QString,QString>(QString("dd_1"), QString::fromUtf8("dd_1"));
      pdgmap[-1103] = std::pair<QString,QString>(QString("dd_1_bar"), QString::fromUtf8("dd_1_bar"));
      pdgmap[1114] = std::pair<QString,QString>(QString("Delta-"), QString::fromUtf8("Delta-"));
      pdgmap[-1114] = std::pair<QString,QString>(QString("Delta-_bar"), QString::fromUtf8("Delta-_bar"));
      pdgmap[2101] = std::pair<QString,QString>(QString("ud_0"), QString::fromUtf8("ud_0"));
      pdgmap[-2101] = std::pair<QString,QString>(QString("ud_0_bar"), QString::fromUtf8("ud_0_bar"));
      pdgmap[2103] = std::pair<QString,QString>(QString("ud_1"), QString::fromUtf8("ud_1"));
      pdgmap[-2103] = std::pair<QString,QString>(QString("ud_1_bar"), QString::fromUtf8("ud_1_bar"));
      pdgmap[2110] = std::pair<QString,QString>(QString("n_diffr0"), QString::fromUtf8("n_diffr0"));
      pdgmap[-2110] = std::pair<QString,QString>(QString("n_diffr0_bar"), QString::fromUtf8("n_diffr0_bar"));
      pdgmap[2112] = std::pair<QString,QString>(QString("neutron"), QString::fromUtf8("n"));
      pdgmap[-2112] = std::pair<QString,QString>(QString("antineutron"), QString::fromUtf8("n\u0305"));
      pdgmap[2114] = std::pair<QString,QString>(QString("Delta0"), QString::fromUtf8("Delta0"));
      pdgmap[-2114] = std::pair<QString,QString>(QString("Delta0_bar"), QString::fromUtf8("Delta0_bar"));
      pdgmap[2203] = std::pair<QString,QString>(QString("uu_1"), QString::fromUtf8("uu_1"));
      pdgmap[-2203] = std::pair<QString,QString>(QString("uu_1_bar"), QString::fromUtf8("uu_1_bar"));
      pdgmap[2210] = std::pair<QString,QString>(QString("p_diffr+"), QString::fromUtf8("p_diffr+"));
      pdgmap[-2210] = std::pair<QString,QString>(QString("p_diffr+_bar"), QString::fromUtf8("p_diffr+_bar"));
      pdgmap[2212] = std::pair<QString,QString>(QString("proton"), QString::fromUtf8("p"));
      pdgmap[-2212] = std::pair<QString,QString>(QString("antiproton"), QString::fromUtf8("p\u0305"));
      pdgmap[2214] = std::pair<QString,QString>(QString("Delta+"), QString::fromUtf8("Delta+"));
      pdgmap[-2214] = std::pair<QString,QString>(QString("Delta+_bar"), QString::fromUtf8("Delta+_bar"));
      pdgmap[2224] = std::pair<QString,QString>(QString("Delta++"), QString::fromUtf8("Delta++"));
      pdgmap[-2224] = std::pair<QString,QString>(QString("Delta--"), QString::fromUtf8("Delta--"));
      pdgmap[3101] = std::pair<QString,QString>(QString("sd_0"), QString::fromUtf8("sd_0"));
      pdgmap[-3101] = std::pair<QString,QString>(QString("sd_0_bar"), QString::fromUtf8("sd_0_bar"));
      pdgmap[3103] = std::pair<QString,QString>(QString("sd_1"), QString::fromUtf8("sd_1"));
      pdgmap[-3103] = std::pair<QString,QString>(QString("sd_1_bar"), QString::fromUtf8("sd_1_bar"));
      pdgmap[3112] = std::pair<QString,QString>(QString("Sigma-"), QString::fromUtf8("Sigma-"));
      pdgmap[-3112] = std::pair<QString,QString>(QString("Sigma-_bar"), QString::fromUtf8("Sigma-_bar"));
      pdgmap[3114] = std::pair<QString,QString>(QString("Sigma*-"), QString::fromUtf8("Sigma*-"));
      pdgmap[-3114] = std::pair<QString,QString>(QString("Sigma*-_bar"), QString::fromUtf8("Sigma*-_bar"));
      pdgmap[3122] = std::pair<QString,QString>(QString("Lambda0"), QString::fromUtf8("\u039b\u2070"));
      pdgmap[-3122] = std::pair<QString,QString>(QString("Lambda0_bar"), QString::fromUtf8("\u039b\u0305\u2070"));
      pdgmap[3201] = std::pair<QString,QString>(QString("su_0"), QString::fromUtf8("su_0"));
      pdgmap[-3201] = std::pair<QString,QString>(QString("su_0_bar"), QString::fromUtf8("su_0_bar"));
      pdgmap[3203] = std::pair<QString,QString>(QString("su_1"), QString::fromUtf8("su_1"));
      pdgmap[-3203] = std::pair<QString,QString>(QString("su_1_bar"), QString::fromUtf8("su_1_bar"));
      pdgmap[3212] = std::pair<QString,QString>(QString("Sigma0"), QString::fromUtf8("Sigma0"));
      pdgmap[-3212] = std::pair<QString,QString>(QString("Sigma0_bar"), QString::fromUtf8("Sigma0_bar"));
      pdgmap[3214] = std::pair<QString,QString>(QString("Sigma*0"), QString::fromUtf8("Sigma*0"));
      pdgmap[-3214] = std::pair<QString,QString>(QString("Sigma*0_bar"), QString::fromUtf8("Sigma*0_bar"));
      pdgmap[3222] = std::pair<QString,QString>(QString("Sigma+"), QString::fromUtf8("Sigma+"));
      pdgmap[-3222] = std::pair<QString,QString>(QString("Sigma+_bar"), QString::fromUtf8("Sigma+_bar"));
      pdgmap[3224] = std::pair<QString,QString>(QString("Sigma*+"), QString::fromUtf8("Sigma*+"));
      pdgmap[-3224] = std::pair<QString,QString>(QString("Sigma*+_bar"), QString::fromUtf8("Sigma*+_bar"));
      pdgmap[3303] = std::pair<QString,QString>(QString("ss_1"), QString::fromUtf8("ss_1"));
      pdgmap[-3303] = std::pair<QString,QString>(QString("ss_1_bar"), QString::fromUtf8("ss_1_bar"));
      pdgmap[3312] = std::pair<QString,QString>(QString("Xi-"), QString::fromUtf8("Xi-"));
      pdgmap[-3312] = std::pair<QString,QString>(QString("Xi-_bar"), QString::fromUtf8("Xi-_bar"));
      pdgmap[3314] = std::pair<QString,QString>(QString("Xi*-"), QString::fromUtf8("Xi*-"));
      pdgmap[-3314] = std::pair<QString,QString>(QString("Xi*+"), QString::fromUtf8("Xi*+"));
      pdgmap[3322] = std::pair<QString,QString>(QString("Xi0"), QString::fromUtf8("Xi0"));
      pdgmap[-3322] = std::pair<QString,QString>(QString("Xi0_bar"), QString::fromUtf8("Xi0_bar"));
      pdgmap[3324] = std::pair<QString,QString>(QString("Xi*0"), QString::fromUtf8("Xi*0"));
      pdgmap[-3324] = std::pair<QString,QString>(QString("Xi*0_bar"), QString::fromUtf8("Xi*0_bar"));
      pdgmap[3334] = std::pair<QString,QString>(QString("Omega-"), QString::fromUtf8("Omega-"));
      pdgmap[-3334] = std::pair<QString,QString>(QString("Omega+"), QString::fromUtf8("Omega+"));
      pdgmap[4101] = std::pair<QString,QString>(QString("cd_0"), QString::fromUtf8("cd_0"));
      pdgmap[-4101] = std::pair<QString,QString>(QString("cd_0_bar"), QString::fromUtf8("cd_0_bar"));
      pdgmap[4103] = std::pair<QString,QString>(QString("cd_1"), QString::fromUtf8("cd_1"));
      pdgmap[-4103] = std::pair<QString,QString>(QString("cd_1_bar"), QString::fromUtf8("cd_1_bar"));
      pdgmap[4112] = std::pair<QString,QString>(QString("Sigma_c0"), QString::fromUtf8("Sigma_c0"));
      pdgmap[-4112] = std::pair<QString,QString>(QString("Sigma_c0_bar"), QString::fromUtf8("Sigma_c0_bar"));
      pdgmap[4114] = std::pair<QString,QString>(QString("Sigma*_c0"), QString::fromUtf8("Sigma*_c0"));
      pdgmap[-4114] = std::pair<QString,QString>(QString("Sigma*_c0_bar"), QString::fromUtf8("Sigma*_c0_bar"));
      pdgmap[4122] = std::pair<QString,QString>(QString("Lambda_c+"), QString::fromUtf8("Lambda_c+"));
      pdgmap[-4122] = std::pair<QString,QString>(QString("Lambda_c-"), QString::fromUtf8("Lambda_c-"));
      pdgmap[4132] = std::pair<QString,QString>(QString("Xi_c0"), QString::fromUtf8("Xi_c0"));
      pdgmap[-4132] = std::pair<QString,QString>(QString("Xi_c0_bar"), QString::fromUtf8("Xi_c0_bar"));
      pdgmap[4201] = std::pair<QString,QString>(QString("cu_0"), QString::fromUtf8("cu_0"));
      pdgmap[-4201] = std::pair<QString,QString>(QString("cu_0_bar"), QString::fromUtf8("cu_0_bar"));
      pdgmap[4203] = std::pair<QString,QString>(QString("cu_1"), QString::fromUtf8("cu_1"));
      pdgmap[-4203] = std::pair<QString,QString>(QString("cu_1_bar"), QString::fromUtf8("cu_1_bar"));
      pdgmap[4212] = std::pair<QString,QString>(QString("Sigma_c+"), QString::fromUtf8("Sigma_c+"));
      pdgmap[-4212] = std::pair<QString,QString>(QString("Sigma_c-"), QString::fromUtf8("Sigma_c-"));
      pdgmap[4214] = std::pair<QString,QString>(QString("Sigma*_c+"), QString::fromUtf8("Sigma*_c+"));
      pdgmap[-4214] = std::pair<QString,QString>(QString("Sigma*_c-"), QString::fromUtf8("Sigma*_c-"));
      pdgmap[4222] = std::pair<QString,QString>(QString("Sigma_c++"), QString::fromUtf8("Sigma_c++"));
      pdgmap[-4222] = std::pair<QString,QString>(QString("Sigma_c--"), QString::fromUtf8("Sigma_c--"));
      pdgmap[4224] = std::pair<QString,QString>(QString("Sigma*_c++"), QString::fromUtf8("Sigma*_c++"));
      pdgmap[-4224] = std::pair<QString,QString>(QString("Sigma*_c--"), QString::fromUtf8("Sigma*_c--"));
      pdgmap[4232] = std::pair<QString,QString>(QString("Xi_c+"), QString::fromUtf8("Xi_c+"));
      pdgmap[-4232] = std::pair<QString,QString>(QString("Xi_c-"), QString::fromUtf8("Xi_c-"));
      pdgmap[4301] = std::pair<QString,QString>(QString("cs_0"), QString::fromUtf8("cs_0"));
      pdgmap[-4301] = std::pair<QString,QString>(QString("cs_0_bar"), QString::fromUtf8("cs_0_bar"));
      pdgmap[4303] = std::pair<QString,QString>(QString("cs_1"), QString::fromUtf8("cs_1"));
      pdgmap[-4303] = std::pair<QString,QString>(QString("cs_1_bar"), QString::fromUtf8("cs_1_bar"));
      pdgmap[4312] = std::pair<QString,QString>(QString("Xi'_c0"), QString::fromUtf8("Xi'_c0"));
      pdgmap[-4312] = std::pair<QString,QString>(QString("Xi'_c0_bar"), QString::fromUtf8("Xi'_c0_bar"));
      pdgmap[4314] = std::pair<QString,QString>(QString("Xi*_c0"), QString::fromUtf8("Xi*_c0"));
      pdgmap[-4314] = std::pair<QString,QString>(QString("Xi*_c0_bar"), QString::fromUtf8("Xi*_c0_bar"));
      pdgmap[4322] = std::pair<QString,QString>(QString("Xi'_c+"), QString::fromUtf8("Xi'_c+"));
      pdgmap[-4322] = std::pair<QString,QString>(QString("Xi'_c-"), QString::fromUtf8("Xi'_c-"));
      pdgmap[4324] = std::pair<QString,QString>(QString("Xi*_c+"), QString::fromUtf8("Xi*_c+"));
      pdgmap[-4324] = std::pair<QString,QString>(QString("Xi*_c-"), QString::fromUtf8("Xi*_c-"));
      pdgmap[4332] = std::pair<QString,QString>(QString("Omega_c0"), QString::fromUtf8("Omega_c0"));
      pdgmap[-4332] = std::pair<QString,QString>(QString("Omega_c0_bar"), QString::fromUtf8("Omega_c0_bar"));
      pdgmap[4334] = std::pair<QString,QString>(QString("Omega*_c0"), QString::fromUtf8("Omega*_c0"));
      pdgmap[-4334] = std::pair<QString,QString>(QString("Omega*_c0_bar"), QString::fromUtf8("Omega*_c0_bar"));
      pdgmap[4403] = std::pair<QString,QString>(QString("cc_1"), QString::fromUtf8("cc_1"));
      pdgmap[-4403] = std::pair<QString,QString>(QString("cc_1_bar"), QString::fromUtf8("cc_1_bar"));
      pdgmap[4412] = std::pair<QString,QString>(QString("Xi_cc+"), QString::fromUtf8("Xi_cc+"));
      pdgmap[-4412] = std::pair<QString,QString>(QString("Xi_cc-"), QString::fromUtf8("Xi_cc-"));
      pdgmap[4414] = std::pair<QString,QString>(QString("Xi*_cc+"), QString::fromUtf8("Xi*_cc+"));
      pdgmap[-4414] = std::pair<QString,QString>(QString("Xi*_cc-"), QString::fromUtf8("Xi*_cc-"));
      pdgmap[4422] = std::pair<QString,QString>(QString("Xi_cc++"), QString::fromUtf8("Xi_cc++"));
      pdgmap[-4422] = std::pair<QString,QString>(QString("Xi_cc--"), QString::fromUtf8("Xi_cc--"));
      pdgmap[4424] = std::pair<QString,QString>(QString("Xi*_cc++"), QString::fromUtf8("Xi*_cc++"));
      pdgmap[-4424] = std::pair<QString,QString>(QString("Xi*_cc--"), QString::fromUtf8("Xi*_cc--"));
      pdgmap[4432] = std::pair<QString,QString>(QString("Omega_cc+"), QString::fromUtf8("Omega_cc+"));
      pdgmap[-4432] = std::pair<QString,QString>(QString("Omega_cc-"), QString::fromUtf8("Omega_cc-"));
      pdgmap[4434] = std::pair<QString,QString>(QString("Omega*_cc+"), QString::fromUtf8("Omega*_cc+"));
      pdgmap[-4434] = std::pair<QString,QString>(QString("Omega*_cc-"), QString::fromUtf8("Omega*_cc-"));
      pdgmap[4444] = std::pair<QString,QString>(QString("Omega*_ccc++"), QString::fromUtf8("Omega*_ccc++"));
      pdgmap[-4444] = std::pair<QString,QString>(QString("Omega*_ccc--"), QString::fromUtf8("Omega*_ccc--"));
      pdgmap[5101] = std::pair<QString,QString>(QString("bd_0"), QString::fromUtf8("bd_0"));
      pdgmap[-5101] = std::pair<QString,QString>(QString("bd_0_bar"), QString::fromUtf8("bd_0_bar"));
      pdgmap[5103] = std::pair<QString,QString>(QString("bd_1"), QString::fromUtf8("bd_1"));
      pdgmap[-5103] = std::pair<QString,QString>(QString("bd_1_bar"), QString::fromUtf8("bd_1_bar"));
      pdgmap[5112] = std::pair<QString,QString>(QString("Sigma_b-"), QString::fromUtf8("Sigma_b-"));
      pdgmap[-5112] = std::pair<QString,QString>(QString("Sigma_b-_bar"), QString::fromUtf8("Sigma_b-_bar"));
      pdgmap[5114] = std::pair<QString,QString>(QString("Sigma*_b-"), QString::fromUtf8("Sigma*_b-"));
      pdgmap[-5114] = std::pair<QString,QString>(QString("Sigma*_b-_bar"), QString::fromUtf8("Sigma*_b-_bar"));
      pdgmap[5122] = std::pair<QString,QString>(QString("Lambda_b0"), QString::fromUtf8("Lambda_b0"));
      pdgmap[-5122] = std::pair<QString,QString>(QString("Lambda_b0_bar"), QString::fromUtf8("Lambda_b0_bar"));
      pdgmap[5132] = std::pair<QString,QString>(QString("Xi_b-"), QString::fromUtf8("Xi_b-"));
      pdgmap[-5132] = std::pair<QString,QString>(QString("Xi_b+"), QString::fromUtf8("Xi_b+"));
      pdgmap[5142] = std::pair<QString,QString>(QString("Xi_bc0"), QString::fromUtf8("Xi_bc0"));
      pdgmap[-5142] = std::pair<QString,QString>(QString("Xi_bc0_bar"), QString::fromUtf8("Xi_bc0_bar"));
      pdgmap[5201] = std::pair<QString,QString>(QString("bu_0"), QString::fromUtf8("bu_0"));
      pdgmap[-5201] = std::pair<QString,QString>(QString("bu_0_bar"), QString::fromUtf8("bu_0_bar"));
      pdgmap[5203] = std::pair<QString,QString>(QString("bu_1"), QString::fromUtf8("bu_1"));
      pdgmap[-5203] = std::pair<QString,QString>(QString("bu_1_bar"), QString::fromUtf8("bu_1_bar"));
      pdgmap[5212] = std::pair<QString,QString>(QString("Sigma_b0"), QString::fromUtf8("Sigma_b0"));
      pdgmap[-5212] = std::pair<QString,QString>(QString("Sigma_b0_bar"), QString::fromUtf8("Sigma_b0_bar"));
      pdgmap[5214] = std::pair<QString,QString>(QString("Sigma*_b0"), QString::fromUtf8("Sigma*_b0"));
      pdgmap[-5214] = std::pair<QString,QString>(QString("Sigma*_b0_bar"), QString::fromUtf8("Sigma*_b0_bar"));
      pdgmap[5222] = std::pair<QString,QString>(QString("Sigma_b+"), QString::fromUtf8("Sigma_b+"));
      pdgmap[-5222] = std::pair<QString,QString>(QString("Sigma_b+_bar"), QString::fromUtf8("Sigma_b+_bar"));
      pdgmap[5224] = std::pair<QString,QString>(QString("Sigma*_b+"), QString::fromUtf8("Sigma*_b+"));
      pdgmap[-5224] = std::pair<QString,QString>(QString("Sigma*_b+_bar"), QString::fromUtf8("Sigma*_b+_bar"));
      pdgmap[5232] = std::pair<QString,QString>(QString("Xi_b0"), QString::fromUtf8("Xi_b0"));
      pdgmap[-5232] = std::pair<QString,QString>(QString("Xi_b0_bar"), QString::fromUtf8("Xi_b0_bar"));
      pdgmap[5242] = std::pair<QString,QString>(QString("Xi_bc+"), QString::fromUtf8("Xi_bc+"));
      pdgmap[-5242] = std::pair<QString,QString>(QString("Xi_bc-"), QString::fromUtf8("Xi_bc-"));
      pdgmap[5301] = std::pair<QString,QString>(QString("bs_0"), QString::fromUtf8("bs_0"));
      pdgmap[-5301] = std::pair<QString,QString>(QString("bs_0_bar"), QString::fromUtf8("bs_0_bar"));
      pdgmap[5303] = std::pair<QString,QString>(QString("bs_1"), QString::fromUtf8("bs_1"));
      pdgmap[-5303] = std::pair<QString,QString>(QString("bs_1_bar"), QString::fromUtf8("bs_1_bar"));
      pdgmap[5312] = std::pair<QString,QString>(QString("Xi'_b-"), QString::fromUtf8("Xi'_b-"));
      pdgmap[-5312] = std::pair<QString,QString>(QString("Xi'_b+"), QString::fromUtf8("Xi'_b+"));
      pdgmap[5314] = std::pair<QString,QString>(QString("Xi*_b-"), QString::fromUtf8("Xi*_b-"));
      pdgmap[-5314] = std::pair<QString,QString>(QString("Xi*_b+"), QString::fromUtf8("Xi*_b+"));
      pdgmap[5322] = std::pair<QString,QString>(QString("Xi'_b0"), QString::fromUtf8("Xi'_b0"));
      pdgmap[-5322] = std::pair<QString,QString>(QString("Xi'_b0_bar"), QString::fromUtf8("Xi'_b0_bar"));
      pdgmap[5324] = std::pair<QString,QString>(QString("Xi*_b0"), QString::fromUtf8("Xi*_b0"));
      pdgmap[-5324] = std::pair<QString,QString>(QString("Xi*_b0_bar"), QString::fromUtf8("Xi*_b0_bar"));
      pdgmap[5332] = std::pair<QString,QString>(QString("Omega_b-"), QString::fromUtf8("Omega_b-"));
      pdgmap[-5332] = std::pair<QString,QString>(QString("Omega_b+"), QString::fromUtf8("Omega_b+"));
      pdgmap[5334] = std::pair<QString,QString>(QString("Omega*_b-"), QString::fromUtf8("Omega*_b-"));
      pdgmap[-5334] = std::pair<QString,QString>(QString("Omega*_b+"), QString::fromUtf8("Omega*_b+"));
      pdgmap[5342] = std::pair<QString,QString>(QString("Omega_bc0"), QString::fromUtf8("Omega_bc0"));
      pdgmap[-5342] = std::pair<QString,QString>(QString("Omega_bc0_bar"), QString::fromUtf8("Omega_bc0_bar"));
      pdgmap[5401] = std::pair<QString,QString>(QString("bc_0"), QString::fromUtf8("bc_0"));
      pdgmap[-5401] = std::pair<QString,QString>(QString("bc_0_bar"), QString::fromUtf8("bc_0_bar"));
      pdgmap[5403] = std::pair<QString,QString>(QString("bc_1"), QString::fromUtf8("bc_1"));
      pdgmap[-5403] = std::pair<QString,QString>(QString("bc_1_bar"), QString::fromUtf8("bc_1_bar"));
      pdgmap[5412] = std::pair<QString,QString>(QString("Xi'_bc0"), QString::fromUtf8("Xi'_bc0"));
      pdgmap[-5412] = std::pair<QString,QString>(QString("Xi'_bc0_bar"), QString::fromUtf8("Xi'_bc0_bar"));
      pdgmap[5414] = std::pair<QString,QString>(QString("Xi*_bc0"), QString::fromUtf8("Xi*_bc0"));
      pdgmap[-5414] = std::pair<QString,QString>(QString("Xi*_bc0_bar"), QString::fromUtf8("Xi*_bc0_bar"));
      pdgmap[5422] = std::pair<QString,QString>(QString("Xi'_bc+"), QString::fromUtf8("Xi'_bc+"));
      pdgmap[-5422] = std::pair<QString,QString>(QString("Xi'_bc-"), QString::fromUtf8("Xi'_bc-"));
      pdgmap[5424] = std::pair<QString,QString>(QString("Xi*_bc+"), QString::fromUtf8("Xi*_bc+"));
      pdgmap[-5424] = std::pair<QString,QString>(QString("Xi*_bc-"), QString::fromUtf8("Xi*_bc-"));
      pdgmap[5432] = std::pair<QString,QString>(QString("Omega'_bc0"), QString::fromUtf8("Omega'_bc0"));
      pdgmap[-5432] = std::pair<QString,QString>(QString("Omega'_bc0_bar"), QString::fromUtf8("Omega'_bc0_bar"));
      pdgmap[5434] = std::pair<QString,QString>(QString("Omega*_bc0"), QString::fromUtf8("Omega*_bc0"));
      pdgmap[-5434] = std::pair<QString,QString>(QString("Omega*_bc0_bar"), QString::fromUtf8("Omega*_bc0_bar"));
      pdgmap[5442] = std::pair<QString,QString>(QString("Omega_bcc+"), QString::fromUtf8("Omega_bcc+"));
      pdgmap[-5442] = std::pair<QString,QString>(QString("Omega_bcc+_bar"), QString::fromUtf8("Omega_bcc+_bar"));
      pdgmap[5444] = std::pair<QString,QString>(QString("Omega*_bcc+"), QString::fromUtf8("Omega*_bcc+"));
      pdgmap[-5444] = std::pair<QString,QString>(QString("Omega*_bcc-"), QString::fromUtf8("Omega*_bcc-"));
      pdgmap[5503] = std::pair<QString,QString>(QString("bb_1"), QString::fromUtf8("bb_1"));
      pdgmap[-5503] = std::pair<QString,QString>(QString("bb_1_bar"), QString::fromUtf8("bb_1_bar"));
      pdgmap[5512] = std::pair<QString,QString>(QString("Xi_bb-"), QString::fromUtf8("Xi_bb-"));
      pdgmap[-5512] = std::pair<QString,QString>(QString("Xi_bb+"), QString::fromUtf8("Xi_bb+"));
      pdgmap[5514] = std::pair<QString,QString>(QString("Xi*_bb-"), QString::fromUtf8("Xi*_bb-"));
      pdgmap[-5514] = std::pair<QString,QString>(QString("Xi*_bb+"), QString::fromUtf8("Xi*_bb+"));
      pdgmap[5522] = std::pair<QString,QString>(QString("Xi_bb0"), QString::fromUtf8("Xi_bb0"));
      pdgmap[-5522] = std::pair<QString,QString>(QString("Xi_bb0_bar"), QString::fromUtf8("Xi_bb0_bar"));
      pdgmap[5524] = std::pair<QString,QString>(QString("Xi*_bb0"), QString::fromUtf8("Xi*_bb0"));
      pdgmap[-5524] = std::pair<QString,QString>(QString("Xi*_bb0_bar"), QString::fromUtf8("Xi*_bb0_bar"));
      pdgmap[5532] = std::pair<QString,QString>(QString("Omega_bb-"), QString::fromUtf8("Omega_bb-"));
      pdgmap[-5532] = std::pair<QString,QString>(QString("Omega_bb+"), QString::fromUtf8("Omega_bb+"));
      pdgmap[5534] = std::pair<QString,QString>(QString("Omega*_bb-"), QString::fromUtf8("Omega*_bb-"));
      pdgmap[-5534] = std::pair<QString,QString>(QString("Omega*_bb+"), QString::fromUtf8("Omega*_bb+"));
      pdgmap[5542] = std::pair<QString,QString>(QString("Omega_bbc0"), QString::fromUtf8("Omega_bbc0"));
      pdgmap[-5542] = std::pair<QString,QString>(QString("Omega_bbc0_bar"), QString::fromUtf8("Omega_bbc0_bar"));
      pdgmap[5544] = std::pair<QString,QString>(QString("Omega*_bbc0"), QString::fromUtf8("Omega*_bbc0"));
      pdgmap[-5544] = std::pair<QString,QString>(QString("Omega*_bbc0_bar"), QString::fromUtf8("Omega*_bbc0_bar"));
      pdgmap[5554] = std::pair<QString,QString>(QString("Omega*_bbb-"), QString::fromUtf8("Omega*_bbb-"));
      pdgmap[-5554] = std::pair<QString,QString>(QString("Omega*_bbb+"), QString::fromUtf8("Omega*_bbb+"));
      pdgmap[10111] = std::pair<QString,QString>(QString("a_00"), QString::fromUtf8("a_00"));
      pdgmap[10113] = std::pair<QString,QString>(QString("b_10"), QString::fromUtf8("b_10"));
      pdgmap[10211] = std::pair<QString,QString>(QString("a_0+"), QString::fromUtf8("a_0+"));
      pdgmap[-10211] = std::pair<QString,QString>(QString("a_0-"), QString::fromUtf8("a_0-"));
      pdgmap[10213] = std::pair<QString,QString>(QString("b_1+"), QString::fromUtf8("b_1+"));
      pdgmap[-10213] = std::pair<QString,QString>(QString("b_1-"), QString::fromUtf8("b_1-"));
      pdgmap[10221] = std::pair<QString,QString>(QString("f_0"), QString::fromUtf8("f_0"));
      pdgmap[10223] = std::pair<QString,QString>(QString("h_1"), QString::fromUtf8("h_1"));
      pdgmap[10311] = std::pair<QString,QString>(QString("K*_00"), QString::fromUtf8("K*_00"));
      pdgmap[-10311] = std::pair<QString,QString>(QString("K*_00_bar"), QString::fromUtf8("K*_00_bar"));
      pdgmap[10313] = std::pair<QString,QString>(QString("K_10"), QString::fromUtf8("K_10"));
      pdgmap[-10313] = std::pair<QString,QString>(QString("K_10_bar"), QString::fromUtf8("K_10_bar"));
      pdgmap[10321] = std::pair<QString,QString>(QString("K*_0+"), QString::fromUtf8("K*_0+"));
      pdgmap[-10321] = std::pair<QString,QString>(QString("K*_0-"), QString::fromUtf8("K*_0-"));
      pdgmap[10323] = std::pair<QString,QString>(QString("K_1+"), QString::fromUtf8("K_1+"));
      pdgmap[-10323] = std::pair<QString,QString>(QString("K_1-"), QString::fromUtf8("K_1-"));
      pdgmap[10331] = std::pair<QString,QString>(QString("f'_0"), QString::fromUtf8("f'_0"));
      pdgmap[10333] = std::pair<QString,QString>(QString("h'_1"), QString::fromUtf8("h'_1"));
      pdgmap[10411] = std::pair<QString,QString>(QString("D*_0+"), QString::fromUtf8("D*_0+"));
      pdgmap[-10411] = std::pair<QString,QString>(QString("D*_0-"), QString::fromUtf8("D*_0-"));
      pdgmap[10413] = std::pair<QString,QString>(QString("D_1+"), QString::fromUtf8("D_1+"));
      pdgmap[-10413] = std::pair<QString,QString>(QString("D_1-"), QString::fromUtf8("D_1-"));
      pdgmap[10421] = std::pair<QString,QString>(QString("D*_00"), QString::fromUtf8("D*_00"));
      pdgmap[-10421] = std::pair<QString,QString>(QString("D*_00_bar"), QString::fromUtf8("D*_00_bar"));
      pdgmap[10423] = std::pair<QString,QString>(QString("D_10"), QString::fromUtf8("D_10"));
      pdgmap[-10423] = std::pair<QString,QString>(QString("D_10_bar"), QString::fromUtf8("D_10_bar"));
      pdgmap[10431] = std::pair<QString,QString>(QString("D*_0s+"), QString::fromUtf8("D*_0s+"));
      pdgmap[-10431] = std::pair<QString,QString>(QString("D*_0s-"), QString::fromUtf8("D*_0s-"));
      pdgmap[10433] = std::pair<QString,QString>(QString("D_1s+"), QString::fromUtf8("D_1s+"));
      pdgmap[-10433] = std::pair<QString,QString>(QString("D_1s-"), QString::fromUtf8("D_1s-"));
      pdgmap[10441] = std::pair<QString,QString>(QString("chi_0c"), QString::fromUtf8("chi_0c"));
      pdgmap[10443] = std::pair<QString,QString>(QString("h_1c"), QString::fromUtf8("h_1c"));
      pdgmap[10511] = std::pair<QString,QString>(QString("B*_00"), QString::fromUtf8("B*_00"));
      pdgmap[-10511] = std::pair<QString,QString>(QString("B*_00_bar"), QString::fromUtf8("B*_00_bar"));
      pdgmap[10513] = std::pair<QString,QString>(QString("B_10"), QString::fromUtf8("B_10"));
      pdgmap[-10513] = std::pair<QString,QString>(QString("B_10_bar"), QString::fromUtf8("B_10_bar"));
      pdgmap[10521] = std::pair<QString,QString>(QString("B*_0+"), QString::fromUtf8("B*_0+"));
      pdgmap[-10521] = std::pair<QString,QString>(QString("B*_0-"), QString::fromUtf8("B*_0-"));
      pdgmap[10523] = std::pair<QString,QString>(QString("B_1+"), QString::fromUtf8("B_1+"));
      pdgmap[-10523] = std::pair<QString,QString>(QString("B_1-"), QString::fromUtf8("B_1-"));
      pdgmap[10531] = std::pair<QString,QString>(QString("B*_0s0"), QString::fromUtf8("B*_0s0"));
      pdgmap[-10531] = std::pair<QString,QString>(QString("B*_0s0_bar"), QString::fromUtf8("B*_0s0_bar"));
      pdgmap[10533] = std::pair<QString,QString>(QString("B_1s0"), QString::fromUtf8("B_1s0"));
      pdgmap[-10533] = std::pair<QString,QString>(QString("B_1s0_bar"), QString::fromUtf8("B_1s0_bar"));
      pdgmap[10541] = std::pair<QString,QString>(QString("B*_0c+"), QString::fromUtf8("B*_0c+"));
      pdgmap[-10541] = std::pair<QString,QString>(QString("B*_0c-"), QString::fromUtf8("B*_0c-"));
      pdgmap[10543] = std::pair<QString,QString>(QString("B_1c+"), QString::fromUtf8("B_1c+"));
      pdgmap[-10543] = std::pair<QString,QString>(QString("B_1c-"), QString::fromUtf8("B_1c-"));
      pdgmap[10551] = std::pair<QString,QString>(QString("chi_0b"), QString::fromUtf8("chi_0b"));
      pdgmap[10553] = std::pair<QString,QString>(QString("h_1b"), QString::fromUtf8("h_1b"));
      pdgmap[20113] = std::pair<QString,QString>(QString("a_10"), QString::fromUtf8("a_10"));
      pdgmap[20213] = std::pair<QString,QString>(QString("a_1+"), QString::fromUtf8("a_1+"));
      pdgmap[-20213] = std::pair<QString,QString>(QString("a_1-"), QString::fromUtf8("a_1-"));
      pdgmap[20223] = std::pair<QString,QString>(QString("f_1"), QString::fromUtf8("f_1"));
      pdgmap[20313] = std::pair<QString,QString>(QString("K*_10"), QString::fromUtf8("K*_10"));
      pdgmap[-20313] = std::pair<QString,QString>(QString("K*_10_bar"), QString::fromUtf8("K*_10_bar"));
      pdgmap[20323] = std::pair<QString,QString>(QString("K*_1+"), QString::fromUtf8("K*_1+"));
      pdgmap[-20323] = std::pair<QString,QString>(QString("K*_1-"), QString::fromUtf8("K*_1-"));
      pdgmap[20333] = std::pair<QString,QString>(QString("f'_1"), QString::fromUtf8("f'_1"));
      pdgmap[20413] = std::pair<QString,QString>(QString("D*_1+"), QString::fromUtf8("D*_1+"));
      pdgmap[-20413] = std::pair<QString,QString>(QString("D*_1-"), QString::fromUtf8("D*_1-"));
      pdgmap[20423] = std::pair<QString,QString>(QString("D*_10"), QString::fromUtf8("D*_10"));
      pdgmap[-20423] = std::pair<QString,QString>(QString("D*_10_bar"), QString::fromUtf8("D*_10_bar"));
      pdgmap[20433] = std::pair<QString,QString>(QString("D*_1s+"), QString::fromUtf8("D*_1s+"));
      pdgmap[-20433] = std::pair<QString,QString>(QString("D*_1s-"), QString::fromUtf8("D*_1s-"));
      pdgmap[20443] = std::pair<QString,QString>(QString("chi_1c"), QString::fromUtf8("chi_1c"));
      pdgmap[20513] = std::pair<QString,QString>(QString("B*_10"), QString::fromUtf8("B*_10"));
      pdgmap[-20513] = std::pair<QString,QString>(QString("B*_10_bar"), QString::fromUtf8("B*_10_bar"));
      pdgmap[20523] = std::pair<QString,QString>(QString("B*_1+"), QString::fromUtf8("B*_1+"));
      pdgmap[-20523] = std::pair<QString,QString>(QString("B*_1-"), QString::fromUtf8("B*_1-"));
      pdgmap[20533] = std::pair<QString,QString>(QString("B*_1s0"), QString::fromUtf8("B*_1s0"));
      pdgmap[-20533] = std::pair<QString,QString>(QString("B*_1s0_bar"), QString::fromUtf8("B*_1s0_bar"));
      pdgmap[20543] = std::pair<QString,QString>(QString("B*_1c+"), QString::fromUtf8("B*_1c+"));
      pdgmap[-20543] = std::pair<QString,QString>(QString("B*_1c-"), QString::fromUtf8("B*_1c-"));
      pdgmap[20553] = std::pair<QString,QString>(QString("chi_1b"), QString::fromUtf8("chi_1b"));
      pdgmap[100443] = std::pair<QString,QString>(QString("psi'"), QString::fromUtf8("psi'"));
      pdgmap[100553] = std::pair<QString,QString>(QString("Upsilon'"), QString::fromUtf8("Upsilon'"));
      pdgmap[1000001] = std::pair<QString,QString>(QString("~d_L"), QString::fromUtf8("~d_L"));
      pdgmap[-1000001] = std::pair<QString,QString>(QString("~d_L_bar"), QString::fromUtf8("~d_L_bar"));
      pdgmap[1000002] = std::pair<QString,QString>(QString("~u_L"), QString::fromUtf8("~u_L"));
      pdgmap[-1000002] = std::pair<QString,QString>(QString("~u_L_bar"), QString::fromUtf8("~u_L_bar"));
      pdgmap[1000003] = std::pair<QString,QString>(QString("~s_L"), QString::fromUtf8("~s_L"));
      pdgmap[-1000003] = std::pair<QString,QString>(QString("~s_L_bar"), QString::fromUtf8("~s_L_bar"));
      pdgmap[1000004] = std::pair<QString,QString>(QString("~c_L"), QString::fromUtf8("~c_L"));
      pdgmap[-1000004] = std::pair<QString,QString>(QString("~c_L_bar"), QString::fromUtf8("~c_L_bar"));
      pdgmap[1000005] = std::pair<QString,QString>(QString("~b_1"), QString::fromUtf8("~b_1"));
      pdgmap[-1000005] = std::pair<QString,QString>(QString("~b_1_bar"), QString::fromUtf8("~b_1_bar"));
      pdgmap[1000006] = std::pair<QString,QString>(QString("~t_1"), QString::fromUtf8("~t_1"));
      pdgmap[-1000006] = std::pair<QString,QString>(QString("~t_1_bar"), QString::fromUtf8("~t_1_bar"));
      pdgmap[1000011] = std::pair<QString,QString>(QString("~e_L-"), QString::fromUtf8("~e_L-"));
      pdgmap[-1000011] = std::pair<QString,QString>(QString("~e_L+"), QString::fromUtf8("~e_L+"));
      pdgmap[1000012] = std::pair<QString,QString>(QString("~nu_eL"), QString::fromUtf8("~nu_eL"));
      pdgmap[-1000012] = std::pair<QString,QString>(QString("~nu_eL_bar"), QString::fromUtf8("~nu_eL_bar"));
      pdgmap[1000013] = std::pair<QString,QString>(QString("~mu_L-"), QString::fromUtf8("~mu_L-"));
      pdgmap[-1000013] = std::pair<QString,QString>(QString("~mu_L+"), QString::fromUtf8("~mu_L+"));
      pdgmap[1000014] = std::pair<QString,QString>(QString("~nu_muL"), QString::fromUtf8("~nu_muL"));
      pdgmap[-1000014] = std::pair<QString,QString>(QString("~nu_muL_bar"), QString::fromUtf8("~nu_muL_bar"));
      pdgmap[1000015] = std::pair<QString,QString>(QString("~tau_1-"), QString::fromUtf8("~tau_1-"));
      pdgmap[-1000015] = std::pair<QString,QString>(QString("~tau_1+"), QString::fromUtf8("~tau_1+"));
      pdgmap[1000016] = std::pair<QString,QString>(QString("~nu_tauL"), QString::fromUtf8("~nu_tauL"));
      pdgmap[-1000016] = std::pair<QString,QString>(QString("~nu_tauL_bar"), QString::fromUtf8("~nu_tauL_bar"));
      pdgmap[1000021] = std::pair<QString,QString>(QString("~g"), QString::fromUtf8("~g"));
      pdgmap[1000022] = std::pair<QString,QString>(QString("~chi_10"), QString::fromUtf8("~chi_10"));
      pdgmap[1000023] = std::pair<QString,QString>(QString("~chi_20"), QString::fromUtf8("~chi_20"));
      pdgmap[1000024] = std::pair<QString,QString>(QString("~chi_1+"), QString::fromUtf8("~chi_1+"));
      pdgmap[-1000024] = std::pair<QString,QString>(QString("~chi_1-"), QString::fromUtf8("~chi_1-"));
      pdgmap[1000025] = std::pair<QString,QString>(QString("~chi_30"), QString::fromUtf8("~chi_30"));
      pdgmap[1000035] = std::pair<QString,QString>(QString("~chi_40"), QString::fromUtf8("~chi_40"));
      pdgmap[1000037] = std::pair<QString,QString>(QString("~chi_2+"), QString::fromUtf8("~chi_2+"));
      pdgmap[-1000037] = std::pair<QString,QString>(QString("~chi_2-"), QString::fromUtf8("~chi_2-"));
      pdgmap[1000039] = std::pair<QString,QString>(QString("~gravitino"), QString::fromUtf8("~gravitino"));
      pdgmap[2000001] = std::pair<QString,QString>(QString("~d_R"), QString::fromUtf8("~d_R"));
      pdgmap[-2000001] = std::pair<QString,QString>(QString("~d_R_bar"), QString::fromUtf8("~d_R_bar"));
      pdgmap[2000002] = std::pair<QString,QString>(QString("~u_R"), QString::fromUtf8("~u_R"));
      pdgmap[-2000002] = std::pair<QString,QString>(QString("~u_R_bar"), QString::fromUtf8("~u_R_bar"));
      pdgmap[2000003] = std::pair<QString,QString>(QString("~s_R"), QString::fromUtf8("~s_R"));
      pdgmap[-2000003] = std::pair<QString,QString>(QString("~s_R_bar"), QString::fromUtf8("~s_R_bar"));
      pdgmap[2000004] = std::pair<QString,QString>(QString("~c_R"), QString::fromUtf8("~c_R"));
      pdgmap[-2000004] = std::pair<QString,QString>(QString("~c_R_bar"), QString::fromUtf8("~c_R_bar"));
      pdgmap[2000005] = std::pair<QString,QString>(QString("~b_2"), QString::fromUtf8("~b_2"));
      pdgmap[-2000005] = std::pair<QString,QString>(QString("~b_2_bar"), QString::fromUtf8("~b_2_bar"));
      pdgmap[2000006] = std::pair<QString,QString>(QString("~t_2"), QString::fromUtf8("~t_2"));
      pdgmap[-2000006] = std::pair<QString,QString>(QString("~t_2_bar"), QString::fromUtf8("~t_2_bar"));
      pdgmap[2000011] = std::pair<QString,QString>(QString("~e_R-"), QString::fromUtf8("~e_R-"));
      pdgmap[-2000011] = std::pair<QString,QString>(QString("~e_R+"), QString::fromUtf8("~e_R+"));
      pdgmap[2000012] = std::pair<QString,QString>(QString("~nu_eR"), QString::fromUtf8("~nu_eR"));
      pdgmap[-2000012] = std::pair<QString,QString>(QString("~nu_eR_bar"), QString::fromUtf8("~nu_eR_bar"));
      pdgmap[2000013] = std::pair<QString,QString>(QString("~mu_R-"), QString::fromUtf8("~mu_R-"));
      pdgmap[-2000013] = std::pair<QString,QString>(QString("~mu_R+"), QString::fromUtf8("~mu_R+"));
      pdgmap[2000014] = std::pair<QString,QString>(QString("~nu_muR"), QString::fromUtf8("~nu_muR"));
      pdgmap[-2000014] = std::pair<QString,QString>(QString("~nu_muR_bar"), QString::fromUtf8("~nu_muR_bar"));
      pdgmap[2000015] = std::pair<QString,QString>(QString("~tau_2-"), QString::fromUtf8("~tau_2-"));
      pdgmap[-2000015] = std::pair<QString,QString>(QString("~tau_2+"), QString::fromUtf8("~tau_2+"));
      pdgmap[2000016] = std::pair<QString,QString>(QString("~nu_tauR"), QString::fromUtf8("~nu_tauR"));
      pdgmap[-2000016] = std::pair<QString,QString>(QString("~nu_tauR_bar"), QString::fromUtf8("~nu_tauR_bar"));
      pdgmap[4000001] = std::pair<QString,QString>(QString("d*"), QString::fromUtf8("d*"));
      pdgmap[-4000001] = std::pair<QString,QString>(QString("d*_bar"), QString::fromUtf8("d*_bar"));
      pdgmap[4000002] = std::pair<QString,QString>(QString("u*"), QString::fromUtf8("u*"));
      pdgmap[-4000002] = std::pair<QString,QString>(QString("u*_bar"), QString::fromUtf8("u*_bar"));
      pdgmap[4000011] = std::pair<QString,QString>(QString("e*-"), QString::fromUtf8("e*-"));
      pdgmap[-4000011] = std::pair<QString,QString>(QString("e*+"), QString::fromUtf8("e*+"));
      pdgmap[4000012] = std::pair<QString,QString>(QString("nu*_e0"), QString::fromUtf8("nu*_e0"));
      pdgmap[-4000012] = std::pair<QString,QString>(QString("nu*_e0_bar"), QString::fromUtf8("nu*_e0_bar"));
      init_done=true;
    }
}

