     //  MARK: - Private
     
     private func merged(_ newSyncResponse: MXSyncResponse, onto oldSyncResponse: MXSyncResponse) -> MXSyncResponse {
+        let stopwatch = MXStopwatch()
+        
         //  handle new limited timelines
         newSyncResponse.rooms?.joinedOrLeftRoomSyncs?.filter({ $1.timeline.limited == true }).forEach { (roomId, _) in
             if let joinedRoomSync = oldSyncResponse.rooms?.join?[roomId] {

            return
        }
        
        mergeQueue.async {
            var result: MXSyncResponse?
            var syncToken: String?

                }
            }
            
            MXLog.debug("[MXSyncResponseStoreManager] mergedSyncResponse: merging \(responseIds.count) sync responses lasted \(stopwatch.readable())")
            
            if let result = result {
                DispatchQueue.main.async {
                    completion(MXCachedSyncResponse(syncToken: syncToken,
