         // Return deferred processor to run on background queue
         return
             {
-            let result = self.processAndCache(rawResponse, using: stagesAndEntries)
+            let result = Pipeline.processAndCache(rawResponse, using: stagesAndEntries)
 
             debugLog(.pipeline,       ["  └╴Response after pipeline:", result.summary()])
             debugLog(.networkDetails, ["    Details:", result.dump("      ")])

        }

    // Runs on a background queue
    private func cacheLookup(using stagesAndEntries: [StageAndEntry]) -> Entity<Any>?
        {
        for (index, (_, cacheEntry)) in stagesAndEntries.enumerated().reversed()
            {

                {
                debugLog(.cache, ["Cache hit for", cacheEntry])

                let processed = Pipeline.processAndCache(
                    .success(result),
                    using: stagesAndEntries.suffix(from: index + 1))

