 @available(macOS 10.13, iOS 11.0, tvOS 11.0, *)
 extension GPContext {
     
+    private static let clear: CIImage = {
+        if #available(macOS 10.15, iOS 13.0, tvOS 13.0, *) { return CIImage.clear }
+        return CIImage(color: CIColor.clear)
+    }()
+    
     private static let black: CIImage = {
         if #available(macOS 10.15, iOS 13.0, tvOS 13.0, *) { return CIImage.black }
         return CIImage(color: CIColor.black)

    
    private func apply_clip(_ image: CIImage) -> CIImage {
        guard let clip = current_layer.state.clip else { return image }
        return image.applyingFilter("CIBlendWithMask", parameters: [kCIInputBackgroundImageKey: CIImage.empty(), kCIInputMaskImageKey: clip])
    }
    
    private func blend_layer(_ layer: CIImage) {

    
    private var next: GPContext?
    
    public init(width: Int, height: Int) {
        self.width = width
        self.height = height
        self.image = GPContext.clear.cropped(to: CGRect(x: 0, y: 0, width: width, height: height))
    }
}

