         hideLoadingHUD()
         
 
-        
-        
-        // first load the main image synchronously for a quick result
-        // and the load the image again asyncly and abort loading when the user swipes etc.
-        // discardable result
-        _ = self.loadImage(asset: self.getAsset(), isSynchronous: true, resultHandler: { imageData, dataUTI, orientation, infoArray in
+        // only the quick load when no HQ image is available
+        if(isHQImagePrefetched == false){
+            // first load the main image synchronously for a quick result
+            // and the load the image again asyncly and abort loading when the user swipes etc.
+            // discardable result
+            _ = self.loadImage(asset: self.getAsset(), isSynchronous: true, resultHandler: { imageData, dataUTI, orientation, infoArray in
                 // The cell may have been recycled by the time this handler gets called;
                 // set the cell's thumbnail image only if it's still showing the same asset.
                 

    
    func showPrefetchHUD(){
        // display prefetch status, but wait a bit in the background
        UIView.animate(withDuration: 0.5, delay: 1.0, options: .beginFromCurrentState, animations: {
            self.infoLabel!.alpha = 1.0
            self.infoLabel!.text = "☁️ prefetching next image..."
        })
    }
    
    
    func hidePrefetchHUD(){
        // display prefetch status, but wait a bit in the background
        UIView.animate(withDuration: 0.5, delay: 1.7, options: .beginFromCurrentState, animations: {
            self.infoLabel!.alpha = 0.0
        })
    }

                    self.imageView.image = UIImage(named: "taxcloud_hd")
                    return
                }
                
                
                if let image = UIImage(data: imageData!){
                    // hide the preview image before setting the real image...
