     // MARK: ImageManager: ImageRequestKeyOwner
     
     public func isEqual(lhs: ImageRequestKey, to rhs: ImageRequestKey) -> Bool {
-        return self.loader.isCacheEquivalent(lhs.request, to: rhs.request)
+        return loader.isCacheEquivalent(lhs.request, to: rhs.request)
     }
 }
 

    public var tasks: (executingTasks: Set<ImageTask>, preheatingTasks: Set<ImageTask>) {
        var executingTasks: Set<ImageTask>!
        var preheatingTasks: Set<ImageTask>!
        self.perform {
            executingTasks = self.executingTasks
            preheatingTasks = Set(self.preheatingTasks.values)
        }

    /** Returns response from the memory cache.
    */
    public func responseForRequest(request: ImageRequest) -> ImageCachedResponse? {
        return cache?.responseForKey(ImageRequestKey(request, owner: self))
    }
    
    /** Stores response into the memory cache.
     */
    public func setResponse(response: ImageCachedResponse, forRequest request: ImageRequest) {
        cache?.setResponse(response, forKey: ImageRequestKey(request, owner: self))
    }
    
    /** Stores response from the memory cache.
     */
    public func removeResponseForRequest(request: ImageRequest) {
        cache?.removeResponseForKey(ImageRequestKey(request, owner: self))
    }
    
    // MARK: Managing the Manager
