LCOV - code coverage report
Current view: top level - libs/HepPID/src - ParticleName.cc (source / functions) Hit Total Coverage
Test: coverage.info.cleaned Lines: 0 183 0.0 %
Date: 2024-04-29 14:43:01 Functions: 0 13 0.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             :          ? 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 1.14