         return image
     }
     
-    fileprivate func renderInContext(_ ctx: CGContext!) {
+    private func renderInContext(_ ctx: CGContext!) {
         let layers = prepareLayer()
         
         if fullScreenCapture && dynamicMode == .none {

        layer.contents = nil
    }
    
    fileprivate func linkForDisplay() {
        displayLink?.invalidate()
        displayLink = UIScreen.main.displayLink(withTarget: self, selector: DisplayLinkSelector)
        displayLink?.add(to: RunLoop.main, forMode: RunLoopMode(rawValue: dynamicMode.mode()))
    }
    
    fileprivate func setCaptureImage(_ image: UIImage, radius: CGFloat) {
        let setImage: (() -> Void) = {
            if let blurredImage = image.blurredImage(radius, iterations: self.iterations, ratio: self.blurRatio, blendColor: self.blendColor, blendMode: self.blendMode) {
                DispatchQueue.main.sync {

        })
    }
    
    private func restoreLayer(_ layers: [CALayer]) {
        for layer in layers {
            layer.isHidden = false
        }
    }
    
    private func capturedImage() -> UIImage? {
        let bounds = blurLayer.convert(blurLayer.bounds, to: superview?.layer)
        
        UIGraphicsBeginImageContextWithOptions(bounds.size, true, quality.imageScale)
        guard let context = UIGraphicsGetCurrentContext() else {
            return nil
        }
        context.interpolationQuality = quality.contextInterpolation
        context.translateBy(x: -bounds.origin.x, y: -bounds.origin.y)
        
        if Thread.current.isMainThread {
