diff --git a/NPLib/MUST2/Must2Array.cxx b/NPLib/MUST2/Must2Array.cxx
index 846632eb029aac817d473758a8512f2196edd07c..bdd09301f75ff0e33c3070a3d5df0298b47a8a75 100644
--- a/NPLib/MUST2/Must2Array.cxx
+++ b/NPLib/MUST2/Must2Array.cxx
@@ -25,6 +25,7 @@
 //	STL
 #include <cmath>
 #include <iostream>	
+#include <sstream>
 #include <fstream>
 #include <string>
 #include <stdlib.h>
@@ -32,7 +33,7 @@
 //	NPL
 #include "RootInput.h"
 #include "RootOutput.h"
-
+#include "CalibrationManager.h"
 //	Root
 #include "TChain.h"
 
@@ -291,62 +292,49 @@ void MUST2Array::ReadConfiguration(string Path)
 
 }
 
-
-//	Read stream at Path and pick-up calibration parameter using Token
-//	If argument is "Simulation" no change calibration is loaded
-void MUST2Array::ReadCalibrationFile(string Path)	
-	{
-		
-		//	Order of Polynom function used for calibration
-		int Calibration_Si_E_Order 		;
-		int Calibration_Si_T_Order 		;
-		int Calibration_SiLi_E_Order 	;
-		int Calibration_CsI_E_Order 	;
-		
-		//	Calibration_Si_X_E[DetectorNumber][StripNumber][Order of Coeff]
-		vector< vector< vector< double > > >	Calibration_Si_X_E	;
-		vector< vector< vector< double > > >	Calibration_Si_X_T	;
-		
-		vector< vector< vector< double > > >	Calibration_Si_Y_E	;
-		vector< vector< vector< double > > >	Calibration_Si_Y_T	;
-	
-		//	Calibration_SiLi_E[DetectorNumber][PadNumber][Order of Coeff]
-		vector< vector< vector< double > > >	Calibration_SiLi_E	;
-		
-		//	Calibration_SiLi_E[DetectorNumber][CrystalNumber][Order of Coeff]
-		vector< vector< vector< double > > >	Calibration_CsI_E	;
-	
-		if(Path == "Simulation")	//	Simulation case: data already calibrated
+//////////// Little Tool //////////////////
+		//	tranform an integer to a string
+		string itoa(int value)
 			{
-				Calibration_Si_E_Order		=	1 		;
-				Calibration_Si_T_Order 		=	1		;
-				Calibration_SiLi_E_Order 	=	1		;
-				Calibration_CsI_E_Order 	=	1		;
-				
-				vector<double> Coef;
-				//	Order 0				Order 1
-				Coef.push_back(0) ; Coef.push_back(1) 	;
-				
-				vector< vector<double> > StripLine 		;
-				StripLine.resize( 128 , Coef)			;
-				
-				Calibration_Si_X_E.resize( NumberOfTelescope , StripLine)	;
-				Calibration_Si_X_T.resize( NumberOfTelescope , StripLine)	;
-				
-				Calibration_Si_Y_E.resize( NumberOfTelescope , StripLine)	;
-				Calibration_Si_Y_T.resize( NumberOfTelescope , StripLine)	;
-				
-				Calibration_SiLi_E.resize( NumberOfTelescope , StripLine)	;
-				Calibration_CsI_E .resize( NumberOfTelescope , StripLine)	;
+			  std::ostringstream o;
+			
+			  if (!(o << value))
+			    return ""	;
+			    
+			  return o.str();
 			}
 			
-		else
+//	Add Parameter to the CalibrationManger
+void MUST2Array::AddParameterToCalibrationManager()	
+	{
+		CalibrationManager* Cal = CalibrationManager::getInstance();
+		
+		for(int i = 0 ; i < NumberOfTelescope ; i++)
 			{
-				
 			
+				for( int j = 0 ; j < 128 ; j++)
+					{
+						Cal->AddParameter("MUST2", "T"+itoa(i)+"_Si_X"+itoa(j)+"_E","MUST2_T"+itoa(i)+"_Si_X"+itoa(j)+"_E")	;
+						Cal->AddParameter("MUST2", "T"+itoa(i)+"_Si_Y"+itoa(j)+"_E","MUST2_T"+itoa(i)+"_Si_Y"+itoa(j)+"_E")	;
+						Cal->AddParameter("MUST2", "T"+itoa(i)+"_Si_X"+itoa(j)+"_T","MUST2_T"+itoa(i)+"_Si_X"+itoa(j)+"_T")	;
+						Cal->AddParameter("MUST2", "T"+itoa(i)+"_Si_Y"+itoa(j)+"_T","MUST2_T"+itoa(i)+"_Si_Y"+itoa(j)+"_T")	;	
+					}
+		
+				for( int j = 0 ; j < 16 ; j++)
+					{
+						Cal->AddParameter("MUST2", "T"+itoa(i)+"_SiLi"+itoa(j)+"_E","MUST2_T"+itoa(i)+"_SiLi"+itoa(j)+"_E")	;
+						Cal->AddParameter("MUST2", "T"+itoa(i)+"_SiLi"+itoa(j)+"_T","MUST2_T"+itoa(i)+"_SiLi"+itoa(j)+"_T")	;
+					}
+			
+				for( int j = 0 ; j < 16 ; j++)
+					{
+						Cal->AddParameter("MUST2", "T"+itoa(i)+"_CsI"+itoa(j)+"_E","MUST2_T"+itoa(i)+"_CsI"+itoa(j)+"_E")		;
+						Cal->AddParameter("MUST2", "T"+itoa(i)+"_CsI"+itoa(j)+"_T","MUST2_T"+itoa(i)+"_CsI"+itoa(j)+"_T")		;
+					}
 			}
-	}		
 	
+	
+	}
 
 //	Activated associated Branches and link it to the private member DetectorData address
 //	In this method mother Branches (Detector) AND daughter leaf (fDetector_parameter) have to be activated
diff --git a/NPLib/MUST2/Must2Array.h b/NPLib/MUST2/Must2Array.h
index d8babeea6bfb4596faa3f2566ab857ef198bcd26..0d39ba160ef17a32177c2d09fb45fe8706a4982e 100644
--- a/NPLib/MUST2/Must2Array.h
+++ b/NPLib/MUST2/Must2Array.h
@@ -42,9 +42,8 @@ class MUST2Array : public NPA::VDetector
 				void ReadConfiguration(string) 				;
 				
 
-				//	Read stream at CalibFile and pick-up calibration parameter using Token
-				//	If argument is "Simulation" no change calibration is loaded
-				void ReadCalibrationFile(string)	 		;		
+				//	Add Parameter to the CalibrationManger
+				void AddParameterToCalibrationManager()	;		
 					
 				
 				//	Activated associated Branches and link it to the private member DetectorData address
diff --git a/NPLib/VDetector/VDetector.h b/NPLib/VDetector/VDetector.h
index 20fd8d3f933a49aa75ecfd55a9bcb9a25152ca08..d461f8c207b31aee5a69b218f6b99ab956ffb5b3 100644
--- a/NPLib/VDetector/VDetector.h
+++ b/NPLib/VDetector/VDetector.h
@@ -43,7 +43,11 @@ namespace NPA
 
 				//	Read stream at ConfigFile to pick-up parameters of detector (Position,...) using Token
 				virtual void ReadConfiguration(string) 		{}		;
+		
+				//	Add Parameter to the CalibrationManger
+				virtual void AddParameterToCalibrationManager()	{} ;		
 
+				//	XXX To be DUMPED XXX
 				//	Read stream at CalibFile and pick-up calibration parameter using Token
 				//	If argument is "Simulation" no change calibration is loaded
 				virtual void ReadCalibrationFile(string)	{} ;