diff --git a/Inputs/DetectorConfiguration/e628.detector b/Inputs/DetectorConfiguration/e628.detector
index cada95eea565c463827ddfb020671f11d0d45365..4892f6d01fcd8ec27112d56dd6f62003800a264d 100644
--- a/Inputs/DetectorConfiguration/e628.detector
+++ b/Inputs/DetectorConfiguration/e628.detector
@@ -76,7 +76,7 @@ VIS=  all
 
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%         
-TiaraHyball
+Tiara
 TiaraHyballWedge
    Z= -147
    R= 0
diff --git a/NPLib/Tiara/TTiaraBarrelPhysics.cxx b/NPLib/Tiara/TTiaraBarrelPhysics.cxx
index 67dd8ccbc4974901452a716680726b91d5f5dc07..af95b28f031ec5e7ad49f197c7c6d0c3c4f5f487 100644
--- a/NPLib/Tiara/TTiaraBarrelPhysics.cxx
+++ b/NPLib/Tiara/TTiaraBarrelPhysics.cxx
@@ -733,8 +733,8 @@ for(unsigned int k = 0 ; k < sizeB ; k++){
       class brlproxy{
         public:
           brlproxy(){
-            NPA::DetectorFactory::getInstance()->AddToken("TiaraInnerBarrel=","Tiara");
-            NPA::DetectorFactory::getInstance()->AddDetector("TiaraInnerBarrel=",TTiaraBarrelPhysics::Construct);
+            NPA::DetectorFactory::getInstance()->AddToken("Tiara","Tiara");
+            NPA::DetectorFactory::getInstance()->AddDetector("Tiara",TTiaraBarrelPhysics::Construct);
           }
       };
 
diff --git a/NPLib/Tiara/TTiaraHyballPhysics.cxx b/NPLib/Tiara/TTiaraHyballPhysics.cxx
index 55a620cc36fbab676bf5015d352329b2c75819e7..17860efd3373619f8d4db6855d5939ec5de0ef27 100644
--- a/NPLib/Tiara/TTiaraHyballPhysics.cxx
+++ b/NPLib/Tiara/TTiaraHyballPhysics.cxx
@@ -786,8 +786,8 @@ extern "C"{
 class proxy{
   public:
     proxy(){
-      NPA::DetectorFactory::getInstance()->AddToken("TiaraHyballWedge","Tiara");
-      NPA::DetectorFactory::getInstance()->AddDetector("TiaraHyballWedge",TTiaraHyballPhysics::Construct);
+      NPA::DetectorFactory::getInstance()->AddToken("Tiara","Tiara");
+      NPA::DetectorFactory::getInstance()->AddDetector("Tiara",TTiaraHyballPhysics::Construct);
     }
 };
 
diff --git a/NPSimulation/Core/NPSDetectorFactory.cc b/NPSimulation/Core/NPSDetectorFactory.cc
index da823e94def76c8e9bceb828fe614e98587f5eca..dc04247933a3622a096a75fd2b6be55f5b365112 100644
--- a/NPSimulation/Core/NPSDetectorFactory.cc
+++ b/NPSimulation/Core/NPSDetectorFactory.cc
@@ -85,7 +85,12 @@ NPS::VDetector* DetectorFactory::Construct(std::string Token){
     
     if(m_Construct.find(Token)!=m_Construct.end())
       return  m_Construct[Token]();
-  
+ 
+    // Test for an alternative token
+    else if(m_TokenAlternative.find(Token)!=m_TokenAlternative.end()){
+      return m_Construct[m_TokenAlternative[Token]]();
+    } 
+
     else{
       std::cout << "Warning: Detector with Token " << Token << " has no Constructor or no Library" << std::endl;
       return NULL;
@@ -130,3 +135,16 @@ void DetectorFactory::AddToken(std::string Token, std::string LibName){
   
   m_TokenLib[Token] = LibName;
 }
+////////////////////////////////////////////////////////////////////////////////
+ void DetectorFactory::AddTokenAlternative(std::string MainToken, std::string TokenAlternative){ 
+  // Make sure the main token exit:
+   if(m_TokenLib.find(MainToken)==m_TokenLib.end()){
+  cout << "\033[1;33m **** ERROR: Cannot add Alternative token " << TokenAlternative << " to main token "
+       << MainToken << " because main token does not exist\033[0m" << endl ;
+  exit(1);
+  }
+
+   else{
+    m_TokenAlternative[TokenAlternative] = MainToken;
+   }
+ }
diff --git a/NPSimulation/Core/NPSDetectorFactory.hh b/NPSimulation/Core/NPSDetectorFactory.hh
index 19484638f27699625d62db76f9cd8f4a40bddfa9..85929df1d5bc458a1abe25f9ebb245e083c55156 100644
--- a/NPSimulation/Core/NPSDetectorFactory.hh
+++ b/NPSimulation/Core/NPSDetectorFactory.hh
@@ -17,6 +17,7 @@ class DetectorFactory{
       NPS::VDetector* Construct(std::string Token);
       void ReadClassList(std::string FileList);
       void AddToken(std::string Token, std::string LibName);
+      void AddTokenAlternative(std::string mainToken, std::string Alternative);
       void AddDetector(std::string Token, ClassDetectorFactoryFn fn);
       void CreateClassList(string FileName);
   private:
@@ -25,6 +26,8 @@ class DetectorFactory{
       std::map<std::string,ClassDetectorFactoryFn> m_Construct;
       // Map that Match the Token with the Lib to be loaded
       std::map<std::string,std::string> m_TokenLib;
+      // Map of alternative token
+      std::map<std::string,std::string> m_TokenAlternative;
 };
 }
 #endif
diff --git a/NPSimulation/Tiara/Tiara.cc b/NPSimulation/Tiara/Tiara.cc
index 579bff71e135bd42ba6b7d22f9f632f535c8451d..29b69712f7ed1e9c6b7ed0e6c4f12f6610800fa6 100644
--- a/NPSimulation/Tiara/Tiara.cc
+++ b/NPSimulation/Tiara/Tiara.cc
@@ -874,8 +874,8 @@ extern "C"{
 class brlproxy{
   public:
     brlproxy(){
-      NPS::DetectorFactory::getInstance()->AddToken("TiaraInnerBarrel=","Tiara");
-      NPS::DetectorFactory::getInstance()->AddDetector("TiaraInnerBarrel=",Tiara::Construct);
+      NPS::DetectorFactory::getInstance()->AddToken("Tiara","Tiara");
+      NPS::DetectorFactory::getInstance()->AddDetector("Tiara",Tiara::Construct);
     }
 };