     {
         cancelImageRequest()
         
-        if let image = UIImageView.sharedImageCache().cachedImageForRequest(URLRequest) {
+        if let image = UIImageView.sharedImageCache.cachedImageForRequest(URLRequest) {
             if let success = success {
                 success(URLRequest, nil, image)
             } else {

                self.image = placeholderImage
            }
            
            let request = UIImageView.sharedImageDownloader().downloadImage(
                URLRequest: URLRequest,
                success: { [weak self] request, response, image in
                    if let strongSelf = self {

        }
    }
    
    // MARK: Shared Class Properties
    
    public class var sharedImageCache: ImageCache {
        get {
            if let cache = objc_getAssociatedObject(self, &sharedImageCacheKey) as? ImageCache {
                return cache
            } else {
                struct Static { static let imageCache = ImageViewCache() }
                return Static.imageCache
            }
        }
        set(cache) {
            objc_setAssociatedObject(self, &sharedImageCacheKey, cache, UInt(OBJC_ASSOCIATION_RETAIN_NONATOMIC))
        }
    }
    
    public class var sharedImageDownloader: ImageDownloader {
        get {
            if let downloader = objc_getAssociatedObject(self, &sharedImageDownloaderKey) as? ImageDownloader {
                return downloader
            } else {
                return ImageDownloader.defaultInstance
            }
        }
        set(downloader) {
            objc_setAssociatedObject(self, &sharedImageDownloaderKey, downloader, UInt(OBJC_ASSOCIATION_RETAIN_NONATOMIC))
        }
    }
    
    // MARK: Private - Properties
    
    private var activeRequest: Request? {
        get {
            return objc_getAssociatedObject(self, &activeRequestKey) as? Request
        }
        set(request) {
            objc_setAssociatedObject(self, &activeRequestKey, request, UInt(OBJC_ASSOCIATION_RETAIN_NONATOMIC))
        }
    }
    
    // MARK: Remote Image Methods
