     }
 }
 
-/// Reference the source image reference
-//class ImageSource {
-//    var imageRef: CGImageSource?
-//    init(ref: CGImageSource) {
-//        self.imageRef = ref
-//    }
-//}
-
 // Reference the source image reference
 class ImageSource {
     var imageRef: CGImageSource?

    #endif
}

//extension CGContext {
//    static func createARGBContext(from imageRef: CGImage) -> CGContext? {
//        
//        let w = imageRef.width
//        let h = imageRef.height
//        let bytesPerRow = w * 4
//        let colorSpace = CGColorSpaceCreateDeviceRGB()
//        
//        let data = malloc(bytesPerRow * h)
//        defer {
//            free(data)
//        }
//        
//        let bitmapInfo = imageRef.bitmapInfo.fixed
//        
//        // Create the bitmap context. We want pre-multiplied ARGB, 8-bits
//        // per component. Regardless of what the source image format is
//        // (CMYK, Grayscale, and so on) it will be converted over to the format
//        // specified here.
//        return CGContext(data: data,
//                         width: w,
//                         height: h,
//                         bitsPerComponent: imageRef.bitsPerComponent,
//                         bytesPerRow: bytesPerRow,
//                         space: colorSpace,
//                         bitmapInfo: bitmapInfo.rawValue)
//    }
//}

extension CGContext {
    static func createARGBContext(from imageRef: CGImage) -> CGContext? {
        

    }
}

extension CGBitmapInfo {
    var fixed: CGBitmapInfo {
        var fixed = self
