       @_auxiliaryStore.get ['__last_sync_md5', '__sync_changes'], (item) =>
         @_lastMd5 = item.__last_sync_md5
         @_changes = item['__sync_changes'].concat(@_changes) if item['__sync_changes']?
+        $info 'Initialize store: ', md5: @_lastMd5, changes: @_changes, init: item
         @_unlockMethods()
         @throttled_pull()
         @debounced_push() if @_changes.length > 0

    # else
    # Overwrite local storage and keep changes
    @_getAllData().then (localData) =>
      remoteHashes = (remoteData['__hashes'] or []).join(' ')
      localHashes = (localData['__hashes'] or []).join(' ').substr(0, 2 * 64 + 1)
      if remoteHashes.length is 0 or localHashes.length is 0
        # Remote data are not using the new format. Just update the current local storage
        @_setAllData(remoteData)
      else if (remoteHashes.indexOf(localHashes) >= (@HASHES_CHAIN_MAX_SIZE * 3 / 4) * (64 + 1)) or remoteHashes.indexOf(localHashes) is -1
        @_clearChanges()
        @_setAllData(remoteData)
      else if (localData['__hashes'] or []).join(' ').indexOf((remoteData['__hashes'] or []).join(' ').substr(0, 2 * 64 + 1)) != -1
        # We are up to date do nothing
        @_setAllData(remoteData)
      else
        [nextCommitHash, nextCommitData] = @_computeCommit(localData, @_changes)
        if _(remoteData['__hashes']).contains(nextCommitData)
          # The hash next commit already exists drop the changes
          @_setAllData(remoteData)
          @_clearChanges()
        else
          @_setAllData(remoteData)

  # @return A jQuery promise

    this._raw_set items, _.bind(d.resolve,d)
    d.promise

  _areChangesMeaningful: (data, changes) ->
    if data['__hashes']?.length > 0
      checkData = _.clone(data)
      checkData['__hashes'] = _(checkData['__hashes']).without(checkData['__hashes'][0])
      checkData = _(checkData).omit('__hashes') if checkData['__hashes'].length is 0
      [lastCommitHash, __] = @_computeCommit(checkData, changes)
      return lastCommitHash is data['__hashes'][0]
    no

  # Save lastMd5 in settings
  _setLastMd5: (md5) ->
    @_lastMd5 = md5
