diff --git a/Examples/JpsiGamKsKlKK/FitParamIndex.cc b/Examples/JpsiGamKsKlKK/FitParamIndex.cc
new file mode 100644
index 0000000000000000000000000000000000000000..6a555236f9da8ee1e6c4fd5a7e2bc0afcec0b655
--- /dev/null
+++ b/Examples/JpsiGamKsKlKK/FitParamIndex.cc
@@ -0,0 +1,32 @@
+#include "Examples/JpsiGamKsKlKK/FitParamIndex.hh"
+
+
+FitParamIndex::FitParamIndex(fitParams& theParams){
+  
+  int indexCounter=0;
+  
+  //iterate amplitude magnitueds
+  std::map<int, std::map< boost::shared_ptr<const JPCLS>, double, pawian::Collection::SharedPtrLess > >& startMagMap=theParams.Mags;
+  std::map<int, std::map< boost::shared_ptr<const JPCLS>, double, pawian::Collection::SharedPtrLess > >::iterator itMagMap;
+  for (itMagMap=startMagMap.begin(); itMagMap!=startMagMap.end(); ++itMagMap){
+    
+    std::map< boost::shared_ptr<const JPCLS>, double, pawian::Collection::SharedPtrLess >::map jpclsMap = itMagMap->second;
+    std::map< boost::shared_ptr<const JPCLS>, double, pawian::Collection::SharedPtrLess >::iterator jpclsMapIter;
+    for (jpclsMapIter=jpclsMap.begin(); jpclsMapIter!=jpclsMap.end(); ++jpclsMapIter){
+      _Mags[itMagMap->first][jpclsMapIter->first] = indexCounter;
+      indexCounter++;
+    }
+  }
+  
+  //loop again and fill phi index
+  for (itMagMap=startMagMap.begin(); itMagMap!=startMagMap.end(); ++itMagMap){
+    
+    std::map< boost::shared_ptr<const JPCLS>, double, pawian::Collection::SharedPtrLess >::map jpclsMap = itMagMap->second;
+    std::map< boost::shared_ptr<const JPCLS>, double, pawian::Collection::SharedPtrLess >::iterator jpclsMapIter;
+    for (jpclsMapIter=jpclsMap.begin(); jpclsMapIter!=jpclsMap.end(); ++jpclsMapIter){
+      _Phis[itMagMap->first][jpclsMapIter->first] = indexCounter;
+      indexCounter++;
+    }
+  }
+  
+}
diff --git a/Examples/JpsiGamKsKlKK/FitParamIndex.hh b/Examples/JpsiGamKsKlKK/FitParamIndex.hh
new file mode 100644
index 0000000000000000000000000000000000000000..73f34d283a8aad6c3971309208042336d77af1ea
--- /dev/null
+++ b/Examples/JpsiGamKsKlKK/FitParamIndex.hh
@@ -0,0 +1,23 @@
+#ifndef _FitParamIndex_H
+#define _FitParamIndex_H
+
+#include "PwaUtils/FitParamsBase.hh"
+
+class FitParamIndex {
+  
+  public:
+  
+  FitParamIndex( fitParams& theParams  );
+  virtual ~FitParamIndex(){};
+  
+  int Mag(int amp, boost::shared_ptr<const JPCLS> state){ return _Mags[amp][state]; }
+  int Phi(int amp, boost::shared_ptr<const JPCLS> state){ return _Phis[amp][state]; }
+  
+  
+  std::map<int, std::map< boost::shared_ptr<const JPCLS>, int, pawian::Collection::SharedPtrLess > > _Mags;
+  std::map<int, std::map< boost::shared_ptr<const JPCLS>, int, pawian::Collection::SharedPtrLess > > _Phis;
+  
+
+};
+
+#endif