LCOV - code coverage report
Current view: top level - libs/HepPID/src - ParticleName.cc (source / functions) Coverage Total Hit
Test: coverage.info.cleaned Lines: 0.0 % 184 0
Test Date: 2026-06-18 09:49:19 Functions: 0.0 % 13 0

            Line data    Source code
       1              : // ----------------------------------------------------------------------
       2              : //
       3              : // ParticleName.cc
       4              : // Author: Lynn Garren and Walter Brown
       5              : //
       6              : //  Create a map that gives a standard name for each pre-defined 
       7              : //  particle ID number.   Also create a map for the reverse lookup of 
       8              : //  the ID number from a string.  These maps are initialized if and only if 
       9              : //  the public functions are called. Because the maps are static, 
      10              : //  the initialization happens only once.
      11              : //
      12              : //  The user NEVER calls ParticleNameInit()
      13              : //  We use a data table (struct Snames) so that compile time is not impacted.
      14              : //
      15              : //  public functions:
      16              : //     PartcleIdMap const &  getPartcleIdMap()
      17              : //     std::string              ParticleName( const int pid )
      18              : //     void                     listParticleNames( std::ostream & os  )
      19              : //
      20              : // ----------------------------------------------------------------------
      21              : 
      22              : #include <string>
      23              : #include <map>
      24              : #include <iostream>
      25              : #include <sstream>
      26              : #include <iomanip>        // width
      27              : #include <utility>        // make_pair
      28              : 
      29              : #include "HepPID/ParticleName.hh"
      30              : #include "HepPID/ParticleIDMethods.hh"
      31              : #include "HepPID/Version.hh"
      32              : 
      33              : namespace HepPID {
      34              : 
      35              : typedef  std::map< int, std::string >  PartcleIdMap;
      36              : typedef  std::map< std::string, int >  ParticleLookupMap;
      37              : 
      38              : ///
      39              : /// \class ParticleNameMap
      40              : /// \author Lynn Garren
      41              : ///
      42              : /// Used internally to store the static maps
      43              : ///
      44              : class ParticleNameMap{
      45              : 
      46              : public:
      47              : 
      48              :    typedef PartcleIdMap::const_iterator      idIterator;
      49              :    typedef ParticleLookupMap::const_iterator nameIterator;
      50              :    
      51            0 :    ParticleNameMap(PartcleIdMap m1,ParticleLookupMap m2)
      52            0 :    : itsNameMap(m1), itsLookupMap(m2) {}
      53            0 :    ~ParticleNameMap() {}
      54              :    
      55              :    PartcleIdMap       nameMap()    const { return itsNameMap; }
      56              :    ParticleLookupMap lookupMap()  const { return itsLookupMap; }
      57              :    idIterator   begin()               const { return itsNameMap.begin(); }
      58              :    idIterator   end()                 const { return itsNameMap.end(); }
      59              :    idIterator   find( const int & id) const { return itsNameMap.find(id); }
      60              :    nameIterator beginLookupMap()      const { return itsLookupMap.begin(); }
      61              :    nameIterator endLookupMap()        const { return itsLookupMap.end(); }
      62              :    nameIterator findString( const std::string & s) const { return itsLookupMap.find(s); }
      63              : 
      64              : private:
      65              :    
      66              :    PartcleIdMap       itsNameMap;
      67              :    ParticleLookupMap itsLookupMap;
      68              :    
      69              :    // copies are not allowed
      70              :    ParticleNameMap( const ParticleNameMap & );
      71              :    ParticleNameMap & operator = ( const ParticleNameMap & );
      72              :    
      73              : };
      74              : 
      75              : namespace {     // ParticleNameInit and ParticleNameMap are private
      76              : 
      77            0 : ParticleNameMap const &  ParticleNameInit()
      78              : {
      79              : 
      80              :   PartcleIdMap  m;
      81              :   ParticleLookupMap nameMap;
      82              : 
      83              :   static const struct {
      84              :       int pid;
      85              :       const char* pname;
      86              :   } SNames[] = {
      87              :       {          0, "" },
      88              :       {          1, "d" },
      89              :       {         -1, "d~" },
      90              :       {          2, "u" },
      91              :       {         -2, "u~" },
      92              :       {          3, "s" },
      93              :       {         -3, "s~" },
      94              :       {          4, "c" },
      95              :       {         -4, "c~" },
      96              :       {          5, "b" },
      97              :       {         -5, "b~" },
      98              :       {          6, "t" },
      99              :       {         -6, "t~" },
     100              :       {          7, "b'" },
     101              :       {         -7, "b'~" },
     102              :       {          8, "t'" },
     103              :       {         -8, "t'~" },
     104              :       {         11, "e^-" },
     105              :       {        -11, "e^+" },
     106              :       {         12, "nu_e" },
     107              :       {        -12, "nu_e~" },
     108              :       {         13, "mu^-" },
     109              :       {        -13, "mu^+" },
     110              :       {         14, "nu_mu" },
     111              :       {        -14, "nu_mu~" },
     112              :       {         15, "tau^-" },
     113              :       {        -15, "tau^+" },
     114              :       {         16, "nu_tau" },
     115              :       {        -16, "nu_tau~" },
     116              :       {         17, "tau'^-" },
     117              :       {        -17, "tau'^+" },
     118              :       {         18, "nu_tau'" },
     119              :       {        -18, "nu_tau'~" },
     120              :       {         21, "g" },
     121              :       {         22, "gamma" },
     122              :       {      10022, "virtual-photon" },
     123              :       {      20022, "Cerenkov-radiation" },
     124              :       {         23, "Z^0" },
     125              :       {         24, "W^+" },
     126              :       {        -24, "W^-" },
     127              :       {         25, "H_1^0" },
     128              :       {         32, "Z_2^0" },
     129              :       {         33, "Z_3^0" },
     130              :       {         34, "W_2^+" },
     131              :       {        -34, "W_2^-" },
     132              :       {         35, "H_2^0" },
     133              :       {         36, "H_3^0" },
     134              :       {         37, "H^+" },
     135              :       {        -37, "H^-" },
     136              :       {         39, "G"  },
     137              :       {         41, "R^0" },
     138              :       {        -41, "R~^0" },
     139              :       {         42, "LQ_c" },
     140              :       {        -42, "LQ_c~" },
     141              :       {         43, "Xu^0" },
     142              :       {         44, "Xu^+" },
     143              :       {        -44, "Xu^-" },
     144              :       {         51, "H_L^0" },
     145              :       {         52, "H_1^++" },
     146              :       {        -52, "H_1^--" },
     147              :       {         53, "H_2^+" },
     148              :       {        -53, "H_2^-" },
     149              :       {         54, "H_2^++" },
     150              :       {        -54, "H_2^--" },
     151              :       {         55, "H_4^0" },
     152              :       {        -55, "H_4~^0" },
     153              :       {         81, "generator-specific+81" },
     154              :       {         82, "generator-specific+82" },
     155              :       {         83, "generator-specific+83" },
     156              :       {         84, "generator-specific+84" },
     157              :       {         85, "generator-specific+85" },
     158              :       {         86, "generator-specific+86" },
     159              :       {         87, "generator-specific+87" },
     160              :       {         88, "generator-specific+88" },
     161              :       {         89, "generator-specific+89" },
     162              :       {         90, "generator-specific+90" },
     163              :       {         91, "generator-specific+91" },
     164              :       {         92, "generator-specific+92" },
     165              :       {         93, "generator-specific+93" },
     166              :       {         94, "generator-specific+94" },
     167              :       {         95, "generator-specific+95" },
     168              :       {         96, "generator-specific+96" },
     169              :       {         97, "generator-specific+97" },
     170              :       {         98, "generator-specific+98" },
     171              :       {         99, "generator-specific+99" },
     172              :       {        -81, "generator-specific-81" },
     173              :       {        -82, "generator-specific-82" },
     174              :       {        -83, "generator-specific-83" },
     175              :       {        -84, "generator-specific-84" },
     176              :       {        -85, "generator-specific-85" },
     177              :       {        -86, "generator-specific-86" },
     178              :       {        -87, "generator-specific-87" },
     179              :       {        -88, "generator-specific-88" },
     180              :       {        -89, "generator-specific-89" },
     181              :       {        -90, "generator-specific-90" },
     182              :       {        -91, "generator-specific-91" },
     183              :       {        -92, "generator-specific-92" },
     184              :       {        -93, "generator-specific-93" },
     185              :       {        -94, "generator-specific-94" },
     186              :       {        -95, "generator-specific-95" },
     187              :       {        -96, "generator-specific-96" },
     188              :       {        -97, "generator-specific-97" },
     189              :       {        -98, "generator-specific-98" },
     190              :       {        -99, "generator-specific-99" },
     191              :       {        100, "generator-specific+100" },
     192              :       {       -100, "generator-specific-100" },
     193              :       {        101, "geantino" },
     194              :       {        102, "charged-geantino" },
     195              :       {        110, "reggeon" },
     196              :       {        130, "K_L^0" },
     197              :       {        310, "K_S^0" },
     198              :       {        990, "pomeron" },
     199              :       {       9990, "odderon" },
     200              :       {    1000001, "susy-d_L" },
     201              :       {   -1000001, "susy-d_L~" },
     202              :       {    1000002, "susy-u_L" },
     203              :       {   -1000002, "susy-u_L~" },
     204              :       {    1000003, "susy-s_L" },
     205              :       {   -1000003, "susy-s_L~" },
     206              :       {    1000004, "susy-c_L" },
     207              :       {   -1000004, "susy-c_L~" },
     208              :       {    1000005, "susy-b_1" },
     209              :       {   -1000005, "susy-b_1~" },
     210              :       {    1000006, "susy-t_1" },
     211              :       {   -1000006, "susy-t_1~" },
     212              :       {    1000011, "susy-e_L^-" },
     213              :       {   -1000011, "susy-e_L^+" },
     214              :       {    1000012, "susy-nu_eL" },
     215              :       {   -1000012, "susy-nu_eL~" },
     216              :       {    1000013, "susy-mu_L^-" },
     217              :       {   -1000013, "susy-mu_L^+" },
     218              :       {    1000014, "susy-nu_muL" },
     219              :       {   -1000014, "susy-nu_muL~" },
     220              :       {    1000015, "susy-tau_L^-" },
     221              :       {   -1000015, "susy-tau_L^+" },
     222              :       {    1000016, "susy-nu_tauL" },
     223              :       {   -1000016, "susy-nu_tauL~" },
     224              :       {    1000021, "gluino" },
     225              :       {    1000022, "susy-chi_1^0" },
     226              :       {    1000023, "susy-chi_2^0" },
     227              :       {    1000024, "susy-chi_1^+" },
     228              :       {   -1000024, "susy-chi_1^-" },
     229              :       {    1000025, "susy-chi_3^0" },
     230              :       {    1000035, "susy-chi_4^0" },
     231              :       {    1000037, "susy-chi_2^+" },
     232              :       {   -1000037, "susy-chi_2^-" },
     233              :       {    1000039, "gravitino" },
     234              :       {    2000001, "susy-d_R" },
     235              :       {   -2000001, "susy-d_R~" },
     236              :       {    2000002, "susy-u_R" },
     237              :       {   -2000002, "susy-u_R~" },
     238              :       {    2000003, "susy-s_R" },
     239              :       {   -2000003, "susy-s_R~" },
     240              :       {    2000004, "susy-c_R" },
     241              :       {   -2000004, "susy-c_R~" },
     242              :       {    2000005, "susy-b_R" },
     243              :       {   -2000005, "susy-b_R~" },
     244              :       {    2000006, "susy-t_R" },
     245              :       {   -2000006, "susy-t_R~" },
     246              :       {    2000011, "susy-e_R^-" },
     247              :       {   -2000011, "susy-e_R^+" },
     248              :       {    2000012, "susy-nu_eR" },
     249              :       {   -2000012, "susy-nu_eR~" },
     250              :       {    2000013, "susy-mu_R^-" },
     251              :       {   -2000013, "susy-mu_R^+" },
     252              :       {    2000014, "susy-nu_muR" },
     253              :       {   -2000014, "susy-nu_muR~" },
     254              :       {    2000015, "susy-tau_R^-" },
     255              :       {   -2000015, "susy-tau_R^+" },
     256              :       {    2000016, "susy-nu_tauR" },
     257              :       {   -2000016, "susy-nu_tauR~" },
     258              :       {    3100021, "V8_tech" },
     259              :       {   -3100021, "V8_tech~" },
     260              :       {    3000111, "pi_tech^0" },
     261              :       {    3000115, "a_tech^0" },
     262              :       {    3060111, "pi_tech_22_1" },
     263              :       {    3160111, "pi_tech_22_8" },
     264              :       {    3000113, "rho_tech^0" },
     265              :       {    3130113, "rho_tech_11" },
     266              :       {    3140113, "rho_tech_12" },
     267              :       {    3150113, "rho_tech_21" },
     268              :       {    3160113, "rho_tech_22" },
     269              :       {    3000211, "pi_tech^+" },
     270              :       {   -3000211, "pi_tech^-" },
     271              :       {    3000213, "rho_tech^+" },
     272              :       {   -3000213, "rho_tech^-" },
     273              :       {    3000215, "a_tech^+" },
     274              :       {   -3000215, "a_tech^-" },
     275              :       {    3000221, "pi'_tech" },
     276              :       {    3100221, "eta_tech" },
     277              :       {    3000223, "omega_tech" },
     278              :       {    4000001, "d*" },
     279              :       {   -4000001, "d*~" },
     280              :       {    4000002, "u*" },
     281              :       {   -4000002, "u*~" },
     282              :       {    4000011, "e*^-" },
     283              :       {   -4000011, "e*^+" },
     284              :       {    4000012, "nu*_e" },
     285              :       {   -4000012, "nu*_e~" },
     286              :       {    4000039, "G*" },
     287              :       {   -4000039, "G*~" },
     288              :       {    5000040, "black_hole" },
     289              :       {    5100001, "d_L^(1)" },
     290              :       {   -5100001, "d~_L^(1)" },
     291              :       {    5100002, "u_L^(1)" },
     292              :       {   -5100002, "u~_L^(1)" },
     293              :       {    5100003, "s_L^(1)" },
     294              :       {   -5100003, "s~_L^(1)" },
     295              :       {    5100004, "c_L^(1)" },
     296              :       {   -5100004, "c~_L^(1)" },
     297              :       {    5100005, "b_L^(1)" },
     298              :       {   -5100005, "b~_L^(1)" },
     299              :       {    5100006, "t_L^(1)" },
     300              :       {   -5100006, "t~_L^(1)" },
     301              :       {    5100011, "e_L^(1)-" },
     302              :       {   -5100011, "e_L^(1)+" },
     303              :       {    5100012, "nu_eL^(1)" },
     304              :       {   -5100012, "nu_eL~^(1)" },
     305              :       {    5100013, "mu_L^(1)-" },
     306              :       {   -5100013, "mu_L^(1)+" },
     307              :       {    5100014, "nu_muL^(1)" },
     308              :       {   -5100014, "nu_muL~^(1)" },
     309              :       {    5100015, "tau_L^(1)-" },
     310              :       {   -5100015, "tau_L^(1)+" },
     311              :       {    5100016, "nu_tauL^(1)" },
     312              :       {   -5100016, "nu_tauL~^(1)" },
     313              :       {    6100001, "d_R^(1)" },
     314              :       {   -6100001, "d~_R^(1)" },
     315              :       {    6100002, "u_R^(1)" },
     316              :       {   -6100002, "u~_R^(1)" },
     317              :       {    6100003, "s_R^(1)" },
     318              :       {   -6100003, "s~_R^(1)" },
     319              :       {    6100004, "c_R^(1)" },
     320              :       {   -6100004, "c~_R^(1)" },
     321              :       {    6100005, "b_R^(1)" },
     322              :       {   -6100005, "b~_R^(1)" },
     323              :       {    6100006, "t_R^(1)" },
     324              :       {   -6100006, "t~_R^(1)" },
     325              :       {    6100011, "e_R^(1)-" },
     326              :       {   -6100011, "e_R^(1)+" },
     327              :       {    6100012, "nu_eR^(1)" },
     328              :       {   -6100012, "nu_eR~^(1)" },
     329              :       {    6100013, "mu_R^(1)-" },
     330              :       {   -6100013, "mu_R^(1)+" },
     331              :       {    6100014, "nu_muR^(1)" },
     332              :       {   -6100014, "nu_muR~^(1)" },
     333              :       {    6100015, "tau_R^(1)-" },
     334              :       {   -6100015, "tau_R^(1)+" },
     335              :       {    6100016, "nu_tauR^(1)" },
     336              :       {   -6100016, "nu_tauR~^(1)" },
     337              :       {    5100021, "g^(1)" },
     338              :       {    5100022, "gamma^(1)" },
     339              :       {    5100023, "Z^(1)0" },
     340              :       {    5100024, "W^(1)+" },
     341              :       {   -5100024, "W^(1)-" },
     342              :       {    5100025, "h^(1)0" },
     343              :       {    5100039, "G^(1)" },
     344              :       {    9900012, "nu_Re" },
     345              :       {   -9900012, "nu_Re~" },
     346              :       {    9900014, "nu_Rmu" },
     347              :       {   -9900014, "nu_Rmu~" },
     348              :       {    9900016, "nu_Rtau" },
     349              :       {   -9900016, "nu_Rtau~" },
     350              :       {    9900023, "Z_R^0" },
     351              :       {   -9900023, "Z_R~^0" },
     352              :       {    9900024, "W_R^+" },
     353              :       {   -9900024, "W_R^-" },
     354              :       {    9900041, "H_L^++" },
     355              :       {   -9900041, "H_L^--" },
     356              :       {    9900042, "H_R^++" },
     357              :       {   -9900042, "H_R^--" },
     358              :       {    9910113, "rho_diffr^0" },
     359              :       {    9910211, "pi_diffr^+" },
     360              :       {   -9910211, "pi_diffr^-" },
     361              :       {    9910223, "omega_diffr" },
     362              :       {    9910333, "phi_diffr" },
     363              :       {    9910443, "psi_diffr" },
     364              :       {    9912112, "n_diffr^0" },
     365              :       {   -9912112, "n_diffr~^0" },
     366              :       {    9912212, "p_diffr^+" },
     367              :       {   -9912212, "p_diffr~^-" },
     368              :       {    9920022, "remnant photon" },
     369              :       {    9922212, "remnant nucleon" },
     370              :       {   -9922212, "remnant nucleon~" },
     371              :       {    9900441, "cc~[1S08]" },     
     372              :       {    9910441, "cc~[3P08]" },     
     373              :       {    9900443, "cc~[3S18]" },     
     374              :       {    9900551, "bb~[1S08]" },     
     375              :       {    9910551, "bb~[3P08]" },     
     376              :       {    9900553, "bb~[3S18]" },    
     377              :       {       1103, "dd_1" },
     378              :       {      -1103, "dd_1~" },
     379              :       {       2101, "ud_0" },
     380              :       {      -2101, "ud_0~" },
     381              :       {       2103, "ud_1" },
     382              :       {      -2103, "ud_1~" },
     383              :       {       2203, "uu_1" },
     384              :       {      -2203, "uu_1~" },
     385              :       {       3101, "sd_0" },
     386              :       {      -3101, "sd_0~" },
     387              :       {       3103, "sd_1" },
     388              :       {      -3103, "sd_1~" },
     389              :       {       3201, "su_0" },
     390              :       {      -3201, "su_0~" },
     391              :       {       3203, "su_1" },
     392              :       {      -3203, "su_1~" },
     393              :       {       3303, "ss_1" },
     394              :       {      -3303, "ss_1~" },
     395              :       {       4101, "cd_0" },
     396              :       {      -4101, "cd_0~" },
     397              :       {       4103, "cd_1" },
     398              :       {      -4103, "cd_1~" },
     399              :       {       4201, "cu_0" },
     400              :       {      -4201, "cu_0~" },
     401              :       {       4203, "cu_1" },
     402              :       {      -4203, "cu_1~" },
     403              :       {       4301, "cs_0" },
     404              :       {      -4301, "cs_0~" },
     405              :       {       4303, "cs_1" },
     406              :       {      -4303, "cs_1~" },
     407              :       {       4403, "cc_1" },
     408              :       {      -4403, "cc_1~" },
     409              :       {       5101, "bd_0" },
     410              :       {      -5101, "bd_0~" },
     411              :       {       5103, "bd_1" },
     412              :       {      -5103, "bd_1~" },
     413              :       {       5201, "bu_0" },
     414              :       {      -5201, "bu_0~" },
     415              :       {       5203, "bu_1" },
     416              :       {      -5203, "bu_1~" },
     417              :       {       5301, "bs_0" },
     418              :       {      -5301, "bs_0~" },
     419              :       {       5303, "bs_1" },
     420              :       {      -5303, "bs_1~" },
     421              :       {       5401, "bc_0" },
     422              :       {      -5401, "bc_0~" },
     423              :       {       5403, "bc_1" },
     424              :       {      -5403, "bc_1~" },
     425              :       {       5503, "bb_1" },
     426              :       {      -5503, "bb_1~" },
     427              :       {       6101, "td_0" },
     428              :       {      -6101, "td_0~" },
     429              :       {       6103, "td_1" },
     430              :       {      -6103, "td_1~" },
     431              :       {       6201, "tu_0" },
     432              :       {      -6201, "tu_0~" },
     433              :       {       6203, "tu_1" },
     434              :       {      -6203, "tu_1~" },
     435              :       {       6301, "ts_0" },
     436              :       {      -6301, "ts_0~" },
     437              :       {       6303, "ts_1" },
     438              :       {      -6303, "ts_1~" },
     439              :       {       6401, "tc_0" },
     440              :       {      -6401, "tc_0~" },
     441              :       {       6403, "tc_1" },
     442              :       {      -6403, "tc_1~" },
     443              :       {       6501, "tb_0" },
     444              :       {      -6501, "tb_0~" },
     445              :       {       6503, "tb_1" },
     446              :       {      -6503, "tb_1~" },
     447              :       {       6603, "tt_1" },
     448              :       {      -6603, "tt_1~" },
     449              :       {       7101, "b'd_0" },
     450              :       {      -7101, "b'd_0~" },
     451              :       {       7103, "b'd_1" },
     452              :       {      -7103, "b'd_1~" },
     453              :       {       7201, "b'u_0" },
     454              :       {      -7201, "b'u_0~" },
     455              :       {       7203, "b'u_1" },
     456              :       {      -7203, "b'u_1~" },
     457              :       {       7301, "b's_0" },
     458              :       {      -7301, "b's_0~" },
     459              :       {       7303, "b's_1" },
     460              :       {      -7303, "b's_1~" },
     461              :       {       7401, "b'c_0" },
     462              :       {      -7401, "b'c_0~" },
     463              :       {       7403, "b'c_1" },
     464              :       {      -7403, "b'c_1~" },
     465              :       {       7501, "b'b_0" },
     466              :       {      -7501, "b'b_0~" },
     467              :       {       7503, "b'b_1" },
     468              :       {      -7503, "b'b_1~" },
     469              :       {       7601, "b't_0" },
     470              :       {      -7601, "b't_0~" },
     471              :       {       7603, "b't_1" },
     472              :       {      -7603, "b't_1~" },
     473              :       {       7703, "b'b'_1" },
     474              :       {      -7703, "b'b'_1~" },
     475              :       {       8101, "t'd_0" },
     476              :       {      -8101, "t'd_0~" },
     477              :       {       8103, "t'd_1" },
     478              :       {      -8103, "t'd_1~" },
     479              :       {       8201, "t'u_0" },
     480              :       {      -8201, "t'u_0~" },
     481              :       {       8203, "t'u_1" },
     482              :       {      -8203, "t'u_1~" },
     483              :       {       8301, "t's_0" },
     484              :       {      -8301, "t's_0~" },
     485              :       {       8303, "t's_1" },
     486              :       {      -8303, "t's_1~" },
     487              :       {       8401, "t'c_0" },
     488              :       {      -8401, "t'c_0~" },
     489              :       {       8403, "t'c_1" },
     490              :       {      -8403, "t'c_1~" },
     491              :       {       8501, "t'b_0" },
     492              :       {      -8501, "t'b_0~" },
     493              :       {       8503, "t'b_1" },
     494              :       {      -8503, "t'b_1~" },
     495              :       {       8601, "t't_0" },
     496              :       {      -8601, "t't_0~" },
     497              :       {       8603, "t't_1" },
     498              :       {      -8603, "t't_1~" },
     499              :       {       8701, "t'b'_0" },
     500              :       {      -8701, "t'b'_0~" },
     501              :       {       8703, "t'b'_1" },
     502              :       {      -8703, "t'b'_1~" },
     503              :       {       8803, "t't'_1" },
     504              :       {      -8803, "t't'_1~" },
     505              :       {        111, "pi^0" },
     506              :       {    9000111, "a_0(980)^0" },
     507              :       {      10111, "a_0(1450)^0" },
     508              :       {     100111, "pi(1300)^0" },
     509              :       {    9010111, "pi(1800)^0" },
     510              :       {        113, "rho(770)^0" },
     511              :       {      10113, "b_1(1235)^0" },
     512              :       {      20113, "a_1(1260)^0" },
     513              :       {    9000113, "pi_1(1400)^0" },
     514              :       {     100113, "rho(1450)^0" },
     515              :       {    9010113, "pi_1(1600)^0" },
     516              :       {    9020113, "a_1(1640)^0" },
     517              :       {      30113, "rho(1700)^0" },
     518              :       {    9030113, "rho(1900)^0" },
     519              :       {    9040113, "rho(2150)^0" },
     520              :       {        115, "a_2(1320)^0" },
     521              :       {      10115, "pi_2(1670)^0" },
     522              :       {    9000115, "a_2(1700)^0" },
     523              :       {    9010115, "pi_2(2100)^0" },
     524              :       {        117, "rho_3(1690)^0" },
     525              :       {    9000117, "rho_3(1990)^0" },
     526              :       {    9010117, "rho_3(2250)^0" },
     527              :       {        119, "a_4(2040)^0" },
     528              :       {        211, "pi^+" },
     529              :       {       -211, "pi^-" },
     530              :       {    9000211, "a_0(980)^+" },
     531              :       {   -9000211, "a_0(980)^-" },
     532              :       {      10211, "a_0(1450)^+" },
     533              :       {     -10211, "a_0(1450)^-" },
     534              :       {     100211, "pi(1300)^+" },
     535              :       {    -100211, "pi(1300)^-" },
     536              :       {    9010211, "pi(1800)^+" },
     537              :       {   -9010211, "pi(1800)^-" },
     538              :       {        213, "rho(770)^+" },
     539              :       {       -213, "rho(770)^-" },
     540              :       {      10213, "b_1(1235)^+" },
     541              :       {     -10213, "b_1(1235)^-" },
     542              :       {      20213, "a_1(1260)^+" },
     543              :       {     -20213, "a_1(1260)^-" },
     544              :       {    9000213, "pi_1(1400)^+" },
     545              :       {   -9000213, "pi_1(1400)^-" },
     546              :       {     100213, "rho(1450)^+" },
     547              :       {    -100213, "rho(1450)^-" },
     548              :       {    9010213, "pi_1(1600)^+" },
     549              :       {   -9010213, "pi_1(1600)^-" },
     550              :       {    9020213, "a_1(1640)^+" },
     551              :       {   -9020213, "a_1(1640)^-" },
     552              :       {      30213, "rho(1700)^+" },
     553              :       {     -30213, "rho(1700)^-" },
     554              :       {    9030213, "rho(1900)^+" },
     555              :       {   -9030213, "rho(1900)^-" },
     556              :       {    9040213, "rho(2150)^+" },
     557              :       {   -9040213, "rho(2150)^-" },
     558              :       {        215, "a_2(1320)^+" },
     559              :       {       -215, "a_2(1320)^-" },
     560              :       {      10215, "pi_2(1670)^+" },
     561              :       {     -10215, "pi_2(1670)^-" },
     562              :       {    9000215, "a_2(1700)^+" },
     563              :       {   -9000215, "a_2(1700)^-" },
     564              :       {    9010215, "pi_2(2100)^+" },
     565              :       {   -9010215, "pi_2(2100)^-" },
     566              :       {        217, "rho_3(1690)^+" },
     567              :       {       -217, "rho_3(1690)^-" },
     568              :       {    9000217, "rho_3(1990)^+" },
     569              :       {   -9000217, "rho_3(1990)^-" },
     570              :       {    9010217, "rho_3(2250)^+" },
     571              :       {   -9010217, "rho_3(2250)^-" },
     572              :       {        219, "a_4(2040)^+" },
     573              :       {       -219, "a_4(2040)^-" },
     574              :       {        221, "eta" },
     575              :       {    9000221, "f_0(600)" },
     576              :       {      10221, "f_0(1370)" },
     577              :       {    9010221, "f_0(980)" },
     578              :       {    9020221, "eta(1405)" },
     579              :       {    9030221, "f_0(1500)" },
     580              :       {    9040221, "eta(1760)" },
     581              :       {    9050221, "f_0(2020)" },
     582              :       {    9060221, "f_0(2100)" },
     583              :       {    9070221, "f_0(2200)" },
     584              :       {    9080221, "eta(2225)" },
     585              :       {    9090221, "sigma_0" },
     586              :       {     100221, "eta(1295)" },
     587              :       {        331, "eta'(958)" },
     588              :       {      10331, "f_0(1710)" },
     589              :       {     100331, "eta(1475)" },
     590              :       {        223, "omega(782)" },
     591              :       {    9000223, "f_1(1510)" },
     592              :       {    9010223, "h_1(1595)" },
     593              :       {      10223, "h_1(1170)" },
     594              :       {      20223, "f_1(1285)" },
     595              :       {      30223, "omega(1650)" },
     596              :       {     100223, "omega(1420)" },
     597              :       {        333, "phi(1020)" },
     598              :       {      10333, "h_1(1380)" },
     599              :       {      20333, "f_1(1420)" },
     600              :       {     100333, "phi(1680)" },
     601              :       {        225, "f_2(1270)" },
     602              :       {    9000225, "f_2(1430)" },
     603              :       {      10225, "eta_2(1645)" },
     604              :       {    9010225, "f_2(1565)" },
     605              :       {    9020225, "f_2(1640)" },
     606              :       {    9030225, "f_2(1810)" },
     607              :       {    9040225, "f_2(1910)" },
     608              :       {    9050225, "f_2(1950)" },
     609              :       {    9060225, "f_2(2010)" },
     610              :       {    9070225, "f_2(2150)" },
     611              :       {    9080225, "f_2(2300)" },
     612              :       {    9090225, "f_2(2340)" },
     613              :       {        335, "f'_2(1525)" },
     614              :       {      10335, "eta_2(1870)" },
     615              :       {        227, "omega_3(1670)" },
     616              :       {        337, "phi_3(1850)" },
     617              :       {        229, "f_4(2050)" },
     618              :       {    9000229, "f_J(2220)" },
     619              :       {    9010229, "f_4(2300)" },
     620              :       {        311, "K^0" },
     621              :       {       -311, "K~^0" },
     622              :       {    9000311, "K*_0(800)^0" },
     623              :       {   -9000311, "K*_0(800)~^0" },
     624              :       {      10311, "K*_0(1430)^0" },
     625              :       {     -10311, "K*_0(1430)~^0" },
     626              :       {     100311, "K(1460)^0" },
     627              :       {    -100311, "K(1460)~^0" },
     628              :       {    9010311, "K(1830)^0" },
     629              :       {   -9010311, "K(1830)~^0" },
     630              :       {    9020311, "K*_0(1950)^0" },
     631              :       {   -9020311, "K*_0(1950)~^0" },
     632              :       {        321, "K^+" },
     633              :       {       -321, "K^-" },
     634              :       {    9000321, "K*_0(800)^+" },
     635              :       {   -9000321, "K*_0(800)^-" },
     636              :       {      10321, "K*_0(1430)^+" },
     637              :       {     -10321, "K*_0(1430)^-" },
     638              :       {     100321, "K(1460)^+" },
     639              :       {    -100321, "K(1460)^-" },
     640              :       {    9010321, "K(1830)^+" },
     641              :       {   -9010321, "K(1830)^-" },
     642              :       {    9020321, "K*_0(1950)^+" },
     643              :       {   -9020321, "K*_0(1950)^-" },
     644              :       {        313, "K*(892)^0" },
     645              :       {       -313, "K*(892)~^0" },
     646              :       {      10313, "K_1(1270)^0" },
     647              :       {     -10313, "K_1(1270)~^0" },
     648              :       {      20313, "K_1(1400)^0" },
     649              :       {     -20313, "K_1(1400)~^0" },
     650              :       {      30313, "K*(1680)^0" },
     651              :       {     -30313, "K*(1680)~^0" },
     652              :       {     100313, "K*(1410)^0" },
     653              :       {    -100313, "K*(1410)~^0" },
     654              :       {    9000313, "K_1(1650)^0" },
     655              :       {   -9000313, "K_1(1650)~^0" },
     656              :       {        323, "K*(892)^+" },
     657              :       {       -323, "K*(892)^-" },
     658              :       {      10323, "K_1(1270)^+" },
     659              :       {     -10323, "K_1(1270)^-" },
     660              :       {      20323, "K_1(1400)^+" },
     661              :       {     -20323, "K_1(1400)^-" },
     662              :       {      30323, "K*(1680)^+" },
     663              :       {     -30323, "K*(1680)^-" },
     664              :       {     100323, "K*(1410)^+" },
     665              :       {    -100323, "K*(1410)^-" },
     666              :       {    9000323, "K_1(1650)^+" },
     667              :       {   -9000323, "K_1(1650)^-" },
     668              :       {        315, "K*_2(1430)^0" },
     669              :       {       -315, "K*_2(1430)~^0" },
     670              :       {    9000315, "K_2(1580)^0" },
     671              :       {   -9000315, "K_2(1580)~^0" },
     672              :       {      10315, "K_2(1770)^0" },
     673              :       {     -10315, "K_2(1770)~^0" },
     674              :       {    9010315, "K*_2(1980)^0" },
     675              :       {   -9010315, "K*_2(1980)~^0" },
     676              :       {    9020315, "K_2(2250)^0" },
     677              :       {   -9020315, "K_2(2250)~^0" },
     678              :       {      20315, "K_2(1820)^0" },
     679              :       {     -20315, "K_2(1820)~^0" },
     680              :       {        325, "K*_2(1430)^+" },
     681              :       {       -325, "K*_2(1430)^-" },
     682              :       {    9000325, "K_2(1580)^+" },
     683              :       {   -9000325, "K_2(1580)^-" },
     684              :       {      10325, "K_2(1770)^+" },
     685              :       {     -10325, "K_2(1770)^-" },
     686              :       {    9010325, "K*_2(1980)^+" },
     687              :       {   -9010325, "K*_2(1980)^-" },
     688              :       {    9020325, "K_2(2250)^+" },
     689              :       {   -9020325, "K_2(2250)^-" },
     690              :       {      20325, "K_2(1820)^+" },
     691              :       {     -20325, "K_2(1820)^-" },
     692              :       {     100325, "K_2(1980)^+" },
     693              :       {    -100325, "K_2(1980)^-" },
     694              :       {        317, "K*_3(1780)^0" },
     695              :       {       -317, "K*_3(1780)~^0" },
     696              :       {    9010317, "K_3(2320)^0" },
     697              :       {   -9010317, "K_3(2320)~^0" },
     698              :       {        327, "K*_3(1780)^+" },
     699              :       {       -327, "K*_3(1780)^-" },
     700              :       {    9010327, "K_3(2320)^+" },
     701              :       {   -9010327, "K_3(2320)^-" },
     702              :       {        319, "K*_4(2045)^0" },
     703              :       {       -319, "K*_4(2045)~^0" },
     704              :       {    9000319, "K_4(2500)^0" },
     705              :       {   -9000319, "K_4(2500)~^0" },
     706              :       {        329, "K*_4(2045)^+" },
     707              :       {       -329, "K*_4(2045)^-" },
     708              :       {    9000329, "K_4(2500)^+" },
     709              :       {   -9000329, "K_4(2500)^-" },
     710              :       {        411, "D^+" },
     711              :       {       -411, "D^-" },
     712              :       {      10411, "D*_0(2400)^+" },
     713              :       {     -10411, "D*_0(2400)^-" },
     714              :       {     100411, "D(2S)^+" },
     715              :       {    -100411, "D(2S)^-" },
     716              :       {        413, "D*(2010)^+" },
     717              :       {       -413, "D*(2010)^-" },
     718              :       {      10413, "D_1(2420)^+" },
     719              :       {     -10413, "D_1(2420)^-" },
     720              :       {      20413, "D_1(H)^+" },
     721              :       {     -20413, "D_1(H)^-" },
     722              :       {     100413, "D*(2S)^+" },
     723              :       {    -100413, "D*(2S)^-" },
     724              :       {        415, "D*_2(2460)^+" },
     725              :       {       -415, "D*_2(2460)^-" },
     726              :       {        421, "D^0" },
     727              :       {       -421, "D~^0" },
     728              :       {      10421, "D*_0(2400)^0" },
     729              :       {     -10421, "D*_0(2400)~^0" },
     730              :       {     100421, "D(2S)^0" },
     731              :       {    -100421, "D(2S)~^0" },
     732              :       {        423, "D*(2007)^0" },
     733              :       {       -423, "D*(2007)~^0" },
     734              :       {      10423, "D_1(2420)^0" },
     735              :       {     -10423, "D_1(2420)~^0" },
     736              :       {      20423, "D_1(2430)^0" },
     737              :       {     -20423, "D_1(2430)~^0" },
     738              :       {     100423, "D*(2S)^0" },
     739              :       {    -100423, "D*(2S)~^0" },
     740              :       {        425, "D*_2(2460)^0" },
     741              :       {       -425, "D*_2(2460)~^0" },
     742              :       {        431, "D_s^+" },
     743              :       {       -431, "D_s^-" },
     744              :       {      10431, "D*_s0(2317)^+" },
     745              :       {     -10431, "D*_s0(2317)^-" },
     746              :       {        433, "D*_s^+" },
     747              :       {       -433, "D*_s^-" },
     748              :       {      10433, "D_s1(2536)^+" },
     749              :       {     -10433, "D_s1(2536)^-" },
     750              :       {      20433, "D_s1(2460)^+" },
     751              :       {     -20433, "D_s1(2460)^-" },
     752              :       {        435, "D*_s2(2573)^+" },
     753              :       {       -435, "D*_s2(2573)^-" },
     754              :       {        441, "eta_c(1S)" },
     755              :       {      10441, "chi_c0(1P)" },
     756              :       {     100441, "eta_c(2S)" },
     757              :       {        443, "J/psi(1S)" },
     758              :       {    9000443, "psi(4040)" },
     759              :       {      10443, "hc(1P)" },
     760              :       {    9010443, "psi(4160)" },
     761              :       {      20443, "chi_c1(1P)" },
     762              :       {    9020443, "psi(4415)" },
     763              :       {      30443, "psi(3770)" },
     764              :       {     100443, "psi(2S)" },
     765              :       {        445, "chi_c2(1P)" },
     766              :       {     100445, "chi_c2(2P)" },
     767              :       {        511, "B^0" },
     768              :       {       -511, "B~^0" },
     769              :       {      10511, "B*_0^0" },
     770              :       {     -10511, "B*_0~^0" },
     771              :       {        513, "B*^0" },
     772              :       {       -513, "B*~^0" },
     773              :       {      10513, "B_1(L)^0" },
     774              :       {     -10513, "B_1(L)~^0" },
     775              :       {      20513, "B_1(H)^0" },
     776              :       {     -20513, "B_1(H)~^0" },
     777              :       {        515, "B*_2^0" },
     778              :       {       -515, "B*_2~^0" },
     779              :       {        521, "B^+" },
     780              :       {       -521, "B^-" },
     781              :       {      10521, "B*_0^+" },
     782              :       {     -10521, "B*_0^-" },
     783              :       {        523, "B*^+" },
     784              :       {       -523, "B*^-" },
     785              :       {      10523, "B_1(L)^+" },
     786              :       {     -10523, "B_1(L)^-" },
     787              :       {      20523, "B_1(H)^+" },
     788              :       {     -20523, "B_1(H)^-" },
     789              :       {        525, "B*_2^+" },
     790              :       {       -525, "B*_2^-" },
     791              :       {        531, "B_s^0" },
     792              :       {       -531, "B_s~^0" },
     793              :       {      10531, "B*_s0^0" },
     794              :       {     -10531, "B*_s0~^0" },
     795              :       {        533, "B*_s^0" },
     796              :       {       -533, "B*_s~^0" },
     797              :       {      10533, "B_s1(L)^0" },
     798              :       {     -10533, "B_s1(L)~^0" },
     799              :       {      20533, "B_s1(H)^0" },
     800              :       {     -20533, "B_s1(H)~^0" },
     801              :       {        535, "B*_s2^0" },
     802              :       {       -535, "B*_s2~^0" },
     803              :       {        541, "B_c^+" },
     804              :       {       -541, "B_c^-" },
     805              :       {      10541, "B*_c0^+" },
     806              :       {     -10541, "B*_c0^-" },
     807              :       {        543, "B*_c^+" },
     808              :       {       -543, "B*_c^-" },
     809              :       {      10543, "B_c1(L)^+" },
     810              :       {     -10543, "B_c1(L)^-" },
     811              :       {      20543, "B_c1(H)^+" },
     812              :       {     -20543, "B_c1(H)^-" },
     813              :       {        545, "B*_c2^+" },
     814              :       {       -545, "B*_c2^-" },
     815              :       {        551, "eta_b(1S)" },
     816              :       {      10551, "chi_b0(1P)" },
     817              :       {     100551, "eta_b(2S)" },
     818              :       {     110551, "chi_b0(2P)" },
     819              :       {     200551, "eta_b(3S)" },
     820              :       {     210551, "chi_b0(3P)" },
     821              :       {        553, "Upsilon(1S)" },
     822              :       {    9000553, "Upsilon(10860)" },
     823              :       {      10553, "h_b(1P)" },
     824              :       {    9010553, "Upsilon(11020)" },
     825              :       {      20553, "chi_b1(1P)" },
     826              :       {    9020553, "Upsilon(7S)" },
     827              :       {      30553, "Upsilon_1(1D)" },
     828              :       {     100553, "Upsilon(2S)" },
     829              :       {     110553, "h_b(2P)" },
     830              :       {     120553, "chi_b1(2P)" },
     831              :       {     130553, "Upsilon_1(2D)" },
     832              :       {     200553, "Upsilon(3S)" },
     833              :       {     210553, "h_b(3P)" },
     834              :       {     220553, "chi_b1(3P)" },
     835              :       {     300553, "Upsilon(4S)" },
     836              :       {        555, "chi_b2(1P)" },
     837              :       {      10555, "eta_b2(1D)" },
     838              :       {      20555, "Upsilon_2(1D)" },
     839              :       {     100555, "chi_b2(2P)" },
     840              :       {     110555, "eta_b2(2D)" },
     841              :       {     120555, "Upsilon_2(2D)" },
     842              :       {     200555, "chi_b2(3P)" },
     843              :       {        557, "Upsilon_3(1D)" },
     844              :       {     100557, "Upsilon_3(2D)" },
     845              :       {        611, "T^+" },
     846              :       {       -611, "T^-" },
     847              :       {        613, "T*^+" },
     848              :       {       -613, "T*^-" },
     849              :       {        621, "T^0" },
     850              :       {       -621, "T~^0" },
     851              :       {        623, "T*^0" },
     852              :       {       -623, "T*~^0" },
     853              :       {        631, "T_s^+" },
     854              :       {       -631, "T_s^-" },
     855              :       {        633, "T*_s^+" },
     856              :       {       -633, "T*_s^-" },
     857              :       {        641, "T_c^0" },
     858              :       {       -641, "T_c~^0" },
     859              :       {        643, "T*_c^0" },
     860              :       {       -643, "T*_c~^0" },
     861              :       {        651, "T_b^+" },
     862              :       {       -651, "T_b^-" },
     863              :       {        653, "T*_b^+" },
     864              :       {       -653, "T*_b^-" },
     865              :       {        661, "eta_t" },
     866              :       {        663, "theta" },
     867              :       {        711, "L^0" },
     868              :       {       -711, "L~^0" },
     869              :       {        713, "L*^0" },
     870              :       {       -713, "L*~^0" },
     871              :       {        721, "L^-" },
     872              :       {       -721, "L^+" },
     873              :       {        723, "L*^-" },
     874              :       {       -723, "L*^+" },
     875              :       {        731, "L_s^0" },
     876              :       {       -731, "L_s~^0" },
     877              :       {        733, "L*_s^0" },
     878              :       {       -733, "L*_s~^0" },
     879              :       {        741, "L_c^-" },
     880              :       {       -741, "L_c^+" },
     881              :       {        743, "L*_c^-" },
     882              :       {       -743, "L*_c^+" },
     883              :       {        751, "L_b^0" },
     884              :       {       -751, "L_b~^0" },
     885              :       {        753, "L*_b^0" },
     886              :       {       -753, "L*_b~^0" },
     887              :       {        761, "L_t^-" },
     888              :       {       -761, "L_t^+" },
     889              :       {        763, "L*_t^-" },
     890              :       {       -763, "L*_t^+" },
     891              :       {        771, "eta_l" },
     892              :       {        773, "theta_l" },
     893              :       {        811, "X^+" },
     894              :       {       -811, "X^-" },
     895              :       {        813, "X*^+" },
     896              :       {       -813, "X*^-" },
     897              :       {        821, "X^0" },
     898              :       {       -821, "X~^0" },
     899              :       {        823, "X*^0" },
     900              :       {       -823, "X*~^0" },
     901              :       {        831, "X_s^+" },
     902              :       {       -831, "X_s^-" },
     903              :       {        833, "X*_s^+" },
     904              :       {       -833, "X*_s^-" },
     905              :       {        841, "X_c^0" },
     906              :       {       -841, "X_c~^0" },
     907              :       {        843, "X*_c^0" },
     908              :       {       -843, "X*_c~^0" },
     909              :       {        851, "X_b^+" },
     910              :       {       -851, "X_b^-" },
     911              :       {        853, "X*_b^+" },
     912              :       {       -853, "X*_b^-" },
     913              :       {        861, "X_t^0" },
     914              :       {       -861, "X_t~^0" },
     915              :       {        863, "X*_t^0" },
     916              :       {       -863, "X*_t~^0" },
     917              :       {        871, "X_l^+" },
     918              :       {       -871, "X_l^-" },
     919              :       {        873, "X*_l^+" },
     920              :       {       -873, "X*_l^-" },
     921              :       {        881, "eta_h" },
     922              :       {        883, "theta_H" },
     923              :       {      30343, "Xsd" },
     924              :       {     -30343, "anti-Xsd" },
     925              :       {      30353, "Xsu" },
     926              :       {     -30353, "anti-Xsu" },
     927              :       {      30363, "Xss" },
     928              :       {     -30363, "anti-Xss" },
     929              :       {      30373, "Xdd" },
     930              :       {     -30373, "anti-Xdd" },
     931              :       {      30383, "Xdu" },
     932              :       {     -30383, "anti-Xdu" },
     933              :       {       2112, "n^0" },
     934              :       {      -2112, "n~^0" },
     935              :       {       2212, "p^+" },
     936              :       {      -2212, "p~^-" },
     937              :     {        12212,        "N(1440)^+"},
     938              :     {        12112,        "N(1440)^0"},
     939              :     {        22212,        "N(1535)^+"},
     940              :     {        22112,        "N(1535)^0"},
     941              :     {        32212,        "N(1650)^+"},
     942              :     {        32112,        "N(1650)^0"},
     943              :     {        42212,        "N(1710)^+"},
     944              :     {        42112,        "N(1710)^0"},
     945              :     {         1214,         "N(1520)^0"},
     946              :     {         2124,         "N(1520)^+"},
     947              :     {        21214,        "N(1700)^0"},
     948              :     {        22124,        "N(1700)^+"},
     949              :     {        31214,        "N(1720)^0"},
     950              :     {        32124,        "N(1720)^+"},
     951              :     {         2116,         "N(1675)^0"},
     952              :     {         2216,         "N(1675)^+"},
     953              :     {        12116,        "N(1680)^0"},
     954              :     {        12216,        "N(1680)^+"},
     955              :     {         1218,         "N(2190)^0"},
     956              :     {         2128,        "N(2190)^+" },
     957              :       {       1114, "Delta^-" },
     958              :       {      -1114, "Delta~^+" },
     959              :       {       2114, "Delta^0" },
     960              :       {      -2114, "Delta~^0" },
     961              :       {       2214, "Delta^+" },
     962              :       {      -2214, "Delta~^-" },
     963              :       {       2224, "Delta^++" },
     964              :       {      -2224, "Delta~^--" },
     965              :     {        31114,   "Delta(1600)^-"      },
     966              :     {        32114,   "Delta(1600)^0"      },
     967              :     {        32214,    "Delta(1600)^+"     },
     968              :     {        32224,     "Delta(1600)^++"    },
     969              :     {         1112,    "Delta(1620)^-"     },
     970              :     {         1212,    "Delta(1620)^0"     },
     971              :     {         2122,    "Delta(1620)^+"     },
     972              :     {         2222,     "Delta(1620)^++"    },
     973              :     {        11114,     "Delta(1700)^-"    },
     974              :     {        12114,     "Delta(1700)^0"    },
     975              :     {        12214,     "Delta(1700)^+"    },
     976              :     {        12224,      "Delta(1700)^++"   },
     977              :     {         1116,     "Delta(1905)^-"    },
     978              :     {         1216,     "Delta(1905)^0"    },
     979              :     {         2126,     "Delta(1905)^+"    },
     980              :     {         2226,      "Delta(1905)^++"   },
     981              :     {        21112,    "Delta(1910)^-"    },
     982              :     {        21212,     "Delta(1910)^0"   },
     983              :     {        22122,     "Delta(1910)^+"   },
     984              :     {        22222,     "Delta(1910)^++"   },
     985              :     {        21114,    "Delta(1920)^-"    },
     986              :     {        22114,     "Delta(1920)^0"   },
     987              :     {        22214,     "Delta(1920)^+"   },
     988              :     {        22224,    "Delta(1920)^++"    },
     989              :     {        11116,    "Delta(1930)^-"    },
     990              :     {        11216,     "Delta(1930)^0"   },
     991              :     {        12126,     "Delta(1930)^+"   },
     992              :     {        12226,     "Delta(1930)^++"   },
     993              :     {         1118,     "Delta(1950)^-"    },
     994              :     {         2118,      "Delta(1950)^0"   },
     995              :     {         2218,      "Delta(1950)^+"   },
     996              :     {         2228,     "Delta(1950)^++"    },
     997              :       {       3122, "Lambda^0" },
     998              :       {      -3122, "Lambda~^0" },
     999              :       {      13122, "Lambda(1405)^0" },
    1000              :       {     -13122, "Lambda~(1405)^0" },
    1001              :       {      23122, "Lambda(1600)^0" },
    1002              :       {     -23122, "Lambda~(1600)^0" },
    1003              :       {      33122, "Lambda(1670)^0" },
    1004              :       {     -33122, "Lambda~(1670)^0" },
    1005              :       {      43122, "Lambda(1800)^0" },
    1006              :       {     -43122, "Lambda~(1800)^0" },
    1007              :       {      53122, "Lambda(1810)^0" },
    1008              :       {     -53122, "Lambda~(1810)^0" },
    1009              :       {       3124, "Lambda(1520)^0" },
    1010              :       {      -3124, "Lambda~(1520)^0" },
    1011              :       {      13124, "Lambda(1690)^0" },
    1012              :       {     -13124, "Lambda~(1690)^0" },
    1013              :       {      23124, "Lambda(1890)^0" },
    1014              :       {     -23124, "Lambda~(1890)^0" },
    1015              :       {       3126, "Lambda(1820)^0" },
    1016              :       {      -3126, "Lambda~(1820)^0" },
    1017              :       {      13126, "Lambda(1830)^0" },
    1018              :       {     -13126, "Lambda~(1830)^0" },
    1019              :       {      23126, "Lambda(2110)^0" },
    1020              :       {     -23126, "Lambda~(2110)^0" },
    1021              :       {       3128, "Lambda(2100)^0" },
    1022              :       {      -3128, "Lambda~(2100)^0" },
    1023              :       {       3112, "Sigma^-" },
    1024              :       {      -3112, "Sigma~^+" },
    1025              :       {       3212, "Sigma^0" },
    1026              :       {      -3212, "Sigma~^0" },
    1027              :       {       3222, "Sigma^+" },
    1028              :       {      -3222, "Sigma~^-" },
    1029              :       {      13222, "Sigma(1660)^+" },
    1030              :       {     -13222, "Sigma~(1660)^+" },
    1031              :       {      13212, "Sigma(1660)^0" },
    1032              :       {     -13212, "Sigma~(1660)^0" },
    1033              :       {      13112, "Sigma(1660)^-" },
    1034              :       {     -13112, "Sigma~(1660)^-" },
    1035              :       {      23112, "Sigma(1750)^-" },
    1036              :       {     -23112, "Sigma~(1750)^-" },
    1037              :       {      23212, "Sigma(1750)^0" },
    1038              :       {     -23212, "Sigma~(1750)^0" },
    1039              :       {      23222, "Sigma(1750)^+" },
    1040              :       {     -23222, "Sigma~(1750)^+" },
    1041              :       {       3114, "Sigma*^-" },
    1042              :       {      -3114, "Sigma*~^+" },
    1043              :       {       3214, "Sigma*^0" },
    1044              :       {      -3214, "Sigma*~^0" },
    1045              :       {       3224, "Sigma*^+" },
    1046              :       {      -3224, "Sigma*~^-" },
    1047              :       {      13224, "Sigma(1670)^+" },
    1048              :       {     -13224, "Sigma~(1670)^+" },
    1049              :       {      13214, "Sigma(1670)^0" },
    1050              :       {     -13214, "Sigma~(1670)^0" },
    1051              :       {      13114, "Sigma(1670)^-" },
    1052              :       {     -13114, "Sigma~(1670)^-" },
    1053              :       {      23224, "Sigma(1940)^+" },
    1054              :       {     -23224, "Sigma~(1940)^+" },
    1055              :       {      23214, "Sigma(1940)^0" },
    1056              :       {     -23214, "Sigma~(1940)^0" },
    1057              :       {      23114, "Sigma(1940)^-" },
    1058              :       {     -23114, "Sigma~(1940)^-" },
    1059              :       {       3226, "Sigma(1775)^+" },
    1060              :       {      -3226, "Sigma~(1775)^+" },
    1061              :       {       3216, "Sigma(1775)^0" },
    1062              :       {      -3216, "Sigma~(1775)^0" },
    1063              :       {       3116, "Sigma(1775)^-" },
    1064              :       {      -3116, "Sigma~(1775)^-" },
    1065              :       {      13226, "Sigma(1915)^+" },
    1066              :       {     -13226, "Sigma~(1915)^+" },
    1067              :       {      13216, "Sigma(1915)^0" },
    1068              :       {     -13216, "Sigma~(1915)^0" },
    1069              :       {      13116, "Sigma(1915)^-" },
    1070              :       {     -13116, "Sigma~(1915)^-" },
    1071              :       {       3228, "Sigma(2030)^+" },
    1072              :       {      -3228, "Sigma~(2030)^+" },
    1073              :       {       3218, "Sigma(2030)^0" },
    1074              :       {      -3218, "Sigma~(2030)^0" },
    1075              :       {       3118, "Sigma(2030)^-" },
    1076              :       {      -3118, "Sigma~(2030)^-" },
    1077              :       {       3312, "Xi^-" },
    1078              :       {      -3312, "Xi~^+" },
    1079              :       {       3322, "Xi^0" },
    1080              :       {      -3322, "Xi~^0" },
    1081              :       {       3314, "Xi*^-" },
    1082              :       {      -3314, "Xi*~^+" },
    1083              :       {       3324, "Xi*^0" },
    1084              :       {      -3324, "Xi*~^0" },
    1085              :       {      13314, "Xi(1820)^-" },
    1086              :       {     -13314, "Xi(1820)~^+" },
    1087              :       {      13324, "Xi(1820)^0" },
    1088              :       {     -13324, "Xi(1820)~^0" },
    1089              :       {       3334, "Omega^-" },
    1090              :       {      -3334, "Omega~^+" },
    1091              :       {       4112, "Sigma_c^0" },
    1092              :       {      -4112, "Sigma_c~^0" },
    1093              :       {       4114, "Sigma*_c^0" },
    1094              :       {      -4114, "Sigma*_c~^0" },
    1095              :       {       4122, "Lambda_c^+" },
    1096              :       {      -4122, "Lambda_c~^-" },
    1097              :       {      14122, "Lambda_c(2593)^+" },
    1098              :       {     -14122, "Lambda_c~(2593)^-" },
    1099              :       {      14124, "Lambda_c(2625)^+" },
    1100              :       {     -14124, "Lambda_c~(2625)^-" },
    1101              :       {       4132, "Xi_c^0" },
    1102              :       {      -4132, "Xi_c~^0" },
    1103              :       {       4212, "Sigma_c^+" },
    1104              :       {      -4212, "Sigma_c~^-" },
    1105              :       {       4214, "Sigma*_c^+" },
    1106              :       {      -4214, "Sigma*_c~^-" },
    1107              :       {       4222, "Sigma_c^++" },
    1108              :       {      -4222, "Sigma_c~^--" },
    1109              :       {       4224, "Sigma*_c^++" },
    1110              :       {      -4224, "Sigma*_c~^--" },
    1111              :       {       4232, "Xi_c^+" },
    1112              :       {      -4232, "Xi_c~^-" },
    1113              :       {       4312, "Xi'_c^0" },
    1114              :       {      -4312, "Xi'_c~^0" },
    1115              :       {       4314, "Xi*_c^0" },
    1116              :       {      -4314, "Xi*_c~^0" },
    1117              :       {       4322, "Xi'_c^+" },
    1118              :       {      -4322, "Xi'_c~^-" },
    1119              :       {       4324, "Xi*_c^+" },
    1120              :       {      -4324, "Xi*_c~^-" },
    1121              :       {       4332, "Omega_c^0" },
    1122              :       {      -4332, "Omega_c~^0" },
    1123              :       {       4334, "Omega*_c^0" },
    1124              :       {      -4334, "Omega*_c~^0" },
    1125              :       {       4412, "Xi_cc^+" },
    1126              :       {      -4412, "Xi_cc~^-" },
    1127              :       {       4414, "Xi*_cc^+" },
    1128              :       {      -4414, "Xi*_cc~^-" },
    1129              :       {       4422, "Xi_cc^++" },
    1130              :       {      -4422, "Xi_cc~^--" },
    1131              :       {       4424, "Xi*_cc^++" },
    1132              :       {      -4424, "Xi*_cc~^--" },
    1133              :       {       4432, "Omega_cc^+" },
    1134              :       {      -4432, "Omega_cc~^-" },
    1135              :       {       4434, "Omega*_cc^+" },
    1136              :       {      -4434, "Omega*_cc~^-" },
    1137              :       {       4444, "Omega*_ccc^++" },
    1138              :       {      -4444, "Omega*_ccc~^--" },
    1139              :       {       5112, "Sigma_b^-" },
    1140              :       {      -5112, "Sigma_b~^+" },
    1141              :       {       5114, "Sigma*_b^-" },
    1142              :       {      -5114, "Sigma*_b~^+" },
    1143              :       {       5122, "Lambda_b^0" },
    1144              :       {      -5122, "Lambda_b~^0" },
    1145              :       {       5132, "Xi_b^-" },
    1146              :       {      -5132, "Xi_b~^+" },
    1147              :       {       5142, "Xi_bc^0" },
    1148              :       {      -5142, "Xi_bc~^0" },
    1149              :       {       5212, "Sigma_b^0" },
    1150              :       {      -5212, "Sigma_b~^0" },
    1151              :       {       5214, "Sigma*_b^0" },
    1152              :       {      -5214, "Sigma*_b~^0" },
    1153              :       {       5222, "Sigma_b^+" },
    1154              :       {      -5222, "Sigma_b~^-" },
    1155              :       {       5224, "Sigma*_b^+" },
    1156              :       {      -5224, "Sigma*_b~^-" },
    1157              :       {       5232, "Xi_b^0" },
    1158              :       {      -5232, "Xi_b~^0" },
    1159              :       {       5242, "Xi_bc^+" },
    1160              :       {      -5242, "Xi_bc~^-" },
    1161              :       {       5312, "Xi'_b^-" },
    1162              :       {      -5312, "Xi'_b~^+" },
    1163              :       {       5314, "Xi*_b^-" },
    1164              :       {      -5314, "Xi*_b~^+" },
    1165              :       {       5322, "Xi'_b^0" },
    1166              :       {      -5322, "Xi'_b~^0" },
    1167              :       {       5324, "Xi*_b^0" },
    1168              :       {      -5324, "Xi*_b~^0" },
    1169              :       {       5332, "Omega_b^-" },
    1170              :       {      -5332, "Omega_b~^+" },
    1171              :       {       5334, "Omega*_b^-" },
    1172              :       {      -5334, "Omega*_b~^+" },
    1173              :       {       5342, "Omega_bc^0" },
    1174              :       {      -5342, "Omega_bc~^0" },
    1175              :       {       5412, "Xi'_bc^0" },
    1176              :       {      -5412, "Xi'_bc~^0" },
    1177              :       {       5414, "Xi*_bc^0" },
    1178              :       {      -5414, "Xi*_bc~^0" },
    1179              :       {       5422, "Xi'_bc^+" },
    1180              :       {      -5422, "Xi'_bc~^-" },
    1181              :       {       5424, "Xi*_bc^+" },
    1182              :       {      -5424, "Xi*_bc~^-" },
    1183              :       {       5432, "Omega'_bc^0" },
    1184              :       {      -5432, "Omega'_bc~^0" },
    1185              :       {       5434, "Omega*_bc^0" },
    1186              :       {      -5434, "Omega*_bc~^0" },
    1187              :       {       5442, "Omega_bcc^+" },
    1188              :       {      -5442, "Omega_bcc~^-" },
    1189              :       {       5444, "Omega*_bcc^+" },
    1190              :       {      -5444, "Omega*_bcc~^-" },
    1191              :       {       5512, "Xi_bb^-" },
    1192              :       {      -5512, "Xi_bb~^+" },
    1193              :       {       5514, "Xi*_bb^-" },
    1194              :       {      -5514, "Xi*_bb~^+" },
    1195              :       {       5522, "Xi_bb^0" },
    1196              :       {      -5522, "Xi_bb~^0" },
    1197              :       {       5524, "Xi*_bb^0" },
    1198              :       {      -5524, "Xi*_bb~^0" },
    1199              :       {       5532, "Omega_bb^-" },
    1200              :       {      -5532, "Omega_bb~^+" },
    1201              :       {       5534, "Omega*_bb^-" },
    1202              :       {      -5534, "Omega*_bb~^+" },
    1203              :       {       5542, "Omega_bbc^0" },
    1204              :       {      -5542, "Omega_bbc~^0" },
    1205              :       {       5544, "Omega*_bbc^0" },
    1206              :       {      -5544, "Omega*_bbc~^0" },
    1207              :       {       5554, "Omega*_bbb^-" },
    1208              :       {      -5554, "Omega*_bbb~^+" },
    1209              :       {       6112, "Sigma_t^0" },
    1210              :       {      -6112, "Sigma_t~^0" },
    1211              :       {       6114, "Sigma*_t^0" },
    1212              :       {      -6114, "Sigma*_t~^0" },
    1213              :       {       6122, "Lambda_t^+" },
    1214              :       {      -6122, "Lambda_t~^-" },
    1215              :       {       6132, "Xi_t^0" },
    1216              :       {      -6132, "Xi_t~^0" },
    1217              :       {       6142, "Xi_tc^+" },
    1218              :       {      -6142, "Xi_tc~^-" },
    1219              :       {       6152, "Xi_tb^0" },
    1220              :       {      -6152, "Xi_tb~^0" },
    1221              :       {       6212, "Sigma_t^+" },
    1222              :       {      -6212, "Sigma_t~^-" },
    1223              :       {       6214, "Sigma*_t^+" },
    1224              :       {      -6214, "Sigma*_t~^-" },
    1225              :       {       6222, "Sigma_t^++" },
    1226              :       {      -6222, "Sigma_t~^--" },
    1227              :       {       6224, "Sigma*_t^++" },
    1228              :       {      -6224, "Sigma*_t~^--" },
    1229              :       {       6232, "Xi_t^+" },
    1230              :       {      -6232, "Xi_t~^-" },
    1231              :       {       6242, "Xi_tc^++" },
    1232              :       {      -6242, "Xi_tc~^--" },
    1233              :       {       6252, "Xi_tb^+" },
    1234              :       {      -6252, "Xi_tb~^-" },
    1235              :       {       6312, "Xi'_t^0" },
    1236              :       {      -6312, "Xi'_t~^0" },
    1237              :       {       6314, "Xi*_t^0" },
    1238              :       {      -6314, "Xi*_t~^0" },
    1239              :       {       6322, "Xi'_t^+" },
    1240              :       {      -6322, "Xi'_t~^-" },
    1241              :       {       6324, "Xi*_t^+" },
    1242              :       {      -6324, "Xi*_t~^-" },
    1243              :       {       6332, "Omega_t^0" },
    1244              :       {      -6332, "Omega_t~^0" },
    1245              :       {       6334, "Omega*_t^0" },
    1246              :       {      -6334, "Omega*_t~^0" },
    1247              :       {       6342, "Omega_tc^+" },
    1248              :       {      -6342, "Omega_tc~^-" },
    1249              :       {       6352, "Omega_tb^0" },
    1250              :       {      -6352, "Omega_tb~^0" },
    1251              :       {       6412, "Xi'_tc^+" },
    1252              :       {      -6412, "Xi'_tc~^-" },
    1253              :       {       6414, "Xi*_tc^+" },
    1254              :       {      -6414, "Xi*_tc~^-" },
    1255              :       {       6422, "Xi'_tc^++" },
    1256              :       {      -6422, "Xi'_tc~^--" },
    1257              :       {       6424, "Xi*_tc^++" },
    1258              :       {      -6424, "Xi*_tc~^--" },
    1259              :       {       6432, "Omega'_tc^+" },
    1260              :       {      -6432, "Omega'_tc~^-" },
    1261              :       {       6434, "Omega*_tc^+" },
    1262              :       {      -6434, "Omega*_tc~^-" },
    1263              :       {       6442, "Omega_tcc^++" },
    1264              :       {      -6442, "Omega_tcc~^--" },
    1265              :       {       6444, "Omega*_tcc^++" },
    1266              :       {      -6444, "Omega*_tcc~^--" },
    1267              :       {       6452, "Omega_tbc^+" },
    1268              :       {      -6452, "Omega_tbc~^-" },
    1269              :       {       6512, "Xi'_tb^0" },
    1270              :       {      -6512, "Xi'_tb~^0" },
    1271              :       {       6514, "Xi*_tb^0" },
    1272              :       {      -6514, "Xi*_tb~^0" },
    1273              :       {       6522, "Xi'_tb^+" },
    1274              :       {      -6522, "Xi'_tb~^-" },
    1275              :       {       6524, "Xi*_tb^+" },
    1276              :       {      -6524, "Xi*_tb~^-" },
    1277              :       {       6532, "Omega'_tb^0" },
    1278              :       {      -6532, "Omega'_tb~^0" },
    1279              :       {       6534, "Omega*_tb^0" },
    1280              :       {      -6534, "Omega*_tb~^0" },
    1281              :       {       6542, "Omega'_tbc^+" },
    1282              :       {      -6542, "Omega'_tbc~^-" },
    1283              :       {       6544, "Omega*_tbc^+" },
    1284              :       {      -6544, "Omega*_tbc~^-" },
    1285              :       {       6552, "Omega_tbb^0" },
    1286              :       {      -6552, "Omega_tbb~^0" },
    1287              :       {       6554, "Omega*_tbb^0" },
    1288              :       {      -6554, "Omega*_tbb~^0" },
    1289              :       {       6612, "Xi_tt^+" },
    1290              :       {      -6612, "Xi_tt~^-" },
    1291              :       {       6614, "Xi*_tt^+" },
    1292              :       {      -6614, "Xi*_tt~^-" },
    1293              :       {       6622, "Xi_tt^++" },
    1294              :       {      -6622, "Xi_tt~^--" },
    1295              :       {       6624, "Xi*_tt^++" },
    1296              :       {      -6624, "Xi*_tt~^--" },
    1297              :       {       6632, "Omega_tt^+" },
    1298              :       {      -6632, "Omega_tt~^-" },
    1299              :       {       6634, "Omega*_tt^+" },
    1300              :       {      -6634, "Omega*_tt~^-" },
    1301              :       {       6642, "Omega_ttc^++" },
    1302              :       {      -6642, "Omega_ttc~^--" },
    1303              :       {       6644, "Omega*_ttc^++" },
    1304              :       {      -6644, "Omega*_ttc~^--" },
    1305              :       {       6652, "Omega_ttb^+" },
    1306              :       {      -6652, "Omega_ttb~^-" },
    1307              :       {       6654, "Omega*_ttb^+" },
    1308              :       {      -6654, "Omega*_ttb~^-" },
    1309              :       {       6664, "Omega*_ttt^++" },
    1310              :       {      -6664, "Omega*_ttt~^--" },
    1311              :       {       7112, "Sigma_b'^-" },
    1312              :       {      -7112, "Sigma_b'~^+" },
    1313              :       {       7114, "Sigma*_b'^-" },
    1314              :       {      -7114, "Sigma*_b'~^+" },
    1315              :       {       7122, "Lambda_b'^0" },
    1316              :       {      -7122, "Lambda_b'~^0" },
    1317              :       {       7132, "Xi_b'^-" },
    1318              :       {      -7132, "Xi_b'~^+" },
    1319              :       {       7142, "Xi_b'c^0" },
    1320              :       {      -7142, "Xi_b'c~^0" },
    1321              :       {       7152, "Xi_b'b^-" },
    1322              :       {      -7152, "Xi_b'b~^+" },
    1323              :       {       7162, "Xi_b't^0" },
    1324              :       {      -7162, "Xi_b't~^0" },
    1325              :       {       7212, "Sigma_b'^0" },
    1326              :       {      -7212, "Sigma_b'~^0" },
    1327              :       {       7214, "Sigma*_b'^0" },
    1328              :       {      -7214, "Sigma*_b'~^0" },
    1329              :       {       7222, "Sigma_b'^+" },
    1330              :       {      -7222, "Sigma_b'~^-" },
    1331              :       {       7224, "Sigma*_b'^+" },
    1332              :       {      -7224, "Sigma*_b'~^-" },
    1333              :       {       7232, "Xi_b'^0" },
    1334              :       {      -7232, "Xi_b'~^0" },
    1335              :       {       7242, "Xi_b'c^+" },
    1336              :       {      -7242, "Xi_b'c~^-" },
    1337              :       {       7252, "Xi_b'b^0" },
    1338              :       {      -7252, "Xi_b'b~^0" },
    1339              :       {       7262, "Xi_b't^+" },
    1340              :       {      -7262, "Xi_b't~^-" },
    1341              :       {       7312, "Xi'_b'^-" },
    1342              :       {      -7312, "Xi'_b'~^+" },
    1343              :       {       7314, "Xi*_b'^-" },
    1344              :       {      -7314, "Xi*_b'~^+" },
    1345              :       {       7322, "Xi'_b'^0" },
    1346              :       {      -7322, "Xi'_b'~^0" },
    1347              :       {       7324, "Xi*_b'^0" },
    1348              :       {      -7324, "Xi*_b'~^0" },
    1349              :       {       7332, "Omega'_b'^-" },
    1350              :       {      -7332, "Omega'_b'~^+" },
    1351              :       {       7334, "Omega*_b'^-" },
    1352              :       {      -7334, "Omega*_b'~^+" },
    1353              :       {       7342, "Omega_b'c^0" },
    1354              :       {      -7342, "Omega_b'c~^0" },
    1355              :       {       7352, "Omega_b'b^-" },
    1356              :       {      -7352, "Omega_b'b~^+" },
    1357              :       {       7362, "Omega_b't^0" },
    1358              :       {      -7362, "Omega_b't~^0" },
    1359              :       {       7412, "Xi'_b'c^0" },
    1360              :       {      -7412, "Xi'_b'c~^0" },
    1361              :       {       7414, "Xi*_b'c^0" },
    1362              :       {      -7414, "Xi*_b'c~^0" },
    1363              :       {       7422, "Xi'_b'c^+" },
    1364              :       {      -7422, "Xi'_b'c~^-" },
    1365              :       {       7424, "Xi*_b'c^+" },
    1366              :       {      -7424, "Xi*_b'c~^-" },
    1367              :       {       7432, "Omega'_b'c^0" },
    1368              :       {      -7432, "Omega'_b'c~^0" },
    1369              :       {       7434, "Omega*_b'c^0" },
    1370              :       {      -7434, "Omega*_b'c~^0" },
    1371              :       {       7442, "Omega'_b'cc^+" },
    1372              :       {      -7442, "Omega'_b'cc~^-" },
    1373              :       {       7444, "Omega*_b'cc^+" },
    1374              :       {      -7444, "Omega*_b'cc~^-" },
    1375              :       {       7452, "Omega_b'bc^0" },
    1376              :       {      -7452, "Omega_b'bc~^0" },
    1377              :       {       7462, "Omega_b'tc^+" },
    1378              :       {      -7462, "Omega_b'tc~^-" },
    1379              :       {       7512, "Xi'_b'b^-" },
    1380              :       {      -7512, "Xi'_b'b~^+" },
    1381              :       {       7514, "Xi*_b'b^-" },
    1382              :       {      -7514, "Xi*_b'b~^+" },
    1383              :       {       7522, "Xi'_b'b^0" },
    1384              :       {      -7522, "Xi'_b'b~^0" },
    1385              :       {       7524, "Xi*_b'b^0" },
    1386              :       {      -7524, "Xi*_b'b~^0" },
    1387              :       {       7532, "Omega'_b'b^-" },
    1388              :       {      -7532, "Omega'_b'b~^+" },
    1389              :       {       7534, "Omega*_b'b^-" },
    1390              :       {      -7534, "Omega*_b'b~^+" },
    1391              :       {       7542, "Omega'_b'bc^0" },
    1392              :       {      -7542, "Omega'_b'bc~^0" },
    1393              :       {       7544, "Omega*_b'bc^0" },
    1394              :       {      -7544, "Omega*_b'bc~^0" },
    1395              :       {       7552, "Omega'_b'bb^-" },
    1396              :       {      -7552, "Omega'_b'bb~^+" },
    1397              :       {       7554, "Omega*_b'bb^-" },
    1398              :       {      -7554, "Omega*_b'bb~^+" },
    1399              :       {       7562, "Omega_b'tb^0" },
    1400              :       {      -7562, "Omega_b'tb~^0" },
    1401              :       {       7612, "Xi'_b't^0" },
    1402              :       {      -7612, "Xi'_b't~^0" },
    1403              :       {       7614, "Xi*_b't^0" },
    1404              :       {      -7614, "Xi*_b't~^0" },
    1405              :       {       7622, "Xi'_b't^+" },
    1406              :       {      -7622, "Xi'_b't~^-" },
    1407              :       {       7624, "Xi*_b't^+" },
    1408              :       {      -7624, "Xi*_b't~^-" },
    1409              :       {       7632, "Omega'_b't^0" },
    1410              :       {      -7632, "Omega'_b't~^0" },
    1411              :       {       7634, "Omega*_b't^0" },
    1412              :       {      -7634, "Omega*_b't~^0" },
    1413              :       {       7642, "Omega'_b'tc^+" },
    1414              :       {      -7642, "Omega'_b'tc~^-" },
    1415              :       {       7644, "Omega*_b'tc^+" },
    1416              :       {      -7644, "Omega*_b'tc~^-" },
    1417              :       {       7652, "Omega'_b'tb^0" },
    1418              :       {      -7652, "Omega'_b'tb~^0" },
    1419              :       {       7654, "Omega*_b'tb^0" },
    1420              :       {      -7654, "Omega*_b'tb~^0" },
    1421              :       {       7662, "Omega'_b'tt^+" },
    1422              :       {      -7662, "Omega'_b'tt~^-" },
    1423              :       {       7664, "Omega*_b'tt^+" },
    1424              :       {      -7664, "Omega*_b'tt~^-" },
    1425              :       {       7712, "Xi'_b'b'^-" },
    1426              :       {      -7712, "Xi'_b'b'~^+" },
    1427              :       {       7714, "Xi*_b'b'^-" },
    1428              :       {      -7714, "Xi*_b'b'~^+" },
    1429              :       {       7722, "Xi'_b'b'^0" },
    1430              :       {      -7722, "Xi'_b'b'~^0" },
    1431              :       {       7724, "Xi*_b'b'^0" },
    1432              :       {      -7724, "Xi*_b'b'~^0" },
    1433              :       {       7732, "Omega'_b'b'^-" },
    1434              :       {      -7732, "Omega'_b'b'~^+" },
    1435              :       {       7734, "Omega*_b'b'^-" },
    1436              :       {      -7734, "Omega*_b'b'~^+" },
    1437              :       {       7742, "Omega'_b'b'c^0" },
    1438              :       {      -7742, "Omega'_b'b'c~^0" },
    1439              :       {       7744, "Omega*_b'b'c^0" },
    1440              :       {      -7744, "Omega*_b'b'c~^0" },
    1441              :       {       7752, "Omega'_b'b'b^-" },
    1442              :       {      -7752, "Omega'_b'b'b~^+" },
    1443              :       {       7754, "Omega*_b'b'b^-" },
    1444              :       {      -7754, "Omega*_b'b'b~^+" },
    1445              :       {       7762, "Omega'_b'b't^0" },
    1446              :       {      -7762, "Omega'_b'b't~^0" },
    1447              :       {       7764, "Omega*_b'b't^0" },
    1448              :       {      -7764, "Omega*_b'b't~^0" },
    1449              :       {       7774, "Omega*_b'b'b'^-" },
    1450              :       {      -7774, "Omega*_b'b'b'~^+" },
    1451              :       {       8112, "Sigma_t'^0" },
    1452              :       {      -8112, "Sigma_t'~^0" },
    1453              :       {       8114, "Sigma*_t'^0" },
    1454              :       {      -8114, "Sigma*_t'~^0" },
    1455              :       {       8122, "Lambda_t'^+" },
    1456              :       {      -8122, "Lambda_t'~^-" },
    1457              :       {       8132, "Xi_t'^0" },
    1458              :       {      -8132, "Xi_t'~^0" },
    1459              :       {       8142, "Xi_t'c^+" },
    1460              :       {      -8142, "Xi_t'c~^-" },
    1461              :       {       8152, "Xi_t'b^0" },
    1462              :       {      -8152, "Xi_t'b~^0" },
    1463              :       {       8162, "Xi_t't^+" },
    1464              :       {      -8162, "Xi_t't~^-" },
    1465              :       {       8172, "Xi_t'b'^0" },
    1466              :       {      -8172, "Xi_t'b'~^0" },
    1467              :       {       8212, "Sigma_t'^+" },
    1468              :       {      -8212, "Sigma_t'~^-" },
    1469              :       {       8214, "Sigma*_t'^+" },
    1470              :       {      -8214, "Sigma*_t'~^-" },
    1471              :       {       8222, "Sigma_t'^++" },
    1472              :       {      -8222, "Sigma_t'~^--" },
    1473              :       {       8224, "Sigma*_t'^++" },
    1474              :       {      -8224, "Sigma*_t'~^--" },
    1475              :       {       8232, "Xi_t'^+" },
    1476              :       {      -8232, "Xi_t'~^-" },
    1477              :       {       8242, "Xi_t'c^++" },
    1478              :       {      -8242, "Xi_t'c~^--" },
    1479              :       {       8252, "Xi_t'b^+" },
    1480              :       {      -8252, "Xi_t'b~^-" },
    1481              :       {       8262, "Xi_t't^++" },
    1482              :       {      -8262, "Xi_t't~^--" },
    1483              :       {       8272, "Xi_t'b'^+" },
    1484              :       {      -8272, "Xi_t'b'~^-" },
    1485              :       {       8312, "Xi'_t'^0" },
    1486              :       {      -8312, "Xi'_t'~^0" },
    1487              :       {       8314, "Xi*_t'^0" },
    1488              :       {      -8314, "Xi*_t'~^0" },
    1489              :       {       8322, "Xi'_t'^+" },
    1490              :       {      -8322, "Xi'_t'~^-" },
    1491              :       {       8324, "Xi*_t'^+" },
    1492              :       {      -8324, "Xi*_t'~^-" },
    1493              :       {       8332, "Omega'_t'^0" },
    1494              :       {      -8332, "Omega'_t'~^0" },
    1495              :       {       8334, "Omega*_t'^0" },
    1496              :       {      -8334, "Omega*_t'~^0" },
    1497              :       {       8342, "Omega_t'c^+" },
    1498              :       {      -8342, "Omega_t'c~^-" },
    1499              :       {       8352, "Omega_t'b^0" },
    1500              :       {      -8352, "Omega_t'b~^0" },
    1501              :       {       8362, "Omega_t't^+" },
    1502              :       {      -8362, "Omega_t't~^-" },
    1503              :       {       8372, "Omega_t'b'^0" },
    1504              :       {      -8372, "Omega_t'b'~^0" },
    1505              :       {       8412, "Xi'_t'c^+" },
    1506              :       {      -8412, "Xi'_t'c~^-" },
    1507              :       {       8414, "Xi*_t'c^+" },
    1508              :       {      -8414, "Xi*_t'c~^-" },
    1509              :       {       8422, "Xi'_t'c^++" },
    1510              :       {      -8422, "Xi'_t'c~^--" },
    1511              :       {       8424, "Xi*_t'c^++" },
    1512              :       {      -8424, "Xi*_t'c~^--" },
    1513              :       {       8432, "Omega'_t'c^+" },
    1514              :       {      -8432, "Omega'_t'c~^-" },
    1515              :       {       8434, "Omega*_t'c^+" },
    1516              :       {      -8434, "Omega*_t'c~^-" },
    1517              :       {       8442, "Omega'_t'cc^++" },
    1518              :       {      -8442, "Omega'_t'cc~^--" },
    1519              :       {       8444, "Omega*_t'cc^++" },
    1520              :       {      -8444, "Omega*_t'cc~^--" },
    1521              :       {       8452, "Omega_t'bc^+" },
    1522              :       {      -8452, "Omega_t'bc~^-" },
    1523              :       {       8462, "Omega_t'tc^++" },
    1524              :       {      -8462, "Omega_t'tc~^--" },
    1525              :       {       8472, "Omega_t'b'c ^+" },
    1526              :       {      -8472, "Omega_t'b'c ~^-" },
    1527              :       {       8512, "Xi'_t'b^0" },
    1528              :       {      -8512, "Xi'_t'b~^0" },
    1529              :       {       8514, "Xi*_t'b^0" },
    1530              :       {      -8514, "Xi*_t'b~^0" },
    1531              :       {       8522, "Xi'_t'b^+" },
    1532              :       {      -8522, "Xi'_t'b~^-" },
    1533              :       {       8524, "Xi*_t'b^+" },
    1534              :       {      -8524, "Xi*_t'b~^-" },
    1535              :       {       8532, "Omega'_t'b^0" },
    1536              :       {      -8532, "Omega'_t'b~^0" },
    1537              :       {       8534, "Omega*_t'b^0" },
    1538              :       {      -8534, "Omega*_t'b~^0" },
    1539              :       {       8542, "Omega'_t'bc^+" },
    1540              :       {      -8542, "Omega'_t'bc~^-" },
    1541              :       {       8544, "Omega*_t'bc^+" },
    1542              :       {      -8544, "Omega*_t'bc~^-" },
    1543              :       {       8552, "Omega'_t'bb^0" },
    1544              :       {      -8552, "Omega'_t'bb~^0" },
    1545              :       {       8554, "Omega*_t'bb^0" },
    1546              :       {      -8554, "Omega*_t'bb~^0" },
    1547              :       {       8562, "Omega_t'tb^+" },
    1548              :       {      -8562, "Omega_t'tb~^-" },
    1549              :       {       8572, "Omega_t'b'b ^0" },
    1550              :       {      -8572, "Omega_t'b'b ~^0" },
    1551              :       {       8612, "Xi'_t't^+" },
    1552              :       {      -8612, "Xi'_t't~^-" },
    1553              :       {       8614, "Xi*_t't^+" },
    1554              :       {      -8614, "Xi*_t't~^-" },
    1555              :       {       8622, "Xi'_t't^++" },
    1556              :       {      -8622, "Xi'_t't~^--" },
    1557              :       {       8624, "Xi*_t't^++" },
    1558              :       {      -8624, "Xi*_t't~^--" },
    1559              :       {       8632, "Omega'_t't^+" },
    1560              :       {      -8632, "Omega'_t't~^-" },
    1561              :       {       8634, "Omega*_t't^+" },
    1562              :       {      -8634, "Omega*_t't~^-" },
    1563              :       {       8642, "Omega'_t'tc^++" },
    1564              :       {      -8642, "Omega'_t'tc~^--" },
    1565              :       {       8644, "Omega*_t'tc^++" },
    1566              :       {      -8644, "Omega*_t'tc~^--" },
    1567              :       {       8652, "Omega'_t'tb^+" },
    1568              :       {      -8652, "Omega'_t'tb~^-" },
    1569              :       {       8654, "Omega*_t'tb^+" },
    1570              :       {      -8654, "Omega*_t'tb~^-" },
    1571              :       {       8662, "Omega'_t'tt^++" },
    1572              :       {      -8662, "Omega'_t'tt~^--" },
    1573              :       {       8664, "Omega*_t'tt^++" },
    1574              :       {      -8664, "Omega*_t'tt~^--" },
    1575              :       {       8672, "Omega_t'b't ^+" },
    1576              :       {      -8672, "Omega_t'b't ~^-" },
    1577              :       {       8712, "Xi'_t'b'^0" },
    1578              :       {      -8712, "Xi'_t'b'~^0" },
    1579              :       {       8714, "Xi*_t'b'^0" },
    1580              :       {      -8714, "Xi*_t'b'~^0" },
    1581              :       {       8722, "Xi'_t'b'^+" },
    1582              :       {      -8722, "Xi'_t'b'~^-" },
    1583              :       {       8724, "Xi*_t'b'^+" },
    1584              :       {      -8724, "Xi*_t'b'~^-" },
    1585              :       {       8732, "Omega'_t'b'^0" },
    1586              :       {      -8732, "Omega'_t'b'~^0" },
    1587              :       {       8734, "Omega*_t'b'^0" },
    1588              :       {      -8734, "Omega*_t'b'~^0" },
    1589              :       {       8742, "Omega'_t'b'c^+" },
    1590              :       {      -8742, "Omega'_t'b'c~^-" },
    1591              :       {       8744, "Omega*_t'b'c^+" },
    1592              :       {      -8744, "Omega*_t'b'c~^-" },
    1593              :       {       8752, "Omega'_t'b'b^0" },
    1594              :       {      -8752, "Omega'_t'b'b~^0" },
    1595              :       {       8754, "Omega*_t'b'b^0" },
    1596              :       {      -8754, "Omega*_t'b'b~^0" },
    1597              :       {       8762, "Omega'_t'b't^+" },
    1598              :       {      -8762, "Omega'_t'b't~^-" },
    1599              :       {       8764, "Omega*_t'b't^+" },
    1600              :       {      -8764, "Omega*_t'b't~^-" },
    1601              :       {       8772, "Omega'_t'b'b'^0" },
    1602              :       {      -8772, "Omega'_t'b'b'~^0" },
    1603              :       {       8774, "Omega*_t'b'b'^0" },
    1604              :       {      -8774, "Omega*_t'b'b'~^0" },
    1605              :       {       8812, "Xi'_t't'^+" },
    1606              :       {      -8812, "Xi'_t't'~^-" },
    1607              :       {       8814, "Xi*_t't'^+" },
    1608              :       {      -8814, "Xi*_t't'~^-" },
    1609              :       {       8822, "Xi'_t't'^++" },
    1610              :       {      -8822, "Xi'_t't'~^--" },
    1611              :       {       8824, "Xi*_t't'^++" },
    1612              :       {      -8824, "Xi*_t't'~^--" },
    1613              :       {       8832, "Omega'_t't'^+" },
    1614              :       {      -8832, "Omega'_t't'~^-" },
    1615              :       {       8834, "Omega*_t't'^+" },
    1616              :       {      -8834, "Omega*_t't'~^-" },
    1617              :       {       8842, "Omega'_t't'c^++" },
    1618              :       {      -8842, "Omega'_t't'c~^--" },
    1619              :       {       8844, "Omega*_t't'c^++" },
    1620              :       {      -8844, "Omega*_t't'c~^--" },
    1621              :       {       8852, "Omega'_t't'b^+" },
    1622              :       {      -8852, "Omega'_t't'b~^-" },
    1623              :       {       8854, "Omega*_t't'b^+" },
    1624              :       {      -8854, "Omega*_t't'b~^-" },
    1625              :       {       8862, "Omega'_t't't^++" },
    1626              :       {      -8862, "Omega'_t't't~^--" },
    1627              :       {       8864, "Omega*_t't't^++" },
    1628              :       {      -8864, "Omega*_t't't~^--" },
    1629              :       {       8872, "Omega'_t't'b'^+" },
    1630              :       {      -8872, "Omega'_t't'b'~^-" },
    1631              :       {       8874, "Omega*_t't'b'^+" },
    1632              :       {      -8874, "Omega*_t't'b'~^-" },
    1633              :       {       8884, "Omega*_t't't'^++" },
    1634              :       {      -8884, "Omega*_t't't'~^--" },
    1635              :       {    9221132, "Theta^+" },
    1636              :       {    9331122, "Phi^--" },
    1637              :       {    1000993, "R_~gg^0" },
    1638              :       {    1009113, "R_~gd~d^0" },
    1639              :       {    1009213, "R_~gu~d^+" },
    1640              :       {    1009223, "R_~gu~u^0" },
    1641              :       {    1009313, "R_~gd~s^0" },
    1642              :       {    1009323, "R_~gu~s^+" },
    1643              :       {    1009333, "R_~gs~s^0" },
    1644              :       {    1091114, "R_~gddd^-" },
    1645              :       {    1092114, "R_~gudd^0" },
    1646              :       {    1092214, "R_~guud^+" },
    1647              :       {    1092224, "R_~guuu^++" },
    1648              :       {    1093114, "R_~gsdd^-" },
    1649              :       {    1093214, "R_~gsud^0" },
    1650              :       {    1093224, "R_~gsuu^+" },
    1651              :       {    1093314, "R_~gssd^-" },
    1652              :       {    1093324, "R_~gssu^0" },
    1653              :       {    1093334, "R_~gsss^-" },
    1654              :       {    1000612, "R_~t_1~d^+" },
    1655              :       {    1000622, "R_~t_1~u^0" },
    1656              :       {    1000632, "R_~t_1~s^+" },
    1657              :       {    1000642, "R_~t_1~c^0" },
    1658              :       {    1000652, "R_~t_1~b^+" },
    1659              :       {    1006113, "R_~t_1dd_1^0" },
    1660              :       {    1006211, "R_~t_1ud_0^+" },
    1661              :       {    1006213, "R_~t_1ud_1^+" },
    1662              :       {    1006223, "R_~t_1uu_1^++" },
    1663              :       {    1006311, "R_~t_1sd_0^0" },
    1664              :       {    1006313, "R_~t_1sd_1^0" },
    1665              :       {    1006321, "R_~t_1su_0^+" },
    1666              :       {    1006323, "R_~t_1su_1^+" },
    1667              :       {    1006333, "R_~t_1ss_1^0" },
    1668              :       { 1000010010, "Hydrogen" },
    1669              :       { 1000010020, "Deuterium" },
    1670              :       {-1000010020, "Anti-Deuterium" },
    1671              :       { 1000010030, "Tritium" },
    1672              :       {-1000010030, "Anti-Tritium" },
    1673              :       { 1000020030, "He3" },
    1674              :       {-1000020030, "Anti-He3" },
    1675              :       { 1000020040, "Alpha-(He4)" },
    1676              :       {-1000020040, "Anti-Alpha-(He4)" }
    1677              :   };
    1678              : 
    1679              :   int lnames = sizeof(SNames)/sizeof(SNames[0]);
    1680            0 :   for( int k=0; k!=lnames; ++k) {
    1681            0 :       m.insert( std::make_pair( SNames[k].pid, std::string(SNames[k].pname)) );
    1682            0 :       nameMap.insert( std::make_pair( std::string(SNames[k].pname), SNames[k].pid ) );
    1683              :   }
    1684            0 :   static ParticleNameMap mymaps(m,nameMap);
    1685              : 
    1686            0 :   return mymaps;
    1687              : }  // ParticleNameInit()
    1688              : 
    1689            0 : void writeParticleNameLine( int i, std::ostream & os  )
    1690              : {
    1691            0 :     if ( validParticleName( i ) ) {
    1692            0 :         std::string pn = particleName( i );
    1693            0 :         int pid = particleName( pn );
    1694            0 :         os << " PDT number: " ;
    1695            0 :         os.width(12);
    1696            0 :         os << i << " PDT name: " << pn << std::endl;
    1697              :         // verify reverse lookup
    1698            0 :         if( pid != i ) {
    1699              :             os << "HepPID::writeParticleNameLine ERROR: "
    1700            0 :                << " got " << pid << " instead of " << i << std::endl;
    1701              :         }
    1702              :     }
    1703            0 :     return;
    1704              : }  // writeParticleNameLine()
    1705              : 
    1706            0 : std::string dyonName( const int & pid )
    1707              : {
    1708            0 :     std::ostringstream pn;
    1709            0 :     pn << "Dyon^" << digit(nq1,pid) << digit(nq2,pid) << digit(nq3,pid);
    1710            0 :     if ( digit(nl,pid) == 1 ) {
    1711            0 :        if ( pid > 0 ) {
    1712            0 :           pn << "++";
    1713              :        } else {
    1714            0 :           pn << "--";
    1715              :        }
    1716            0 :     } else if ( digit(nl,pid) == 2 ) {
    1717            0 :        if ( pid > 0 ) {
    1718            0 :           pn << "+-";
    1719              :        } else {
    1720            0 :           pn << "-+";
    1721              :        }
    1722              :     }
    1723            0 :     return pn.str();
    1724            0 : }
    1725              : 
    1726            0 : std::string qballName( const int & pid )
    1727              : {
    1728            0 :     std::ostringstream pn;
    1729            0 :     pn << "QBall^" << ((abspid(pid)/100)%1000) << "." << digit(nq3,pid);
    1730            0 :     if ( pid > 0 ) {
    1731            0 :        pn << "+";
    1732              :     } else {
    1733            0 :        pn << "-";
    1734              :     }
    1735            0 :     return pn.str();
    1736            0 : }
    1737              : 
    1738            0 : int  checkForSpecialParticle( const std::string & s )
    1739              : {
    1740              :     int chg, chg2, id;
    1741              :     int m = 1;
    1742            0 :     int len = s.length();
    1743            0 :     if( s.substr(0,4) == "Dyon" ) {
    1744            0 :        std::istringstream var1(s.substr(5,3).c_str());
    1745            0 :        var1 >> chg;
    1746            0 :        if( s.substr(len-2,1) == "+" && s.substr(len-1,1) == "-") m = 2;
    1747            0 :        if( s.substr(len-2,1) == "-" && s.substr(len-1,1) == "+") m = 2;
    1748            0 :        id = 4100000 + m*10000 + chg*10;
    1749            0 :        if( s.substr(len-2,1) == "-" ) id = -id;
    1750              :        return id;
    1751            0 :     }
    1752            0 :     if( s.substr(0,5) == "QBall" ) {
    1753            0 :        int rem = len - 9;
    1754            0 :        std::istringstream var2(s.substr(6,rem).c_str());
    1755            0 :        var2 >> chg;
    1756            0 :        std::istringstream var3(s.substr(7+rem,1).c_str());
    1757            0 :        var3 >> chg2;
    1758            0 :        id = 10000000 + chg*100+chg2*10;
    1759            0 :        if( s.substr(len-1,1) == "-" ) id = -id;
    1760              :        return id;
    1761            0 :     }
    1762              :     return 0;
    1763              : }
    1764              : 
    1765              : } // unnamed namespace
    1766              : 
    1767              : //
    1768              : // getPartcleIdMap is the ONLY function allowed to call ParticleNameInit
    1769              : //
    1770            0 : ParticleNameMap const &  getParticleNameMap()
    1771              : {
    1772            0 :   static  ParticleNameMap const &  pmap = ParticleNameInit();
    1773            0 :   return pmap;
    1774              : }  // getPartcleIdMap()
    1775              : 
    1776            0 : bool validParticleName( const int & pid )
    1777              : {
    1778              :     // check for the special cases first
    1779            0 :     if ( isDyon(pid) ) return true;
    1780            0 :     if ( isQBall(pid) ) return true;
    1781              :     
    1782            0 :     static  ParticleNameMap const &  pmap = getParticleNameMap();
    1783              : 
    1784            0 :     ParticleNameMap::idIterator const cit = pmap.find( pid );
    1785              :     return ( cit == pmap.end() )
    1786            0 :          ? false
    1787              :          : true;
    1788              : }  // validParticleName()
    1789              : 
    1790            0 : bool validParticleName( const std::string & s )
    1791              : {
    1792            0 :     static  ParticleNameMap const &  pmap = getParticleNameMap();
    1793            0 :     ParticleNameMap::nameIterator const cit = pmap.findString( s );
    1794              :     return ( cit == pmap.endLookupMap() )
    1795            0 :          ? false
    1796            0 :          : true;
    1797              : }  // validParticleName()
    1798              : 
    1799            0 : std::string  particleName( const int & pid )
    1800              : {
    1801              :     // check for the special cases first
    1802            0 :     if ( isDyon(pid) ) return dyonName(pid);
    1803            0 :     if ( isQBall(pid) ) return qballName(pid);
    1804              :     
    1805            0 :     static  ParticleNameMap const &  pmap = getParticleNameMap();
    1806              : 
    1807            0 :     ParticleNameMap::idIterator const cit = pmap.find( pid );
    1808              :     return ( cit == pmap.end() )
    1809            0 :          ? std::string("not defined")
    1810            0 :          : cit->second;
    1811              : }  // particleName()
    1812              : 
    1813            0 : int  particleName( const std::string & s )
    1814              : {
    1815            0 :     static  ParticleNameMap const &  pmap = getParticleNameMap();
    1816            0 :     ParticleNameMap::nameIterator const cit = pmap.findString( s );
    1817              :     return ( cit == pmap.endLookupMap() )
    1818            0 :          ? checkForSpecialParticle(s)
    1819            0 :          : cit->second;
    1820              : }  // particleName()
    1821              : 
    1822              : //
    1823              : // list all the defined names
    1824              : //
    1825            0 : void  listParticleNames( std::ostream & os  )
    1826              : {
    1827            0 :     writeVersion( os );
    1828              :     os << "     HepPID Particle List" << std::endl;
    1829              :     os << std::endl;
    1830              : 
    1831              :     // simple: static  PartcleIdMap const &  pmap = getPartcleIdMap();
    1832              :     // simple: for( PartcleIdMap::const_iterator cit = pmap.begin(), mend = pmap.end(); 
    1833              :     // simple:                                 cit != mend;
    1834              :         // simple:                        ++cit ) {
    1835              :         // simple: os << "  PDT number: " ;
    1836              :         // simple: os.width(12);
    1837              :         // simple: os << cit->first << "  PDT name: " << cit->second << std::endl;
    1838              :     // simple: }
    1839              :     int id, i, j, q1, q2, q3, l, m, n;
    1840              :     // special cases
    1841            0 :     for( id=1; id<101; ++id) {
    1842            0 :         writeParticleNameLine(  id, os );
    1843            0 :         writeParticleNameLine( -id, os );
    1844              :     }
    1845            0 :     for( i=11; i<1000; ++i) {
    1846            0 :         id = i*10;
    1847            0 :         writeParticleNameLine(  id, os );
    1848            0 :         writeParticleNameLine( -id, os );
    1849              :     }
    1850              :     // SUSY
    1851            0 :     for( n=1; n<3; ++n) {
    1852            0 :         for( q1=0; q1<10; ++q1) {
    1853            0 :             for( j=0; j<10; ++j) {
    1854            0 :                 id = 1000000*n+10*q1+j;
    1855            0 :                 writeParticleNameLine(  id, os );
    1856            0 :                 writeParticleNameLine( -id, os );
    1857              :             }
    1858              :         }
    1859              :     }
    1860              :     // technicolor, etc.
    1861            0 :     for( n=3; n<7; ++n) {
    1862            0 :         for( q2=0; q2<10; ++q2) {
    1863            0 :             for( q1=0; q1<10; ++q1) {
    1864            0 :                 for( j=0; j<10; ++j) {
    1865            0 :                     for( m=0; m<10; ++m) {
    1866            0 :                         for( l=0; l<7; ++l) {
    1867            0 :                             id = 1000000*n+100000*m+10000*l+100*q2+10*q1+j;
    1868              :                             // save dyons for later
    1869            0 :                             if( !(n == 4 && m == 1) ) {
    1870            0 :                             writeParticleNameLine(  id, os );
    1871            0 :                             writeParticleNameLine( -id, os );
    1872              :                             }
    1873              :                         }
    1874              :                     }
    1875              :                 }
    1876              :             }
    1877              :         }
    1878              :     }
    1879              :     // R-hadrons
    1880            0 :     for( q3=0; q3<10; ++q3) {
    1881            0 :         for( q2=1; q2<10; ++q2) {
    1882            0 :             for( q1=1; q1<10; ++q1) {
    1883            0 :                 for( j=1; j<5; ++j) {
    1884            0 :                     id = 1000000+1000*q3+100*q2+10*q1+j;
    1885            0 :                     writeParticleNameLine( id, os );
    1886            0 :                     if(q3 > 0 ) id = 1000000+90000+1000*q3+100*q2+10*q1+j;
    1887            0 :                     writeParticleNameLine( id, os );
    1888              :                 }
    1889              :             }
    1890              :         }
    1891              :     }
    1892              :     // miscellaneous generator particles
    1893            0 :     for( l=0; l<9; ++l) {
    1894            0 :         for( i=1; i<100; ++i) {
    1895            0 :             id = 9900000+10000*l+i;
    1896            0 :             writeParticleNameLine(  id, os );
    1897            0 :             writeParticleNameLine( -id, os );
    1898              :         }
    1899            0 :         for( q3=0; q3<10; ++q3) {
    1900            0 :             for( q2=1; q2<10; ++q2) {
    1901            0 :                 for( q1=1; q1<10; ++q1) {
    1902            0 :                     for( j=0; j<10; ++j) {
    1903            0 :                         id = 9900000+10000*l+1000*q3+100*q2+10*q1+j;
    1904            0 :                         writeParticleNameLine(  id, os );
    1905            0 :                         writeParticleNameLine( -id, os );
    1906              :                     }
    1907              :                 }
    1908              :             }
    1909              :         }
    1910              :     }
    1911              :     // diquark
    1912            0 :     for( i=11; i<100; ++i) {
    1913            0 :         for( j=0; j<10; ++j) {
    1914            0 :             id = 100*i+j;
    1915            0 :             writeParticleNameLine(  id, os );
    1916            0 :             writeParticleNameLine( -id, os );
    1917              :         }
    1918              :     }
    1919              :     // mesons
    1920            0 :     for( q2=1; q2<10; ++q2) {
    1921            0 :         for( q1=1; q1<10; ++q1) {
    1922            0 :             for( j=1; j<10; ++j) {
    1923            0 :                 for( m=0; m<9; ++m) {
    1924            0 :                     for( l=0; l<10; ++l) {
    1925            0 :                         id = 100000*m+10000*l+100*q2+10*q1+j;
    1926            0 :                         writeParticleNameLine(  id, os );
    1927            0 :                         writeParticleNameLine( -id, os );
    1928            0 :                         id = 9000000+100000*m+10000*l+100*q2+10*q1+j;
    1929            0 :                         writeParticleNameLine(  id, os );
    1930            0 :                         writeParticleNameLine( -id, os );
    1931              :                     }
    1932              :                 }
    1933              :             }
    1934              :         }
    1935              :     }
    1936              :     // baryons
    1937            0 :     for( q3=1; q3<10; ++q3) {
    1938            0 :         for( q2=1; q2<10; ++q2) {
    1939            0 :             for( q1=1; q1<10; ++q1) {
    1940            0 :                 for( j=1; j<10; ++j) {
    1941            0 :                     for( m=0; m<9; ++m) {
    1942            0 :                         id = 10000*m+1000*q3+100*q2+10*q1+j;
    1943            0 :                         writeParticleNameLine(  id, os );
    1944            0 :                         writeParticleNameLine( -id, os );
    1945              :                     }
    1946              :                 }
    1947              :             }
    1948              :         }
    1949              :     }
    1950              :     // pentaquarks
    1951            0 :     for( l=1; l<9; ++l ) {
    1952            0 :         for ( m=1; m<9; ++m ) {
    1953            0 :             for( q3=1; q3<9; ++q3) {
    1954            0 :                 for( q2=1; q2<9; ++q2) {
    1955            0 :                     for( q1=1; q1<9; ++q1) {
    1956            0 :                         id = 9*1000000+l*100000+m*10000+1000*q3+100*q2+10*q1+2;
    1957            0 :                         writeParticleNameLine(  id, os );
    1958            0 :                         writeParticleNameLine( -id, os );
    1959              :                     }
    1960              :                 }
    1961              :             }
    1962              :         }
    1963              :     }
    1964              :     // ions
    1965            0 :     for( i=1; i<3; ++i) {
    1966            0 :         for( m=1; m<5; ++m) {
    1967            0 :                 id = 1000000000+10*m+10000*i;
    1968            0 :                 writeParticleNameLine(  id, os );
    1969            0 :                 writeParticleNameLine( -id, os );
    1970              :         }
    1971              :     }
    1972              :     // some Dyons
    1973            0 :     for( q3=0; q3<2; ++q3) {
    1974            0 :         for( q2=0; q2<4; ++q2) {
    1975            0 :             for( q1=0; q1<10; ++q1) {
    1976            0 :                 ++q1;
    1977            0 :                 id = 4110000+1000*q3+100*q2+10*q1;
    1978            0 :                 writeParticleNameLine(  id, os );
    1979            0 :                 writeParticleNameLine( -id, os );
    1980            0 :                 id = 4120000+1000*q3+100*q2+10*q1;
    1981            0 :                 writeParticleNameLine(  id, os );
    1982            0 :                 writeParticleNameLine( -id, os );
    1983              :             }
    1984              :         }
    1985              :     }
    1986              :     // a few QBalls
    1987            0 :     for( i=1; i<199; ++i ) {
    1988            0 :         for( m=1; m<10; ) {
    1989            0 :                 id = 10000000+10*m+100*i;
    1990            0 :                 writeParticleNameLine(  id, os );
    1991            0 :                 writeParticleNameLine( -id, os );
    1992            0 :                 m += 3;
    1993              :         }
    1994              :         i += 11;
    1995              :     }
    1996            0 :     return;
    1997              : }  // listParticleNames()
    1998              : 
    1999              : }       // HepPID
        

Generated by: LCOV version 2.0-1