diff --git a/Demo.cpp b/Demo.cpp
index cc605d32b5fe76d7d8bead78ad6ef732c081fedc..e75a74ce75b4e3119ba926cdc05dcdfbef0bed65 100644
--- a/Demo.cpp
+++ b/Demo.cpp
@@ -15,7 +15,7 @@ based  on original demo.cpp
 
 #define PROCESS_CENTER_VERSION_MAJOR 0
 #define PROCESS_CENTER_VERSION_MINOR 9
-#define PROCESS_CENTER_VERSION_MINOR_FIXES 7
+#define PROCESS_CENTER_VERSION_MINOR_FIXES 8
 
 //opencv
 #include <opencv2/opencv.hpp>
@@ -47,8 +47,8 @@ bool cmdOptionExists(char** begin, char** end, const std::string& option)
 int main(int argc, char * argv[])
 {
 
-    std::cout << "using processcenter  " <<PROCESS_CENTER_VERSION_MAJOR <<"."<< PROCESS_CENTER_VERSION_MINOR << endl;
-    std::cout << "Using OpenCV " << CV_MAJOR_VERSION << "." << CV_MINOR_VERSION << "." << CV_SUBMINOR_VERSION <<"."<<PROCESS_CENTER_VERSION_MINOR_FIXES<< std::endl;
+    std::cout << "using processcenter  " <<PROCESS_CENTER_VERSION_MAJOR <<"."<< PROCESS_CENTER_VERSION_MINOR<<"."<<PROCESS_CENTER_VERSION_MINOR_FIXES<< endl;
+    std::cout << "Using OpenCV " << CV_MAJOR_VERSION << "." << CV_MINOR_VERSION << "." << CV_SUBMINOR_VERSION << std::endl;
     //!** parse programm input****************/
     if(cmdOptionExists(argv, argv+argc, "-h"))
     {
@@ -175,12 +175,6 @@ int main(int argc, char * argv[])
 
     Tapter *bgs = new Tapter;
 
-    //    bgs->setPathOut(outputDir);
-    //    bgs->setInitialFrameCounter(0);
-    //    bgs->setFlagWrite(0);
-    //    bgs->setFlagWriteDBGpic(0);
-
-
     //see paper https://dl.acm.org/citation.cfm?id=2321600
     //https://ieeexplore.ieee.org/document/4527178/
     //was in benchmark on top https://www.researchgate.net/publication/259340906_A_comprehensive_review_of_background_subtraction_algorithms_evaluated_with_synthetic_and_real_videos
@@ -291,28 +285,16 @@ int main(int argc, char * argv[])
         cout <<"\t"<<i <<"\t of \t"<<amountTrainingSteps<<" rnd file :"<< fileName<<endl;
         img_input = imread(fileName.c_str(), CV_LOAD_IMAGE_COLOR);
 
-        cout << " a "<<endl;
-
         if(img_input.data )
         {
             //we cut out a smaller ROI
             img_input = TToolBox::cropImageCircle(img_input,circleCenterX,circleCenterY,circleRadius);
 
-            //cv::imshow("input", img_input);
             cv::Mat img_mask;
             cv::Mat img_bkgmodel;
 
-            //            //adapter learning rate
-            //            if(j>62)
-            //                bgs->setLearningRate(j);
-
             bgs->process(img_input, img_mask, img_bkgmodel); // by default, it shows automatically the foreground mask image
 
-            cout << " b "<<endl;
-
-            //            //we save the bk gmodel
-            //            std::string bkTestFileName = inputDir + "bk_"+TToolBox::mNzero(i)+".jpg";
-            //            imwrite(bkTestFileName.c_str(),img_bkgmodel);
         }
         else
         {
@@ -322,9 +304,6 @@ int main(int argc, char * argv[])
         }
     }
 
-    cout << " c "<<endl;
-
-
     cout <<"c) we produce train the background with random choosen files"<< fileName<<endl;
 
     int everyPic=60*5;
@@ -337,27 +316,15 @@ int main(int argc, char * argv[])
 
     for(frameCounter=0;frameCounter<amountFiles;frameCounter++)
     {
-
-        cout << " d "<<endl;
-
         //measure time consumption
         clock_t begin = clock();
 
         //we define the type better to prevent error
         fileName = std::string(inputDir + TToolBox::getFileName(frameCounter));
-
-        //        //check the string
-        //        cout <<"open fileName: "<< fileName<<endl;
-        //        if(fileName.empty())
-        //            cerr <<"error: empty string fileName"<<endl;
-
+        cv::String fileNameCV(fileName);
 
         cout <<"\t"<<frameCounter<<"\tof \t"<<amountFiles<<"  load file :"<< fileName<<endl;
-        //cv::imwrite(convert.str().c_str(), img_output);
-        //we open the file
-        cv::String fileNameCV(fileName);
-        cout << " d 3: "<< fileName.size()<< " size: "<< fileName<<endl;
-        cout << " d 3: "<< fileNameCV.size()<< " size:"<< fileNameCV.c_str();
+
 
         //we check if the image in NOT corrupted
         if(!TToolBox::checkFileCorrupted(fileName))
@@ -365,8 +332,6 @@ int main(int argc, char * argv[])
             //we load the file
             img_input = imread(fileNameCV, CV_LOAD_IMAGE_COLOR);
 
-            cout << " e "<<endl;
-
             if(img_input.data )
             {
                 //! we cut out a smaller ROI,
@@ -380,8 +345,6 @@ int main(int argc, char * argv[])
 
                 bgs->process(img_input, img_mask, img_bkgmodel); // by default, it shows automatically the foreground mask image
 
-                cout << " f "<<endl;
-
                 //! step 3) we make  we apply a edge detection
                 //TODO make this in a function, how many times is this listed ??
                 //TODO read from tapter config
@@ -450,9 +413,6 @@ int main(int argc, char * argv[])
                     float areaMinThreshold = 150;
                     float areaMaxThreshold = 300000; //old max threshold was to small //TODO apply moving filter ??, an more adaptive approach
 
-                    cout << " g "<<endl;
-
-
                     //iterate all rectangles
                     for( size_t i = 0; i< minRect.size(); i++ )
                     {
@@ -535,9 +495,6 @@ int main(int argc, char * argv[])
                             muConvexHullMassCenter= Point2f( muConvexHull.m10/muConvexHull.m00 , muConvexHull.m01/muConvexHull.m00 );
                         }
 
-                        cout << " h "<<endl;
-
-
                     }//end after selection is empty
                     {
                         cerr<<"error, no contour found after selection in file: "<< fileName<<endl;
@@ -574,20 +531,9 @@ int main(int argc, char * argv[])
 
 #endif
 
-                cout << " i "<<endl;
-                //cout<<"we try to write file: "<< i <<endl;
                 //! step 8: we write down all our results in yml file
                 std::string nameOutPutFileData =  outputDir + TToolBox::mNzero(frameCounter) + ".yml";
 
-                cout << " j "<<endl;
-
-
-                //           //check the string
-                //            cout <<"write output nameOutPutFileData: "<< nameOutPutFileData<<endl;
-                //            if(nameOutPutFileData.empty())
-                //                cerr <<"error: empty string nameOutPutFileData"<<endl;
-
-
                 FileStorage fs(nameOutPutFileData.c_str(), FileStorage::WRITE);
                 fs << "masscenters" <<  massCenters;
                 fs << "polygonselection"<< contourSelection;
@@ -595,8 +541,6 @@ int main(int argc, char * argv[])
                 fs << "masscenterconvexhull"<<muConvexHullMassCenter;
                 fs.release();
 
-                cout << " k "<<endl;
-
                 //! we write from time to time a dbg picture
                 if(frameCounter%everyPic==0)
                 {
@@ -632,14 +576,8 @@ int main(int argc, char * argv[])
                     //we write the file down
                     std::string nameOutPutFileDBGpic =  outputDir + TToolBox::mNzero(frameCounter) + std::string(".jpg");
 
-                    //                //check the string
-                    //                cout <<"write dbg file: "<< nameOutPutFileDBGpic<<endl;
-                    //                if(nameOutPutFileDBGpic.empty())
-                    //                    cerr <<"error: empty string nameOutPutFileDBGpic"<<endl;
-
                     imwrite(nameOutPutFileDBGpic.c_str(),imgOverlay2);
 
-                    cout << " l "<<endl;
                 }//end if we write a dbg picture
 
 
@@ -653,7 +591,7 @@ int main(int argc, char * argv[])
         }//end if not corrupted picture
         else
         {
-            cout<<"error file: "<< fileName<<" is corrupted, will ignore it"<<endl;
+            cerr<<"error file: "<< fileName<<" is corrupted, will ignore it"<<endl;
             myFileListCorrupted.push_back(fileName);
 
         }
@@ -669,9 +607,7 @@ int main(int argc, char * argv[])
         double elapsedSecTotal = double(endAll - beginAll) / CLOCKS_PER_SEC;
         cout <<"process single pic:\t"<<elapsedSecs<<" s  - \t\t"<<(int)(elapsedSecTotal/60)<<" min -\t"<<(int)(elapsedSecTotal/60/60)<<" h"<<endl;
 
-        cout << " --- "<<endl;
     }
-    cout << " X "<<endl;
 
     //finishing time
     clock_t endAll = clock();