diff --git a/MuonSpectrometer/MuonCablings/MuonCablingData/MuonCablingData/MdtMapBase.h b/MuonSpectrometer/MuonCablings/MuonCablingData/MuonCablingData/MdtMapBase.h
index de5eb24d3493d5394eda26d26006bb6afa5aa8ef..cce06952d5df5e6bd7053756bbee15354f42b2aa 100644
--- a/MuonSpectrometer/MuonCablings/MuonCablingData/MuonCablingData/MdtMapBase.h
+++ b/MuonSpectrometer/MuonCablings/MuonCablingData/MuonCablingData/MdtMapBase.h
@@ -57,7 +57,7 @@ template<class T> class MdtMapBase
   bool addItem(uint8_t itemId, T* item);
 
   /** get function - fast, used for online->offline conversion */
-  T* getItem(uint8_t itemId);
+  T* getItem(uint8_t itemId) const;
 
  private:
 
@@ -65,21 +65,21 @@ template<class T> class MdtMapBase
   const std::string m_itemName;
   
   /** pointer to the current item */
-  T* m_currentItem;
+  //T* m_currentItem;
 
   /** map containing the items */
   MapOfItems* m_mapOfItems;
 
   /** private access function */
-  T* findItem(uint8_t itemId);  
+  T* findItem(uint8_t itemId) const;  
 
 };
 
 
 /** default constructor */
 template<class T> MdtMapBase<T>::MdtMapBase(uint8_t moduleId, const std::string itemName) :
-  m_moduleId(moduleId), m_itemName(itemName), m_currentItem(NULL)
-     
+m_moduleId(moduleId), m_itemName(itemName)//, m_currentItem(NULL)
+  
 { 
   //  m_mapOfItems = new std::map< uint8_t, T*, std::less<uint8_t> >();
   m_mapOfItems = new MapOfItems();
@@ -124,7 +124,7 @@ template<class T> void MdtMapBase<T>::clear()
     
   }
   m_mapOfItems->clear();
-  m_currentItem=NULL;
+  //m_currentItem=NULL;
 }
 
 /** Add an item to the map */
@@ -160,8 +160,8 @@ template<class T> bool MdtMapBase<T>::addItem(uint8_t itemId, T* item) {
 
 
 /** return the item for a given access key (onlineId) */
-template<class T> T* MdtMapBase<T>::getItem(uint8_t itemId) {
-
+template<class T> T* MdtMapBase<T>::getItem(uint8_t itemId) const{
+  /*
   if ( m_currentItem ) {
     if ( itemId == m_currentItem->moduleId() ) {
       return m_currentItem;
@@ -173,15 +173,16 @@ template<class T> T* MdtMapBase<T>::getItem(uint8_t itemId) {
   else {
     return findItem(itemId);
   }
-
+  */
+  return findItem(itemId);
 }
 
 
 /** find the item in the datamember map */
-template<class T> T* MdtMapBase<T>::findItem(uint8_t itemId) {
+template<class T> T* MdtMapBase<T>::findItem(uint8_t itemId) const{
 
   typename MapOfItems::const_iterator it = m_mapOfItems->find(itemId);
-
+  /*
   if (it!=m_mapOfItems->end()) {
     m_currentItem = (*it).second;
   }
@@ -189,9 +190,14 @@ template<class T> T* MdtMapBase<T>::findItem(uint8_t itemId) {
     //    *m_log << MSG::ERROR << m_itemName << " with Id: " << MSG::hex << itemId 
     //   << MSG::dec << " not found " << endmsg;
     m_currentItem=NULL;
-  }
-  
+  }  
   return m_currentItem;
+  */
+  if (it!=m_mapOfItems->end()) {
+    return (*it).second;
+  } else {    
+    return NULL;
+  }
 }
 
 
diff --git a/MuonSpectrometer/MuonCablings/MuonCablingData/MuonCablingData/MuonMDT_CablingMap.h b/MuonSpectrometer/MuonCablings/MuonCablingData/MuonCablingData/MuonMDT_CablingMap.h
index bd0f59a37016e87b26c20aef117a90490fca1cae..1c8e34e58bf0d63ce2cfc33d8bd303103c7fb5ef 100644
--- a/MuonSpectrometer/MuonCablings/MuonCablingData/MuonCablingData/MuonMDT_CablingMap.h
+++ b/MuonSpectrometer/MuonCablings/MuonCablingData/MuonCablingData/MuonMDT_CablingMap.h
@@ -63,7 +63,7 @@ class MuonMDT_CablingMap : public MdtMapBase<MdtSubdetectorMap> {
 		    int tdcId, int channelZero);
 
   /** Get function */
-  MdtSubdetectorMap* getSubdetectorMap(uint8_t subdetectorId);
+  MdtSubdetectorMap* getSubdetectorMap(uint8_t subdetectorId) const;
 
   /** return the ROD id of a given chamber, given station, eta, phi */
   uint32_t getROBId(int station, int eta, int phi);
@@ -84,7 +84,7 @@ class MuonMDT_CablingMap : public MdtMapBase<MdtSubdetectorMap> {
   bool getOfflineId(uint8_t subdetectorId,uint8_t rodId,uint8_t csmId,
 		    uint8_t tdcId,uint8_t channelId,
 		    int& stationName, int& stationEta, int& stationPhi,
-		    int& multiLayer, int& layer, int& tube);
+		    int& multiLayer, int& layer, int& tube) const;
 
   /** return the online id given the offline id */
   bool getOnlineId(int stationName, int stationEta, int stationPhi,
diff --git a/MuonSpectrometer/MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx b/MuonSpectrometer/MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx
index 77304b7b2af95ce5ed97463effc86461a20848d3..7765b16154f745402682c65ea179410546db5c6b 100644
--- a/MuonSpectrometer/MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx
+++ b/MuonSpectrometer/MuonCablings/MuonCablingData/src/MuonMDT_CablingMap.cxx
@@ -299,7 +299,7 @@ bool MuonMDT_CablingMap::addMezzanine( int mezType, int station, int eta, int ph
 
 
 
-MdtSubdetectorMap* MuonMDT_CablingMap::getSubdetectorMap(uint8_t subdetectorId) {
+MdtSubdetectorMap* MuonMDT_CablingMap::getSubdetectorMap(uint8_t subdetectorId) const{
   return getItem(subdetectorId);
 }
 
@@ -475,7 +475,7 @@ bool MuonMDT_CablingMap::getOfflineId(uint8_t subdetectorId,
 				      uint8_t tdcId,
 				      uint8_t channelId,
 				      int& stationName, int& stationEta, int& stationPhi,
-				      int& multiLayer, int& layer, int& tube) 
+				      int& multiLayer, int& layer, int& tube) const
 {
   
   // get the subdetector
diff --git a/MuonSpectrometer/MuonCablings/MuonMDT_Cabling/src/MdtTestCabling.cxx b/MuonSpectrometer/MuonCablings/MuonMDT_Cabling/src/MdtTestCabling.cxx
index 4bcb9ebbd57b936b974c9672dec462800d9378c1..f2f37b26e61ba7e24a163ed41be41368720fa26f 100644
--- a/MuonSpectrometer/MuonCablings/MuonMDT_Cabling/src/MdtTestCabling.cxx
+++ b/MuonSpectrometer/MuonCablings/MuonMDT_Cabling/src/MdtTestCabling.cxx
@@ -152,17 +152,17 @@ bool MdtTestCabling::testMap()
 	    int tube=0;
 
 	    m_chronoSvc->chronoStart(m_chrono1);
-
+	    /*
 	    bool cabling = m_cablingSvc->getOfflineId(subdetectorId,rodId,csmId,
 						      amtId,chanId,
 						      station,eta,phi,multi,
 						      layer,tube);
-	    /*
+	    */
 	    bool cabling = readCdo->getOfflineId(subdetectorId,rodId,csmId,
 						      amtId,chanId,
 						      station,eta,phi,multi,
 						      layer,tube);
-	    */
+
 	    m_chronoSvc->chronoStop(m_chrono1);
 
 	    if (!cabling) {