[
  {
    "path": ".gitignore",
    "content": "## Build generated\nbuild/\nDerivedData/\n\n## Various settings\n*.pbxuser\n!default.pbxuser\n*.mode1v3\n!default.mode1v3\n*.mode2v3\n!default.mode2v3\n*.perspectivev3\n!default.perspectivev3\nxcuserdata/\n\n## Other\n*.moved-aside\n*.xcuserstate\n\n## Obj-C/Swift specific\n*.hmap\n*.ipa\n*.dSYM.zip\n*.dSYM\n"
  },
  {
    "path": "Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>FMWK</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>$(CURRENT_PROJECT_VERSION)</string>\n\t<key>NSPrincipalClass</key>\n\t<string></string>\n</dict>\n</plist>\n"
  },
  {
    "path": "LICENSE",
    "content": "Copyright (c) 2013 Marc Charbonneau\n\nPermission is hereby granted, free of charge, to any person obtaining\na copy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to\npermit persons to whom the Software is furnished to do so, subject to\nthe following conditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\nOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\nWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "README.md",
    "content": "# UIImage Categories\n## About\nUIImage Categories is a fork of Trevor Harmon's category methods for cropping and resizing UIImage objects in iOS. Read more on [his 2009 blog post on the subject](http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/):\n\n>Despite its ease of use, or perhaps because of it, UIImage suffers from some serious limitations. Key among these is its lack of support for resizing the image, a feature that is normally handled dynamically by its companion, the UIImageView component. However, should an iPhone application need to reduce the size of an image for storage or for exchange with an external entity (such as a web server), the UIImage class is insufficient.\n\nThis fork includes several fixes for compiler warnings and drawing bugs which have surfaced in newer versions of the iOS SDK.\n\n## Contributing\nPRs are welcome, but please include some test images to demonstrate what's being fixed. That way I can test against  regressions when merging future changes!\n"
  },
  {
    "path": "UIImage+Alpha.h",
    "content": "// UIImage+Alpha.h\n// Created by Trevor Harmon on 9/20/09.\n// Free for personal or commercial use, with or without modification.\n// No warranty is expressed or implied.\n\n#import <UIKit/UIKit.h>\n\n// Helper methods for adding an alpha layer to an image\n@interface UIImage (Alpha)\n- (BOOL)hasAlpha;\n- (UIImage *)imageWithAlpha;\n- (UIImage *)transparentBorderImage:(NSUInteger)borderSize;\n- (CGImageRef)newBorderMask:(NSUInteger)borderSize size:(CGSize)size;\n@end\n"
  },
  {
    "path": "UIImage+Alpha.m",
    "content": "// UIImage+Alpha.m\n// Created by Trevor Harmon on 9/20/09.\n// Free for personal or commercial use, with or without modification.\n// No warranty is expressed or implied.\n\n#import \"UIImage+Alpha.h\"\n\n@implementation UIImage (Alpha)\n\n// Returns true if the image has an alpha layer\n- (BOOL)hasAlpha {\n    CGImageAlphaInfo alpha = CGImageGetAlphaInfo(self.CGImage);\n    return (alpha == kCGImageAlphaFirst ||\n            alpha == kCGImageAlphaLast ||\n            alpha == kCGImageAlphaPremultipliedFirst ||\n            alpha == kCGImageAlphaPremultipliedLast);\n}\n\n// Returns a copy of the given image, adding an alpha channel if it doesn't already have one\n- (UIImage *)imageWithAlpha {\n    if ([self hasAlpha]) {\n        return self;\n    }\n    \n    CGFloat scale = MAX(self.scale, 1.0f);\n    CGImageRef imageRef = self.CGImage;\n    size_t width = CGImageGetWidth(imageRef)*scale;\n    size_t height = CGImageGetHeight(imageRef)*scale;\n    \n    // The bitsPerComponent and bitmapInfo values are hard-coded to prevent an \"unsupported parameter combination\" error\n    CGContextRef offscreenContext = CGBitmapContextCreate(NULL,\n                                                          width,\n                                                          height,\n                                                          8,\n                                                          0,\n                                                          CGImageGetColorSpace(imageRef),\n                                                          kCGBitmapByteOrderDefault | kCGImageAlphaPremultipliedFirst);\n    \n    // Draw the image into the context and retrieve the new image, which will now have an alpha layer\n    CGContextDrawImage(offscreenContext, CGRectMake(0, 0, width, height), imageRef);\n    CGImageRef imageRefWithAlpha = CGBitmapContextCreateImage(offscreenContext);\n    UIImage *imageWithAlpha = [UIImage imageWithCGImage:imageRefWithAlpha scale:self.scale orientation:UIImageOrientationUp];\n    \n    // Clean up\n    CGContextRelease(offscreenContext);\n    CGImageRelease(imageRefWithAlpha);\n    \n    return imageWithAlpha;\n}\n\n// Returns a copy of the image with a transparent border of the given size added around its edges.\n// If the image has no alpha layer, one will be added to it.\n- (UIImage *)transparentBorderImage:(NSUInteger)borderSize {\n    // If the image does not have an alpha layer, add one\n    UIImage *image = [self imageWithAlpha];\n    CGFloat scale = MAX(self.scale, 1.0f);\n    NSUInteger scaledBorderSize = borderSize * scale;\n    CGRect newRect = CGRectMake(0, 0, image.size.width * scale + scaledBorderSize * 2, image.size.height * scale + scaledBorderSize * 2);\n    \n    // Build a context that's the same dimensions as the new size\n    CGContextRef bitmap = CGBitmapContextCreate(NULL,\n                                                newRect.size.width,\n                                                newRect.size.height,\n                                                CGImageGetBitsPerComponent(self.CGImage),\n                                                0,\n                                                CGImageGetColorSpace(self.CGImage),\n                                                CGImageGetBitmapInfo(self.CGImage));\n    \n    // Draw the image in the center of the context, leaving a gap around the edges\n    CGRect imageLocation = CGRectMake(scaledBorderSize, scaledBorderSize, image.size.width*scale, image.size.height*scale);\n    CGContextDrawImage(bitmap, imageLocation, self.CGImage);\n    CGImageRef borderImageRef = CGBitmapContextCreateImage(bitmap);\n    \n    // Create a mask to make the border transparent, and combine it with the image\n    CGImageRef maskImageRef = [self newBorderMask:scaledBorderSize size:newRect.size];\n    CGImageRef transparentBorderImageRef = CGImageCreateWithMask(borderImageRef, maskImageRef);\n    UIImage *transparentBorderImage = [UIImage imageWithCGImage:transparentBorderImageRef scale:self.scale orientation:UIImageOrientationUp];\n    \n    // Clean up\n    CGContextRelease(bitmap);\n    CGImageRelease(borderImageRef);\n    CGImageRelease(maskImageRef);\n    CGImageRelease(transparentBorderImageRef);\n    \n    return transparentBorderImage;\n}\n\n#pragma mark -\n#pragma mark Private helper methods\n\n// Creates a mask that makes the outer edges transparent and everything else opaque\n// The size must include the entire mask (opaque part + transparent border)\n// The caller is responsible for releasing the returned reference by calling CGImageRelease\n- (CGImageRef)newBorderMask:(NSUInteger)borderSize size:(CGSize)size {\n    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceGray();\n    \n    // Build a context that's the same dimensions as the new size\n    CGContextRef maskContext = CGBitmapContextCreate(NULL,\n                                                     size.width,\n                                                     size.height,\n                                                     8, // 8-bit grayscale\n                                                     0,\n                                                     colorSpace,\n                                                     kCGBitmapByteOrderDefault | kCGImageAlphaNone);\n    \n    // Start with a mask that's entirely transparent\n    CGContextSetFillColorWithColor(maskContext, [UIColor blackColor].CGColor);\n    CGContextFillRect(maskContext, CGRectMake(0, 0, size.width, size.height));\n    \n    // Make the inner part (within the border) opaque\n    CGContextSetFillColorWithColor(maskContext, [UIColor whiteColor].CGColor);\n    CGContextFillRect(maskContext, CGRectMake(borderSize, borderSize, size.width - borderSize * 2, size.height - borderSize * 2));\n    \n    // Get an image of the context\n    CGImageRef maskImageRef = CGBitmapContextCreateImage(maskContext);\n    \n    // Clean up\n    CGContextRelease(maskContext);\n    CGColorSpaceRelease(colorSpace);\n    \n    return maskImageRef;\n}\n\n@end\n"
  },
  {
    "path": "UIImage+Resize.h",
    "content": "// UIImage+Resize.h\n// Created by Trevor Harmon on 8/5/09.\n// Free for personal or commercial use, with or without modification.\n// No warranty is expressed or implied.\n\n#import <UIKit/UIKit.h>\n\n// Extends the UIImage class to support resizing/cropping\n@interface UIImage (Resize)\n- (UIImage *)croppedImage:(CGRect)bounds;\n- (UIImage *)thumbnailImage:(NSInteger)thumbnailSize\n          transparentBorder:(NSUInteger)borderSize\n               cornerRadius:(NSUInteger)cornerRadius\n       interpolationQuality:(CGInterpolationQuality)quality;\n- (UIImage *)resizedImage:(CGSize)newSize\n     interpolationQuality:(CGInterpolationQuality)quality;\n- (UIImage *)resizedImageWithContentMode:(UIViewContentMode)contentMode\n                                  bounds:(CGSize)bounds\n                    interpolationQuality:(CGInterpolationQuality)quality;\n- (UIImage *)resizedImage:(CGSize)newSize\n                transform:(CGAffineTransform)transform\n           drawTransposed:(BOOL)transpose\n     interpolationQuality:(CGInterpolationQuality)quality;\n- (CGAffineTransform)transformForOrientation:(CGSize)newSize;\n@end\n"
  },
  {
    "path": "UIImage+Resize.m",
    "content": "// UIImage+Resize.m\n// Created by Trevor Harmon on 8/5/09.\n// Free for personal or commercial use, with or without modification.\n// No warranty is expressed or implied.\n\n#import \"UIImage+Resize.h\"\n#import \"UIImage+RoundedCorner.h\"\n#import \"UIImage+Alpha.h\"\n\n@implementation UIImage (Resize)\n\n// Returns a copy of this image that is cropped to the given bounds.\n// The bounds will be adjusted using CGRectIntegral.\n// This method ignores the image's imageOrientation setting.\n- (UIImage *)croppedImage:(CGRect)bounds {\n    CGFloat scale = MAX(self.scale, 1.0f);\n    CGRect scaledBounds = CGRectMake(bounds.origin.x * scale, bounds.origin.y * scale, bounds.size.width * scale, bounds.size.height * scale);\n    CGImageRef imageRef = CGImageCreateWithImageInRect([self CGImage], scaledBounds);\n    UIImage *croppedImage = [UIImage imageWithCGImage:imageRef scale:self.scale orientation:UIImageOrientationUp];\n    CGImageRelease(imageRef);\n    return croppedImage;\n}\n\n// Returns a copy of this image that is squared to the thumbnail size.\n// If transparentBorder is non-zero, a transparent border of the given size will be added around the edges of the thumbnail. (Adding a transparent border of at least one pixel in size has the side-effect of antialiasing the edges of the image when rotating it using Core Animation.)\n- (UIImage *)thumbnailImage:(NSInteger)thumbnailSize\n          transparentBorder:(NSUInteger)borderSize\n               cornerRadius:(NSUInteger)cornerRadius\n       interpolationQuality:(CGInterpolationQuality)quality {\n\n    UIImage *resizedImage = [self resizedImageWithContentMode:UIViewContentModeScaleAspectFill\n                                                       bounds:CGSizeMake(thumbnailSize, thumbnailSize)\n                                         interpolationQuality:quality];\n    \n\n    // Crop out any part of the image that's larger than the thumbnail size\n    // The cropped rect must be centered on the resized image\n    // Round the origin points so that the size isn't altered when CGRectIntegral is later invoked\n    CGRect cropRect = CGRectMake(round((resizedImage.size.width - thumbnailSize) / 2),\n                                 round((resizedImage.size.height - thumbnailSize) / 2),\n                                 thumbnailSize,\n                                 thumbnailSize);\n    UIImage *croppedImage = [resizedImage croppedImage:cropRect];\n    \n    UIImage *transparentBorderImage = borderSize ? [croppedImage transparentBorderImage:borderSize] : croppedImage;\n    \n    return [transparentBorderImage roundedCornerImage:cornerRadius borderSize:borderSize];\n}\n\n// Returns a rescaled copy of the image, taking into account its orientation\n// The image will be scaled disproportionately if necessary to fit the bounds specified by the parameter\n- (UIImage *)resizedImage:(CGSize)newSize interpolationQuality:(CGInterpolationQuality)quality {\n    BOOL drawTransposed;\n    switch ( self.imageOrientation )\n    {\n        case UIImageOrientationLeft:\n        case UIImageOrientationLeftMirrored:\n        case UIImageOrientationRight:\n        case UIImageOrientationRightMirrored:\n\t    drawTransposed = YES;\n\t    break;\n        default:\n\t    drawTransposed = NO;\n    }\n        \n    CGAffineTransform transform = [self transformForOrientation:newSize];\n    \n    return [self resizedImage:newSize transform:transform drawTransposed:drawTransposed interpolationQuality:quality];\n}\n\n// Resizes the image according to the given content mode, taking into account the image's orientation\n- (UIImage *)resizedImageWithContentMode:(UIViewContentMode)contentMode\n                                  bounds:(CGSize)bounds\n                    interpolationQuality:(CGInterpolationQuality)quality {\n    CGFloat horizontalRatio = bounds.width / self.size.width;\n    CGFloat verticalRatio = bounds.height / self.size.height;\n    CGFloat ratio;\n    \n    switch (contentMode) {\n        case UIViewContentModeScaleAspectFill:\n            ratio = MAX(horizontalRatio, verticalRatio);\n            break;\n            \n        case UIViewContentModeScaleAspectFit:\n            ratio = MIN(horizontalRatio, verticalRatio);\n            break;\n            \n        default:\n            [NSException raise:NSInvalidArgumentException format:@\"Unsupported content mode: %ld\", (long)contentMode];\n    }\n    \n    CGSize newSize = CGSizeMake(self.size.width * ratio, self.size.height * ratio);\n    \n    return [self resizedImage:newSize interpolationQuality:quality];\n}\n\n#pragma mark -\n#pragma mark Private helper methods\n\n// Returns a copy of the image that has been transformed using the given affine transform and scaled to the new size\n// The new image's orientation will be UIImageOrientationUp, regardless of the current image's orientation\n// If the new size is not integral, it will be rounded up\n- (UIImage *)resizedImage:(CGSize)newSize\n                transform:(CGAffineTransform)transform\n           drawTransposed:(BOOL)transpose\n     interpolationQuality:(CGInterpolationQuality)quality {\n    CGFloat scale = MAX(1.0f, self.scale);\n    CGRect newRect = CGRectIntegral(CGRectMake(0, 0, newSize.width*scale, newSize.height*scale));\n    CGRect transposedRect = CGRectMake(0, 0, newRect.size.height, newRect.size.width);\n    CGImageRef imageRef = self.CGImage;\n    \n    // Fix for a colorspace / transparency issue that affects some types of \n    // images. See here: http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/comment-page-2/#comment-39951\n        \n\tCGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();\n    CGContextRef bitmap = CGBitmapContextCreate(\n                                                NULL,\n                                                newRect.size.width,\n                                                newRect.size.height,\n                                                8, /* bits per channel */\n                                                (newRect.size.width * 4), /* 4 channels per pixel * numPixels/row */\n                                                colorSpace,\n                                                kCGImageAlphaPremultipliedLast\n                                                );\n    CGColorSpaceRelease(colorSpace);\n\t\n    // Rotate and/or flip the image if required by its orientation\n    CGContextConcatCTM(bitmap, transform);\n    \n    // Set the quality level to use when rescaling\n    CGContextSetInterpolationQuality(bitmap, quality);\n    \n    // Draw into the context; this scales the image\n    CGContextDrawImage(bitmap, transpose ? transposedRect : newRect, imageRef);\n    \n    // Get the resized image from the context and a UIImage\n    CGImageRef newImageRef = CGBitmapContextCreateImage(bitmap);\n    UIImage *newImage = [UIImage imageWithCGImage:newImageRef scale:self.scale orientation:UIImageOrientationUp];\n    \n    // Clean up\n    CGContextRelease(bitmap);\n    CGImageRelease(newImageRef);\n    \n    return newImage;\n}\n\n// Returns an affine transform that takes into account the image orientation when drawing a scaled image\n- (CGAffineTransform)transformForOrientation:(CGSize)newSize {\n    CGAffineTransform transform = CGAffineTransformIdentity;\n    \n    switch (self.imageOrientation) {\n        case UIImageOrientationDown:           // EXIF = 3\n        case UIImageOrientationDownMirrored:   // EXIF = 4\n            transform = CGAffineTransformTranslate(transform, newSize.width, newSize.height);\n            transform = CGAffineTransformRotate(transform, M_PI);\n            break;\n            \n        case UIImageOrientationLeft:           // EXIF = 6\n        case UIImageOrientationLeftMirrored:   // EXIF = 5\n            transform = CGAffineTransformTranslate(transform, newSize.width, 0);\n            transform = CGAffineTransformRotate(transform, M_PI_2);\n            break;\n            \n        case UIImageOrientationRight:          // EXIF = 8\n        case UIImageOrientationRightMirrored:  // EXIF = 7\n            transform = CGAffineTransformTranslate(transform, 0, newSize.height);\n            transform = CGAffineTransformRotate(transform, -M_PI_2);\n            break;\n        default:\n            break;\n    }\n    \n    switch (self.imageOrientation) {\n        case UIImageOrientationUpMirrored:     // EXIF = 2\n        case UIImageOrientationDownMirrored:   // EXIF = 4\n            transform = CGAffineTransformTranslate(transform, newSize.width, 0);\n            transform = CGAffineTransformScale(transform, -1, 1);\n            break;\n            \n        case UIImageOrientationLeftMirrored:   // EXIF = 5\n        case UIImageOrientationRightMirrored:  // EXIF = 7\n            transform = CGAffineTransformTranslate(transform, newSize.height, 0);\n            transform = CGAffineTransformScale(transform, -1, 1);\n            break;\n        default:\n            break;\n    }\n    \n    return transform;\n}\n\n@end\n"
  },
  {
    "path": "UIImage+RoundedCorner.h",
    "content": "// UIImage+RoundedCorner.h\n// Created by Trevor Harmon on 9/20/09.\n// Free for personal or commercial use, with or without modification.\n// No warranty is expressed or implied.\n\n#import <UIKit/UIKit.h>\n\n// Extends the UIImage class to support making rounded corners\n@interface UIImage (RoundedCorner)\n- (UIImage *)roundedCornerImage:(NSInteger)cornerSize borderSize:(NSInteger)borderSize;\n- (void)addRoundedRectToPath:(CGRect)rect context:(CGContextRef)context ovalWidth:(CGFloat)ovalWidth ovalHeight:(CGFloat)ovalHeight;\n@end\n"
  },
  {
    "path": "UIImage+RoundedCorner.m",
    "content": "// UIImage+RoundedCorner.m\n// Created by Trevor Harmon on 9/20/09.\n// Free for personal or commercial use, with or without modification.\n// No warranty is expressed or implied.\n\n#import \"UIImage+RoundedCorner.h\"\n#import \"UIImage+Alpha.h\"\n\n@implementation UIImage (RoundedCorner)\n\n// Creates a copy of this image with rounded corners\n// If borderSize is non-zero, a transparent border of the given size will also be added\n// Original author: Björn Sållarp. Used with permission. See: http://blog.sallarp.com/iphone-uiimage-round-corners/\n- (UIImage *)roundedCornerImage:(NSInteger)cornerSize borderSize:(NSInteger)borderSize {\n    // If the image does not have an alpha layer, add one\n    UIImage *image = [self imageWithAlpha];\n\n    CGFloat scale = MAX(self.scale,1.0f);\n    NSUInteger scaledBorderSize = borderSize * scale;\n\n    // Build a context that's the same dimensions as the new size\n    CGContextRef context = CGBitmapContextCreate(NULL,\n                                                 image.size.width*scale,\n                                                 image.size.height*scale,\n                                                 CGImageGetBitsPerComponent(image.CGImage),\n                                                 0,\n                                                 CGImageGetColorSpace(image.CGImage),\n                                                 CGImageGetBitmapInfo(image.CGImage));\n\n    // Create a clipping path with rounded corners\n    \n    CGContextBeginPath(context);\n    [self addRoundedRectToPath:CGRectMake(scaledBorderSize, scaledBorderSize, image.size.width*scale - borderSize * 2, image.size.height*scale - borderSize * 2)\n                       context:context\n                     ovalWidth:cornerSize*scale\n                    ovalHeight:cornerSize*scale];\n    CGContextClosePath(context);\n    CGContextClip(context);\n\n    // Draw the image to the context; the clipping path will make anything outside the rounded rect transparent\n    CGContextDrawImage(context, CGRectMake(0, 0, image.size.width*scale, image.size.height*scale), image.CGImage);\n    \n    // Create a CGImage from the context\n    CGImageRef clippedImage = CGBitmapContextCreateImage(context);\n    CGContextRelease(context);\n    \n    // Create a UIImage from the CGImage\n    UIImage *roundedImage = [UIImage imageWithCGImage:clippedImage scale:self.scale orientation:UIImageOrientationUp];\n    \n    CGImageRelease(clippedImage);\n    \n    return roundedImage;\n}\n\n#pragma mark -\n#pragma mark Private helper methods\n\n// Adds a rectangular path to the given context and rounds its corners by the given extents\n// Original author: Björn Sållarp. Used with permission. See: http://blog.sallarp.com/iphone-uiimage-round-corners/\n- (void)addRoundedRectToPath:(CGRect)rect context:(CGContextRef)context ovalWidth:(CGFloat)ovalWidth ovalHeight:(CGFloat)ovalHeight {\n    if (ovalWidth == 0 || ovalHeight == 0) {\n        CGContextAddRect(context, rect);\n        return;\n    }\n    CGContextSaveGState(context);\n    CGContextTranslateCTM(context, CGRectGetMinX(rect), CGRectGetMinY(rect));\n    CGContextScaleCTM(context, ovalWidth, ovalHeight);\n    CGFloat fw = CGRectGetWidth(rect) / ovalWidth;\n    CGFloat fh = CGRectGetHeight(rect) / ovalHeight;\n    CGContextMoveToPoint(context, fw, fh/2);\n    CGContextAddArcToPoint(context, fw, fh, fw/2, fh, 1);\n    CGContextAddArcToPoint(context, 0, fh, 0, fh/2, 1);\n    CGContextAddArcToPoint(context, 0, 0, fw/2, 0, 1);\n    CGContextAddArcToPoint(context, fw, 0, fw, fh/2, 1);\n    CGContextClosePath(context);\n    CGContextRestoreGState(context);\n}\n\n@end\n"
  },
  {
    "path": "UIImage-Categories.podspec",
    "content": "#\n# Be sure to run `pod spec lint UIImage-Categories.podspec' to ensure this is a\n# valid spec and remove all comments before submitting the spec.\n#\n# To learn more about the attributes see http://docs.cocoapods.org/specification.html\n#\nPod::Spec.new do |s|\n  s.name         = \"UIImage-Categories\"\n  s.version      = \"1.0.0\"\n  s.summary      = \"Image resizing and cropping utilities (originally by Trevor Harmon).\"\n  s.description  = <<-DESC\n                    For more information, see:\n                    http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/ .\n                    DESC\n  s.homepage     = \"https://github.com/mbcharbonneau/UIImage-Categories\"\n  s.license      = { type: 'MIT', file: 'LICENSE' }\n  s.author       = { \"Marc Charbonneau\" => \"marc@mbcharbonneau.com\" }\n  s.source       = { :git => \"https://github.com/mbcharbonneau/UIImage-Categories.git\", :tag => \"v#{s.version}\" }\n  s.platform     = :ios, '5.0'\n  s.ios.deployment_target = '5.0'\n  s.source_files = 'UIImage*.{h,m}'\n  s.public_header_files = 'UIImage*.h'\n  s.requires_arc = true\nend\n"
  },
  {
    "path": "UIImage-Categories.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t7C9A14EE1D1733CB0006B90D /* UIImage+Alpha.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C9A14E81D1733CB0006B90D /* UIImage+Alpha.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t7C9A14EF1D1733CB0006B90D /* UIImage+Alpha.m in Sources */ = {isa = PBXBuildFile; fileRef = 7C9A14E91D1733CB0006B90D /* UIImage+Alpha.m */; };\n\t\t7C9A14F01D1733CB0006B90D /* UIImage+Resize.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C9A14EA1D1733CB0006B90D /* UIImage+Resize.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t7C9A14F11D1733CB0006B90D /* UIImage+Resize.m in Sources */ = {isa = PBXBuildFile; fileRef = 7C9A14EB1D1733CB0006B90D /* UIImage+Resize.m */; };\n\t\t7C9A14F21D1733CB0006B90D /* UIImage+RoundedCorner.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C9A14EC1D1733CB0006B90D /* UIImage+RoundedCorner.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t7C9A14F31D1733CB0006B90D /* UIImage+RoundedCorner.m in Sources */ = {isa = PBXBuildFile; fileRef = 7C9A14ED1D1733CB0006B90D /* UIImage+RoundedCorner.m */; };\n\t\t7C9A14F51D17346D0006B90D /* UIImageCategories.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C9A14F41D17346D0006B90D /* UIImageCategories.h */; settings = {ATTRIBUTES = (Public, ); }; };\n\t\t7C9A14F71D1736580006B90D /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7C9A14F61D1736580006B90D /* UIKit.framework */; };\n\t\t7C9A14FA1D1736750006B90D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7C9A14F91D1736750006B90D /* Foundation.framework */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\t7C9A14DD1D17337D0006B90D /* UIImageCategories.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = UIImageCategories.framework; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\t7C9A14E81D1733CB0006B90D /* UIImage+Alpha.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIImage+Alpha.h\"; sourceTree = SOURCE_ROOT; };\n\t\t7C9A14E91D1733CB0006B90D /* UIImage+Alpha.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIImage+Alpha.m\"; sourceTree = SOURCE_ROOT; };\n\t\t7C9A14EA1D1733CB0006B90D /* UIImage+Resize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIImage+Resize.h\"; sourceTree = SOURCE_ROOT; };\n\t\t7C9A14EB1D1733CB0006B90D /* UIImage+Resize.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIImage+Resize.m\"; sourceTree = SOURCE_ROOT; };\n\t\t7C9A14EC1D1733CB0006B90D /* UIImage+RoundedCorner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"UIImage+RoundedCorner.h\"; sourceTree = SOURCE_ROOT; };\n\t\t7C9A14ED1D1733CB0006B90D /* UIImage+RoundedCorner.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"UIImage+RoundedCorner.m\"; sourceTree = SOURCE_ROOT; };\n\t\t7C9A14F41D17346D0006B90D /* UIImageCategories.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIImageCategories.h; sourceTree = SOURCE_ROOT; };\n\t\t7C9A14F61D1736580006B90D /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };\n\t\t7C9A14F91D1736750006B90D /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t7C9A14D91D17337D0006B90D /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t7C9A14FA1D1736750006B90D /* Foundation.framework in Frameworks */,\n\t\t\t\t7C9A14F71D1736580006B90D /* UIKit.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t7C9A14D31D17337D0006B90D = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t7C9A14DF1D17337D0006B90D /* UIImage-Categories */,\n\t\t\t\t7C9A14F81D1736630006B90D /* Frameworks */,\n\t\t\t\t7C9A14DE1D17337D0006B90D /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t7C9A14DE1D17337D0006B90D /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t7C9A14DD1D17337D0006B90D /* UIImageCategories.framework */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t7C9A14DF1D17337D0006B90D /* UIImage-Categories */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t7C9A14F41D17346D0006B90D /* UIImageCategories.h */,\n\t\t\t\t7C9A14E81D1733CB0006B90D /* UIImage+Alpha.h */,\n\t\t\t\t7C9A14E91D1733CB0006B90D /* UIImage+Alpha.m */,\n\t\t\t\t7C9A14EA1D1733CB0006B90D /* UIImage+Resize.h */,\n\t\t\t\t7C9A14EB1D1733CB0006B90D /* UIImage+Resize.m */,\n\t\t\t\t7C9A14EC1D1733CB0006B90D /* UIImage+RoundedCorner.h */,\n\t\t\t\t7C9A14ED1D1733CB0006B90D /* UIImage+RoundedCorner.m */,\n\t\t\t);\n\t\t\tpath = \"UIImage-Categories\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t7C9A14F81D1736630006B90D /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t7C9A14F91D1736750006B90D /* Foundation.framework */,\n\t\t\t\t7C9A14F61D1736580006B90D /* UIKit.framework */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\t7C9A14DA1D17337D0006B90D /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t7C9A14F01D1733CB0006B90D /* UIImage+Resize.h in Headers */,\n\t\t\t\t7C9A14F21D1733CB0006B90D /* UIImage+RoundedCorner.h in Headers */,\n\t\t\t\t7C9A14F51D17346D0006B90D /* UIImageCategories.h in Headers */,\n\t\t\t\t7C9A14EE1D1733CB0006B90D /* UIImage+Alpha.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\t7C9A14DC1D17337D0006B90D /* UIImage-Categories */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = 7C9A14E51D17337D0006B90D /* Build configuration list for PBXNativeTarget \"UIImage-Categories\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t7C9A14D81D17337D0006B90D /* Sources */,\n\t\t\t\t7C9A14D91D17337D0006B90D /* Frameworks */,\n\t\t\t\t7C9A14DA1D17337D0006B90D /* Headers */,\n\t\t\t\t7C9A14DB1D17337D0006B90D /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"UIImage-Categories\";\n\t\t\tproductName = \"UIImage-Categories\";\n\t\t\tproductReference = 7C9A14DD1D17337D0006B90D /* UIImageCategories.framework */;\n\t\t\tproductType = \"com.apple.product-type.framework\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t7C9A14D41D17337D0006B90D /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 0730;\n\t\t\t\tORGANIZATIONNAME = \"UIImage-Categories\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\t7C9A14DC1D17337D0006B90D = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 7.3.1;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = 7C9A14D71D17337D0006B90D /* Build configuration list for PBXProject \"UIImage-Categories\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = English;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = 7C9A14D31D17337D0006B90D;\n\t\t\tproductRefGroup = 7C9A14DE1D17337D0006B90D /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t7C9A14DC1D17337D0006B90D /* UIImage-Categories */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t7C9A14DB1D17337D0006B90D /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t7C9A14D81D17337D0006B90D /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t7C9A14EF1D1733CB0006B90D /* UIImage+Alpha.m in Sources */,\n\t\t\t\t7C9A14F31D1733CB0006B90D /* UIImage+RoundedCorner.m in Sources */,\n\t\t\t\t7C9A14F11D1733CB0006B90D /* UIImage+Resize.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n\t\t7C9A14E31D17337D0006B90D /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_NONNULL = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = YES;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t7C9A14E41D17337D0006B90D /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_NONNULL = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\t\"CODE_SIGN_IDENTITY[sdk=iphoneos*]\" = \"iPhone Developer\";\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 1;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tIPHONEOS_DEPLOYMENT_TARGET = 8.0;\n\t\t\t\tMTL_ENABLE_DEBUG_INFO = NO;\n\t\t\t\tSDKROOT = iphoneos;\n\t\t\t\tTARGETED_DEVICE_FAMILY = \"1,2\";\n\t\t\t\tVALIDATE_PRODUCT = YES;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tVERSION_INFO_PREFIX = \"\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\t7C9A14E61D17337D0006B90D /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = com.mbcharbonneau.UIImageCategories;\n\t\t\t\tPRODUCT_NAME = UIImageCategories;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\t7C9A14E71D17337D0006B90D /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tDEFINES_MODULE = YES;\n\t\t\t\tDYLIB_COMPATIBILITY_VERSION = 1;\n\t\t\t\tDYLIB_CURRENT_VERSION = 1;\n\t\t\t\tDYLIB_INSTALL_NAME_BASE = \"@rpath\";\n\t\t\t\tINFOPLIST_FILE = Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(LOCAL_LIBRARY_DIR)/Frameworks\";\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/Frameworks @loader_path/Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = com.mbcharbonneau.UIImageCategories;\n\t\t\t\tPRODUCT_NAME = UIImageCategories;\n\t\t\t\tSKIP_INSTALL = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\t7C9A14D71D17337D0006B90D /* Build configuration list for PBXProject \"UIImage-Categories\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t7C9A14E31D17337D0006B90D /* Debug */,\n\t\t\t\t7C9A14E41D17337D0006B90D /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\t7C9A14E51D17337D0006B90D /* Build configuration list for PBXNativeTarget \"UIImage-Categories\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\t7C9A14E61D17337D0006B90D /* Debug */,\n\t\t\t\t7C9A14E71D17337D0006B90D /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 7C9A14D41D17337D0006B90D /* Project object */;\n}\n"
  },
  {
    "path": "UIImage-Categories.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:UIImage-Categories.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "UIImage-Categories.xcodeproj/xcshareddata/xcschemes/UIImage-Categories.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"0730\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"7C9A14DC1D17337D0006B90D\"\n               BuildableName = \"UIImageCategories.framework\"\n               BlueprintName = \"UIImage-Categories\"\n               ReferencedContainer = \"container:UIImage-Categories.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"7C9A14DC1D17337D0006B90D\"\n            BuildableName = \"UIImageCategories.framework\"\n            BlueprintName = \"UIImage-Categories\"\n            ReferencedContainer = \"container:UIImage-Categories.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"7C9A14DC1D17337D0006B90D\"\n            BuildableName = \"UIImageCategories.framework\"\n            BlueprintName = \"UIImage-Categories\"\n            ReferencedContainer = \"container:UIImage-Categories.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "UIImageCategories.h",
    "content": "//\n//  UIImage-Categories.h\n//  UIImage-Categories\n//\n//  Created by Iyuna on 6/19/16.\n//  Copyright © 2016 UIImage-Categories. All rights reserved.\n//\n\n#import <UIImageCategories/UIImage+Alpha.h>\n#import <UIImageCategories/UIImage+Resize.h>\n#import <UIImageCategories/UIImage+RoundedCorner.h>\n\n"
  }
]