Bool_t KVSimReader_MMM_asym::ReadEvent(){

	evt->Clear();
	Int_t mult=0,natt=0;
	
	ReadLine(" ");
	
	Int_t res = GetNparRead();
	switch (res){
	case 0:
		return kFALSE; 
	default:
		//nlus = toks->GetEntries();
		idx = 0;
		mult = GetIntReadPar(idx++);
		natt = 5*mult+1;
		if (natt!=res){
			Info("ReadEvent","Nombre de parametres (%d) different de celui attendu (%d)",res,natt);
			return kFALSE;
		}
		for (Int_t mm=0; mm<mult; mm+=1){
			nuc = (KVSimNucleus* )evt->AddParticle();
			ReadNucleus();
		}
		
		evt->SetNumber(nevt);
		nevt+=1;
		return kTRUE;
	}
	
}
Bool_t KVSimReader_MMM::ReadEvent()
{

   evt->Clear();
   Int_t mult = 0, natt = 0;

   ReadLine(" ");

   Int_t res = GetNparRead();
   switch (res) {
      case 0:
         Info("ReadEvent", "case 0 line est vide");
         return kFALSE;
      default:
         idx = 0;
         mult = GetIntReadPar(idx++);
         natt = 6 * mult + 4 + 1;
         if (natt != res) {
            Info("ReadEvent", "Nombre de parametres (%d) different de celui attendu (%d)", res, natt);
            return kFALSE;
         }
         evt->GetParameters()->SetValue("Eth", GetDoubleReadPar(idx++));
         evt->GetParameters()->SetValue("Eclb", GetDoubleReadPar(idx++));
         evt->GetParameters()->SetValue("Eexci", GetDoubleReadPar(idx++));
         evt->GetParameters()->SetValue("Ebind", GetDoubleReadPar(idx++));

         for (Int_t mm = 0; mm < mult; mm += 1) {
            nuc = (KVSimNucleus*)evt->AddParticle();
            ReadNucleus();
         }

         evt->SetNumber(nevt);
         nevt += 1;
         return kTRUE;
   }

}