     cout << "Images to be processed: " << argsStruc.MAX_CNT << endl;
     cout << "Each image moves: " << SEQ_LENGTH << " times." << endl;
 
-	RunningInfo run_info;
     double procces = 0.1;
     for(int i=0;i< argsStruc.MAX_CNT;i++)
     {

			
            DataSourceForTraining.SetShiftedDeviceImage(indexOfExample, SEQ[seq][0], SEQ[seq][1], ImageInput[0], ImageInput[1]);
            DKernel[0].DoDestin(DataSourceForTraining.GetPointerDeviceImage(),&xmlLayer);
			run_info.layer = 0;
            //TODO: is the order of layer evaluation going in the right order?
            for(int l=1;l<NumberOfLayers;l++)
            {
				run_info.layer = l;
                DKernel[l].DoDestin(DKernel[l-1].GetDevicePointerBeliefs(),&xmlLayer);
            }
            time_t lStop = time(NULL);

        pair<int,int> element = vIndicesAndGTLabelToUse[i];
        int indexOfExample = element.first;
        int label = element.second;
		
        time_t iStart = time(NULL);
		
        for(int seq=0;seq<SEQ_LENGTH;seq++)
        {
            stringstream xmlLayer;
            // Run lowest layer (Kernel)

