 
   onStart: () ->
     unconfirmedTxs = @_findUnconfirmedTransaction()
+    startDate = new Date()
+    $info "Start synchronization", startDate.toString()
     @_performRecovery(unconfirmedTxs).then (transactionsNotFound) =>
       l "Recovery completed"
       @_discardTransactions(transactionsNotFound)

      else
        # Mark failure and save
        savedState['lastSyncStatus'] = 'failure'
        @_saveSynchronizationData(savedState)
        throw er
    .then =>
      savedState['lastSyncStatus'] = 'success'
      savedState['lastSyncTime'] = new Date().getTime()
      @_saveSynchronizationData(savedState)
    .then =>
      unconfirmedTransactions


      block.delete()
    @_saveSynchronizationData(savedState)

  _migrateSavedState: (state = {}) ->
    oldBatchSize = state["batch_size"] or 20
    if (oldBatchSize != @BatchSize)
      idx = 0
      while state["account_#{idx}"]?
        oldBatches = state["account_#{idx}"]["batches"]
        batches = []
        total  = oldBatches.length * oldBatchSize
        state["account_#{idx}"] = batches: batches
        idx += 1
    state["batch_size"] = @BatchSize
    state

  @reset: () ->
    @instance = new @
