Checkpoint
diff --git a/model/sync-logic.cc b/model/sync-logic.cc
index bd4456f..0e8d0b7 100644
--- a/model/sync-logic.cc
+++ b/model/sync-logic.cc
@@ -20,6 +20,9 @@
  *	   Alexander Afanasyev <alexander.afanasyev@ucla.edu>
  */
 
+#include <ns3/ccnx-pit.h>
+#include <ns3/ccnx.h>
+
 #include "sync-logic.h"
 #include "sync-diff-leaf.h"
 #include "sync-full-leaf.h"
@@ -64,11 +67,11 @@
   , m_ccnxHandle(new CcnxWrapper())
 #ifndef NS3_MODULE
   , m_randomGenerator (static_cast<unsigned int> (std::time (0)))
-  , m_rangeUniformRandom (m_randomGenerator, uniform_int<> (200,300))
+  , m_rangeUniformRandom (m_randomGenerator, uniform_int<> (500,1000))
   , m_reexpressionJitter (m_randomGenerator, uniform_int<> (0,100))
 #else
   , m_rangeUniformRandom (200,300)
-  , m_reexpressionJitter (0, 100)
+  , m_reexpressionJitter (0,200)
 #endif
 {
 #ifdef _STANDALONE
@@ -81,8 +84,6 @@
 #endif
 #endif
 #endif
-
-  _LOG_DEBUG ("syncPrefix");
   
 #ifndef NS3_MODULE
   // In NS3 module these functions are moved to StartApplication method
@@ -177,18 +178,24 @@
         {
           _LOG_TRACE ("processSyncInterest (): Digest is zero, adding /state to PIT");
           m_syncInterestTable.insert (interestName + "/state");
+          // _LOG_TRACE (*GetNode ()->GetObject<ns3::Ccnx> ()->GetPit ());
         }
       else
         {
           _LOG_TRACE ("processSyncInterest (): Same state. Adding to PIT");
           m_syncInterestTable.insert (interestName);
+          // _LOG_TRACE (*GetNode ()->GetObject<ns3::Ccnx> ()->GetPit ());
         }
-      
-      // !!! important change !!!
-      m_scheduler.cancel (REEXPRESSING_INTEREST);
-      m_scheduler.schedule (TIME_SECONDS_WITH_JITTER (m_syncInterestReexpress),
-                            bind (&SyncLogic::sendSyncInterest, this),
-                            REEXPRESSING_INTEREST);
+
+      if (m_outstandingInterest == interestName)
+        {
+          _LOG_DEBUG ("Cancelling interest reexpressing 1");
+          // !!! important change !!!
+          m_scheduler.cancel (REEXPRESSING_INTEREST);
+          m_scheduler.schedule (TIME_SECONDS_WITH_JITTER (m_syncInterestReexpress),
+                                bind (&SyncLogic::sendSyncInterest, this),
+                                REEXPRESSING_INTEREST);
+        }
       return;
     }
   
@@ -233,7 +240,7 @@
         }
       else
         {
-          m_recentUnknownDigests.insert (DigestTime (digest, TIME_NOW + TIME_SECONDS (m_unknownDigestStoreTime)));
+          // m_recentUnknownDigests.insert (DigestTime (digest, TIME_NOW + TIME_SECONDS (m_unknownDigestStoreTime)));
           
           uint32_t waitDelay = GET_RANDOM (m_rangeUniformRandom);      
           _LOG_DEBUG ("Digest is not in the log. Schedule processing after small delay: " << waitDelay << "ms");
@@ -244,22 +251,24 @@
 
           // just in case, re-express our interest (e.g., probably something bad happened)
           
-          m_scheduler.cancel (REEXPRESSING_INTEREST);
-          m_scheduler.schedule (TIME_SECONDS_WITH_JITTER (0),
-                                bind (&SyncLogic::sendSyncInterest, this),
-                                REEXPRESSING_INTEREST);
+          // m_scheduler.cancel (REEXPRESSING_INTEREST);
+          // m_scheduler.schedule (TIME_SECONDS_WITH_JITTER (0),
+          //                       bind (&SyncLogic::sendSyncInterest, this),
+          //                       REEXPRESSING_INTEREST);
         }
     }
   else
     {
-      _LOG_TRACE (">> D " << interestName << "/state" << " (timed processing)");
+      _LOG_TRACE ("                                                                   (timed processing)");
+      // _LOG_TRACE (">> D " << interestName << "/state" << " (timed processing)");
 
-      m_syncInterestTable.remove (interestName + "/state");
-      m_ccnxHandle->publishData (interestName + "/state",
-                                 lexical_cast<string> (m_state),
-                                 m_syncResponseFreshness);
+      // m_syncInterestTable.remove (interestName + "/state");
+      // m_ccnxHandle->publishData (interestName + "/state",
+      //                            lexical_cast<string> (m_state),
+      //                            m_syncResponseFreshness);
 
-      if (m_outstandingInterest == interestName)
+      // exit (1);
+      // if (m_outstandingInterest == interestName)
         {
           m_scheduler.cancel (REEXPRESSING_INTEREST);
           m_scheduler.schedule (TIME_SECONDS_WITH_JITTER (0),