     }
     
     private var needsRecordingSelectedRegion: Bool {
-        observedRegion == nil || lock.synchronized { !reducer._isSelectedRegionDeterministic }
+        observedRegion == nil || synchronized { !reducer._isSelectedRegionDeterministic }
     }
     
     private func recordingSelectedRegionIfNeeded<T>(

            // Synchronously
            fetchedFuture = DatabaseFuture(Result {
                try recordingSelectedRegionIfNeeded(db) {
                    try lock.synchronized {
                        try reducer.fetch(db, requiringWriteAccess: requiresWriteAccess)
                    }
                }

        } else {
            // Concurrently
            guard let writer = writer else { return }
            fetchedFuture = writer.concurrentRead { db in try self.synchronized { try self.reducer._fetch(db) } }
        }
        
        // 2. Reduce
