Full Code of mattt/Godzippa for AI

master cc4090d8dfa3 cached
28 files
110.2 KB
32.4k tokens
1 requests
Download .txt
Repository: mattt/Godzippa
Branch: master
Commit: cc4090d8dfa3
Files: 28
Total size: 110.2 KB

Directory structure:
gitextract_ehd_00nb/

├── .gitattributes
├── .travis.yml
├── Example/
│   └── main.m
├── Godzippa.playground/
│   ├── Contents.swift
│   ├── Resources/
│   │   └── file.txt
│   ├── Sources/
│   │   └── fileSize.swift
│   └── contents.xcplayground
├── Godzippa.podspec
├── Godzippa.xcodeproj/
│   ├── project.pbxproj
│   ├── project.xcworkspace/
│   │   └── contents.xcworkspacedata
│   └── xcshareddata/
│       └── xcschemes/
│           ├── Godzippa Example.xcscheme
│           ├── Godzippa iOS.xcscheme
│           ├── Godzippa macOS.xcscheme
│           └── Godzippa watchOS.xcscheme
├── Godzippa.xcworkspace/
│   ├── contents.xcworkspacedata
│   └── xcshareddata/
│       └── IDEWorkspaceChecks.plist
├── LICENSE
├── README.md
├── Sources/
│   ├── Godzippa.h
│   ├── GodzippaDefines.h
│   ├── Info.plist
│   ├── NSData+Godzippa.h
│   ├── NSData+Godzippa.m
│   ├── NSFileManager+Godzippa.h
│   └── NSFileManager+Godzippa.m
└── Tests/
    ├── GodzippaDataTestCase.m
    ├── GodzippaFileManagerTestCase.m
    └── Info.plist

================================================
FILE CONTENTS
================================================

================================================
FILE: .gitattributes
================================================
*.playground/** linguist-detectable=false
*.podspec linguist-detectable=false
*.h linguist-language=Objective-C


================================================
FILE: .travis.yml
================================================
osx_image: xcode10.2
language: objective-c
xcode_project: Godzippa.xcodeproj
xcode_scheme: Godzippa macOS
deploy:
  provider: script
  script: pod trunk push
  on:
    tags: true


================================================
FILE: Example/main.m
================================================
// main.m
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

@import Foundation;
@import Godzippa;

int main(__unused int argc, __unused const char *argv[]) {
    @autoreleasepool {
        NSData *originalData = [@"Look out! It's..." dataUsingEncoding:NSUTF8StringEncoding];
        NSData *compressedData = [originalData dataByGZipCompressingWithError:nil];
        NSData *decompressedData = [compressedData dataByGZipDecompressingDataWithError:nil];
        NSLog(@"%@ %@", [[NSString alloc] initWithData:decompressedData encoding:NSUTF8StringEncoding], @"Godzippa!");
    }

    return 0;
}


================================================
FILE: Godzippa.playground/Contents.swift
================================================
import Foundation
import Godzippa

let originalString = "Look out! It's Godzippa!"
let originalData = originalString.data(using: .utf8)! as NSData
let compressedData = try! originalData.gzipCompressed() as NSData
let decompressedData = try! compressedData.gzipDecompressed()
let decompressedString = String(data: decompressedData, encoding: .utf8)

originalString == decompressedString


let fileManager = FileManager.default
guard let textFile = Bundle.main.url(forResource: "file", withExtension: "txt") else {
    fatalError("Missing resource: file.txt")
}
print("Compressed: \(try fileSize(of: textFile))")

let gzipFile = textFile.appendingPathExtension("gz")
try fileManager.gzipCompressFile(at: textFile, to: gzipFile)
print("Decompressed: \(try fileSize(of: gzipFile))")


================================================
FILE: Godzippa.playground/Resources/file.txt
================================================
Commodo officia sit eu aliquip qui. Laborum id mollit labore dolore fugiat labore laborum duis aute reprehenderit. Velit irure sunt et culpa consequat do consectetur qui.

Dolor nisi aliquip culpa velit reprehenderit aute cupidatat. Lorem Lorem adipisicing Lorem eiusmod voluptate proident excepteur. Cupidatat nulla eiusmod velit laborum cupidatat sint tempor id voluptate cillum mollit incididunt exercitation.

Elit et duis consectetur anim laboris laboris nulla ad officia est aliquip esse elit laborum. Eu est ea duis laboris aute mollit irure ut irure. Sunt laboris exercitation deserunt aliqua aliquip enim pariatur esse.

Dolore sunt magna sit officia ullamco est pariatur. Dolor qui ullamco nulla dolore fugiat labore sunt veniam non et. Ex qui est elit cillum non. Elit exercitation mollit et quis sunt. Sunt duis pariatur aliquip aute magna. Ea mollit minim non excepteur nisi consequat dolor proident. Amet nulla commodo ut aliquip elit do veniam pariatur veniam id esse anim.

Officia cillum culpa ipsum veniam minim pariatur est dolore adipisicing esse. Eu exercitation laboris fugiat amet laboris. Amet officia ea elit dolor labore Lorem culpa aliquip labore. Et irure excepteur commodo laboris est.


================================================
FILE: Godzippa.playground/Sources/fileSize.swift
================================================
import Foundation

public func fileSize(of file: URL) throws -> String {
    let fileManager = FileManager.default

    guard fileManager.fileExists(atPath: file.path) else {
        return ""
    }

    let byteCount: Int64
    let attributes = try fileManager.attributesOfItem(atPath: file.path)
    switch attributes[.type] as! FileAttributeType {
    case .typeSymbolicLink:
        let destination = try FileManager.default.destinationOfSymbolicLink(atPath: file.path)
        byteCount = try fileManager.attributesOfItem(atPath: destination)[.size] as! Int64
    case FileAttributeType.typeRegular:
        byteCount = attributes[.size] as! Int64
    default:
        return ""
    }

    return ByteCountFormatter.string(fromByteCount: byteCount, countStyle: .file)
}


================================================
FILE: Godzippa.playground/contents.xcplayground
================================================
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<playground version='5.0' target-platform='macos'>
    <timeline fileName='timeline.xctimeline'/>
</playground>

================================================
FILE: Godzippa.podspec
================================================
Pod::Spec.new do |s|
  s.name     = 'Godzippa'
  s.version  = '2.1.1'
  s.license  = 'MIT'
  s.summary  = 'GZip Compression / Decompression Category for NSData and NSFileManager.'
  s.homepage = 'https://github.com/mattt/Godzippa'
  s.social_media_url = 'https://twitter.com/mattt'
  s.author   = { 'Mattt' => 'mattt@me.com' }
  s.source   = { git: 'https://github.com/mattt/Godzippa.git',
                 tag: s.version }
  s.source_files = 'Sources/*.{h,m}'
  s.requires_arc = true

  s.ios.deployment_target = '6.0'
  s.osx.deployment_target = '10.8'
  s.watchos.deployment_target = '2.0'
  s.tvos.deployment_target = '9.0'

  s.library = 'z'
end


================================================
FILE: Godzippa.xcodeproj/project.pbxproj
================================================
// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 46;
	objects = {

/* Begin PBXBuildFile section */
		4320A82C1BB1FEDB00AE91E2 /* Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A82B1BB1FEDB00AE91E2 /* Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A8361BB1FF4100AE91E2 /* NSData+Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A8311BB1FF4100AE91E2 /* NSData+Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A8371BB1FF4100AE91E2 /* NSData+Godzippa.m in Sources */ = {isa = PBXBuildFile; fileRef = 4320A8321BB1FF4100AE91E2 /* NSData+Godzippa.m */; };
		4320A8381BB1FF4100AE91E2 /* NSFileManager+Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A8331BB1FF4100AE91E2 /* NSFileManager+Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A8391BB1FF4100AE91E2 /* NSFileManager+Godzippa.m in Sources */ = {isa = PBXBuildFile; fileRef = 4320A8341BB1FF4100AE91E2 /* NSFileManager+Godzippa.m */; };
		4320A83C1BB1FF9300AE91E2 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 4320A83B1BB1FF9300AE91E2 /* libz.tbd */; };
		4320A83F1BB2002C00AE91E2 /* NSFileManager+Godzippa.m in Sources */ = {isa = PBXBuildFile; fileRef = 4320A8341BB1FF4100AE91E2 /* NSFileManager+Godzippa.m */; };
		4320A8401BB2002C00AE91E2 /* NSData+Godzippa.m in Sources */ = {isa = PBXBuildFile; fileRef = 4320A8321BB1FF4100AE91E2 /* NSData+Godzippa.m */; };
		4320A8441BB2002C00AE91E2 /* NSFileManager+Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A8331BB1FF4100AE91E2 /* NSFileManager+Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A8451BB2002C00AE91E2 /* Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A82B1BB1FEDB00AE91E2 /* Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A8461BB2002C00AE91E2 /* NSData+Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A8311BB1FF4100AE91E2 /* NSData+Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A84F1BB2030C00AE91E2 /* NSFileManager+Godzippa.m in Sources */ = {isa = PBXBuildFile; fileRef = 4320A8341BB1FF4100AE91E2 /* NSFileManager+Godzippa.m */; };
		4320A8501BB2030C00AE91E2 /* NSData+Godzippa.m in Sources */ = {isa = PBXBuildFile; fileRef = 4320A8321BB1FF4100AE91E2 /* NSData+Godzippa.m */; };
		4320A8541BB2030C00AE91E2 /* NSFileManager+Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A8331BB1FF4100AE91E2 /* NSFileManager+Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A8551BB2030C00AE91E2 /* Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A82B1BB1FEDB00AE91E2 /* Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A8561BB2030C00AE91E2 /* NSData+Godzippa.h in Headers */ = {isa = PBXBuildFile; fileRef = 4320A8311BB1FF4100AE91E2 /* NSData+Godzippa.h */; settings = {ATTRIBUTES = (Public, ); }; };
		4320A8771BB207D100AE91E2 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 4320A8761BB207D100AE91E2 /* libz.tbd */; };
		4320A8791BB207DC00AE91E2 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 4320A8781BB207DC00AE91E2 /* libz.tbd */; };
		F80740A52065508E00107A43 /* Godzippa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4320A8281BB1FEDB00AE91E2 /* Godzippa.framework */; };
		F80740AB206550C400107A43 /* GodzippaFileManagerTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = F80740902065504400107A43 /* GodzippaFileManagerTestCase.m */; };
		F80740AC206550C400107A43 /* GodzippaDataTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = F80740922065504400107A43 /* GodzippaDataTestCase.m */; };
		F80740BF2065536300107A43 /* GodzippaFileManagerTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = F80740902065504400107A43 /* GodzippaFileManagerTestCase.m */; };
		F80740C02065536300107A43 /* GodzippaDataTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = F80740922065504400107A43 /* GodzippaDataTestCase.m */; };
		F80740CD2065536400107A43 /* GodzippaFileManagerTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = F80740902065504400107A43 /* GodzippaFileManagerTestCase.m */; };
		F80740CE2065536400107A43 /* GodzippaDataTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = F80740922065504400107A43 /* GodzippaDataTestCase.m */; };
		F80740DA2065537F00107A43 /* Godzippa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4320A85B1BB2030C00AE91E2 /* Godzippa.framework */; };
		F80740DD2065538B00107A43 /* Godzippa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4320A84B1BB2002C00AE91E2 /* Godzippa.framework */; };
		F8458A6A206555D600629214 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = F8458A69206555D600629214 /* main.m */; };
		F8458A6E206555FE00629214 /* Godzippa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4320A8281BB1FEDB00AE91E2 /* Godzippa.framework */; };
		F86EC9B02065655000AA9C1D /* GodzippaDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = F86EC9AF2065655000AA9C1D /* GodzippaDefines.h */; settings = {ATTRIBUTES = (Public, ); }; };
		F86EC9B12065655000AA9C1D /* GodzippaDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = F86EC9AF2065655000AA9C1D /* GodzippaDefines.h */; settings = {ATTRIBUTES = (Public, ); }; };
		F86EC9B22065655000AA9C1D /* GodzippaDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = F86EC9AF2065655000AA9C1D /* GodzippaDefines.h */; settings = {ATTRIBUTES = (Public, ); }; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		F80740A62065508E00107A43 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 4320A81D1BB1FE2D00AE91E2 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 4320A8271BB1FEDB00AE91E2;
			remoteInfo = "Godzippa-OSX";
		};
		F80740D72065537900107A43 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 4320A81D1BB1FE2D00AE91E2 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 4320A84D1BB2030C00AE91E2;
			remoteInfo = "Godzippa watchOS";
		};
		F80740DB2065538800107A43 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 4320A81D1BB1FE2D00AE91E2 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 4320A83D1BB2002C00AE91E2;
			remoteInfo = "Godzippa iOS";
		};
/* End PBXContainerItemProxy section */

/* Begin PBXCopyFilesBuildPhase section */
		F8458A65206555D600629214 /* CopyFiles */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 2147483647;
			dstPath = /usr/share/man/man1/;
			dstSubfolderSpec = 0;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 1;
		};
/* End PBXCopyFilesBuildPhase section */

/* Begin PBXFileReference section */
		4320A8281BB1FEDB00AE91E2 /* Godzippa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Godzippa.framework; sourceTree = BUILT_PRODUCTS_DIR; };
		4320A82B1BB1FEDB00AE91E2 /* Godzippa.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Godzippa.h; sourceTree = "<group>"; };
		4320A82D1BB1FEDB00AE91E2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		4320A8311BB1FF4100AE91E2 /* NSData+Godzippa.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+Godzippa.h"; sourceTree = "<group>"; };
		4320A8321BB1FF4100AE91E2 /* NSData+Godzippa.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+Godzippa.m"; sourceTree = "<group>"; };
		4320A8331BB1FF4100AE91E2 /* NSFileManager+Godzippa.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFileManager+Godzippa.h"; sourceTree = "<group>"; };
		4320A8341BB1FF4100AE91E2 /* NSFileManager+Godzippa.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSFileManager+Godzippa.m"; sourceTree = "<group>"; };
		4320A83B1BB1FF9300AE91E2 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
		4320A84B1BB2002C00AE91E2 /* Godzippa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Godzippa.framework; sourceTree = BUILT_PRODUCTS_DIR; };
		4320A85B1BB2030C00AE91E2 /* Godzippa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Godzippa.framework; sourceTree = BUILT_PRODUCTS_DIR; };
		4320A8761BB207D100AE91E2 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = Platforms/WatchOS.platform/Developer/SDKs/WatchOS2.0.sdk/usr/lib/libz.tbd; sourceTree = DEVELOPER_DIR; };
		4320A8781BB207DC00AE91E2 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/usr/lib/libz.tbd; sourceTree = DEVELOPER_DIR; };
		F80740902065504400107A43 /* GodzippaFileManagerTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GodzippaFileManagerTestCase.m; sourceTree = "<group>"; };
		F80740912065504400107A43 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		F80740922065504400107A43 /* GodzippaDataTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GodzippaDataTestCase.m; sourceTree = "<group>"; };
		F80740A02065508E00107A43 /* Godzippa macOS Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Godzippa macOS Tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
		F80740C72065536300107A43 /* Godzippa iOS Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Godzippa iOS Tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
		F80740D52065536400107A43 /* Godzippa watchOS Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Godzippa watchOS Tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
		F8458A67206555D600629214 /* Godzippa Example */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "Godzippa Example"; sourceTree = BUILT_PRODUCTS_DIR; };
		F8458A69206555D600629214 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
		F86EC9AF2065655000AA9C1D /* GodzippaDefines.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GodzippaDefines.h; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		4320A8241BB1FEDB00AE91E2 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				4320A83C1BB1FF9300AE91E2 /* libz.tbd in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		4320A8411BB2002C00AE91E2 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				4320A8791BB207DC00AE91E2 /* libz.tbd in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		4320A8511BB2030C00AE91E2 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				4320A8771BB207D100AE91E2 /* libz.tbd in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F807409D2065508E00107A43 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F80740A52065508E00107A43 /* Godzippa.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F80740C12065536300107A43 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F80740DD2065538B00107A43 /* Godzippa.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F80740CF2065536400107A43 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F80740DA2065537F00107A43 /* Godzippa.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F8458A64206555D600629214 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F8458A6E206555FE00629214 /* Godzippa.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		4320A81C1BB1FE2D00AE91E2 = {
			isa = PBXGroup;
			children = (
				4320A82A1BB1FEDB00AE91E2 /* Sources */,
				F807408F2065504400107A43 /* Tests */,
				F8458A68206555D600629214 /* Example */,
				4320A8291BB1FEDB00AE91E2 /* Products */,
				4320A87A1BB207E900AE91E2 /* Libraries */,
				F80740D92065537F00107A43 /* Frameworks */,
			);
			sourceTree = "<group>";
		};
		4320A8291BB1FEDB00AE91E2 /* Products */ = {
			isa = PBXGroup;
			children = (
				4320A8281BB1FEDB00AE91E2 /* Godzippa.framework */,
				4320A84B1BB2002C00AE91E2 /* Godzippa.framework */,
				4320A85B1BB2030C00AE91E2 /* Godzippa.framework */,
				F80740A02065508E00107A43 /* Godzippa macOS Tests.xctest */,
				F80740C72065536300107A43 /* Godzippa iOS Tests.xctest */,
				F80740D52065536400107A43 /* Godzippa watchOS Tests.xctest */,
				F8458A67206555D600629214 /* Godzippa Example */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		4320A82A1BB1FEDB00AE91E2 /* Sources */ = {
			isa = PBXGroup;
			children = (
				4320A82B1BB1FEDB00AE91E2 /* Godzippa.h */,
				F86EC9AF2065655000AA9C1D /* GodzippaDefines.h */,
				4320A8311BB1FF4100AE91E2 /* NSData+Godzippa.h */,
				4320A8321BB1FF4100AE91E2 /* NSData+Godzippa.m */,
				4320A8331BB1FF4100AE91E2 /* NSFileManager+Godzippa.h */,
				4320A8341BB1FF4100AE91E2 /* NSFileManager+Godzippa.m */,
				4320A82D1BB1FEDB00AE91E2 /* Info.plist */,
			);
			path = Sources;
			sourceTree = "<group>";
		};
		4320A87A1BB207E900AE91E2 /* Libraries */ = {
			isa = PBXGroup;
			children = (
				4320A83B1BB1FF9300AE91E2 /* libz.tbd */,
				4320A8781BB207DC00AE91E2 /* libz.tbd */,
				4320A8761BB207D100AE91E2 /* libz.tbd */,
			);
			name = Libraries;
			sourceTree = "<group>";
		};
		F807408F2065504400107A43 /* Tests */ = {
			isa = PBXGroup;
			children = (
				F80740922065504400107A43 /* GodzippaDataTestCase.m */,
				F80740902065504400107A43 /* GodzippaFileManagerTestCase.m */,
				F80740912065504400107A43 /* Info.plist */,
			);
			path = Tests;
			sourceTree = "<group>";
		};
		F80740D92065537F00107A43 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
			);
			name = Frameworks;
			sourceTree = "<group>";
		};
		F8458A68206555D600629214 /* Example */ = {
			isa = PBXGroup;
			children = (
				F8458A69206555D600629214 /* main.m */,
			);
			path = Example;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		4320A8251BB1FEDB00AE91E2 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F86EC9B02065655000AA9C1D /* GodzippaDefines.h in Headers */,
				4320A82C1BB1FEDB00AE91E2 /* Godzippa.h in Headers */,
				4320A8381BB1FF4100AE91E2 /* NSFileManager+Godzippa.h in Headers */,
				4320A8361BB1FF4100AE91E2 /* NSData+Godzippa.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		4320A8431BB2002C00AE91E2 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				4320A8441BB2002C00AE91E2 /* NSFileManager+Godzippa.h in Headers */,
				4320A8451BB2002C00AE91E2 /* Godzippa.h in Headers */,
				F86EC9B12065655000AA9C1D /* GodzippaDefines.h in Headers */,
				4320A8461BB2002C00AE91E2 /* NSData+Godzippa.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		4320A8531BB2030C00AE91E2 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				4320A8541BB2030C00AE91E2 /* NSFileManager+Godzippa.h in Headers */,
				4320A8551BB2030C00AE91E2 /* Godzippa.h in Headers */,
				F86EC9B22065655000AA9C1D /* GodzippaDefines.h in Headers */,
				4320A8561BB2030C00AE91E2 /* NSData+Godzippa.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		4320A8271BB1FEDB00AE91E2 /* Godzippa macOS */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 4320A8301BB1FEDB00AE91E2 /* Build configuration list for PBXNativeTarget "Godzippa macOS" */;
			buildPhases = (
				4320A8231BB1FEDB00AE91E2 /* Sources */,
				4320A8241BB1FEDB00AE91E2 /* Frameworks */,
				4320A8251BB1FEDB00AE91E2 /* Headers */,
				4320A8261BB1FEDB00AE91E2 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "Godzippa macOS";
			productName = Godzippa;
			productReference = 4320A8281BB1FEDB00AE91E2 /* Godzippa.framework */;
			productType = "com.apple.product-type.framework";
		};
		4320A83D1BB2002C00AE91E2 /* Godzippa iOS */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 4320A8481BB2002C00AE91E2 /* Build configuration list for PBXNativeTarget "Godzippa iOS" */;
			buildPhases = (
				4320A83E1BB2002C00AE91E2 /* Sources */,
				4320A8411BB2002C00AE91E2 /* Frameworks */,
				4320A8431BB2002C00AE91E2 /* Headers */,
				4320A8471BB2002C00AE91E2 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "Godzippa iOS";
			productName = Godzippa;
			productReference = 4320A84B1BB2002C00AE91E2 /* Godzippa.framework */;
			productType = "com.apple.product-type.framework";
		};
		4320A84D1BB2030C00AE91E2 /* Godzippa watchOS */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 4320A8581BB2030C00AE91E2 /* Build configuration list for PBXNativeTarget "Godzippa watchOS" */;
			buildPhases = (
				4320A84E1BB2030C00AE91E2 /* Sources */,
				4320A8511BB2030C00AE91E2 /* Frameworks */,
				4320A8531BB2030C00AE91E2 /* Headers */,
				4320A8571BB2030C00AE91E2 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "Godzippa watchOS";
			productName = Godzippa;
			productReference = 4320A85B1BB2030C00AE91E2 /* Godzippa.framework */;
			productType = "com.apple.product-type.framework";
		};
		F807409F2065508E00107A43 /* Godzippa macOS Tests */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F80740A82065508E00107A43 /* Build configuration list for PBXNativeTarget "Godzippa macOS Tests" */;
			buildPhases = (
				F807409C2065508E00107A43 /* Sources */,
				F807409D2065508E00107A43 /* Frameworks */,
				F807409E2065508E00107A43 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
				F80740A72065508E00107A43 /* PBXTargetDependency */,
			);
			name = "Godzippa macOS Tests";
			productName = "Godzippa macOS Tests";
			productReference = F80740A02065508E00107A43 /* Godzippa macOS Tests.xctest */;
			productType = "com.apple.product-type.bundle.unit-test";
		};
		F80740BB2065536300107A43 /* Godzippa iOS Tests */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F80740C42065536300107A43 /* Build configuration list for PBXNativeTarget "Godzippa iOS Tests" */;
			buildPhases = (
				F80740BE2065536300107A43 /* Sources */,
				F80740C12065536300107A43 /* Frameworks */,
				F80740C32065536300107A43 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
				F80740DC2065538800107A43 /* PBXTargetDependency */,
			);
			name = "Godzippa iOS Tests";
			productName = "Godzippa macOS Tests";
			productReference = F80740C72065536300107A43 /* Godzippa iOS Tests.xctest */;
			productType = "com.apple.product-type.bundle.unit-test";
		};
		F80740C92065536400107A43 /* Godzippa watchOS Tests */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F80740D22065536400107A43 /* Build configuration list for PBXNativeTarget "Godzippa watchOS Tests" */;
			buildPhases = (
				F80740CC2065536400107A43 /* Sources */,
				F80740CF2065536400107A43 /* Frameworks */,
				F80740D12065536400107A43 /* Resources */,
			);
			buildRules = (
			);
			dependencies = (
				F80740D82065537900107A43 /* PBXTargetDependency */,
			);
			name = "Godzippa watchOS Tests";
			productName = "Godzippa macOS Tests";
			productReference = F80740D52065536400107A43 /* Godzippa watchOS Tests.xctest */;
			productType = "com.apple.product-type.bundle.unit-test";
		};
		F8458A66206555D600629214 /* Godzippa Example */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F8458A6B206555D600629214 /* Build configuration list for PBXNativeTarget "Godzippa Example" */;
			buildPhases = (
				F8458A63206555D600629214 /* Sources */,
				F8458A64206555D600629214 /* Frameworks */,
				F8458A65206555D600629214 /* CopyFiles */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "Godzippa Example";
			productName = "Godzippa Example";
			productReference = F8458A67206555D600629214 /* Godzippa Example */;
			productType = "com.apple.product-type.tool";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		4320A81D1BB1FE2D00AE91E2 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				LastUpgradeCheck = 1020;
				TargetAttributes = {
					4320A8271BB1FEDB00AE91E2 = {
						CreatedOnToolsVersion = 7.0;
					};
					F807409F2065508E00107A43 = {
						CreatedOnToolsVersion = 9.2;
						ProvisioningStyle = Automatic;
					};
					F80740BB2065536300107A43 = {
						ProvisioningStyle = Automatic;
					};
					F80740C92065536400107A43 = {
						ProvisioningStyle = Automatic;
					};
					F8458A66206555D600629214 = {
						CreatedOnToolsVersion = 9.2;
						ProvisioningStyle = Automatic;
					};
				};
			};
			buildConfigurationList = 4320A8201BB1FE2D00AE91E2 /* Build configuration list for PBXProject "Godzippa" */;
			compatibilityVersion = "Xcode 3.2";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = 4320A81C1BB1FE2D00AE91E2;
			productRefGroup = 4320A8291BB1FEDB00AE91E2 /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				4320A8271BB1FEDB00AE91E2 /* Godzippa macOS */,
				4320A83D1BB2002C00AE91E2 /* Godzippa iOS */,
				4320A84D1BB2030C00AE91E2 /* Godzippa watchOS */,
				F807409F2065508E00107A43 /* Godzippa macOS Tests */,
				F80740BB2065536300107A43 /* Godzippa iOS Tests */,
				F80740C92065536400107A43 /* Godzippa watchOS Tests */,
				F8458A66206555D600629214 /* Godzippa Example */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		4320A8261BB1FEDB00AE91E2 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		4320A8471BB2002C00AE91E2 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		4320A8571BB2030C00AE91E2 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F807409E2065508E00107A43 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F80740C32065536300107A43 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F80740D12065536400107A43 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		4320A8231BB1FEDB00AE91E2 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				4320A8391BB1FF4100AE91E2 /* NSFileManager+Godzippa.m in Sources */,
				4320A8371BB1FF4100AE91E2 /* NSData+Godzippa.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		4320A83E1BB2002C00AE91E2 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				4320A83F1BB2002C00AE91E2 /* NSFileManager+Godzippa.m in Sources */,
				4320A8401BB2002C00AE91E2 /* NSData+Godzippa.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		4320A84E1BB2030C00AE91E2 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				4320A84F1BB2030C00AE91E2 /* NSFileManager+Godzippa.m in Sources */,
				4320A8501BB2030C00AE91E2 /* NSData+Godzippa.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F807409C2065508E00107A43 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F80740AB206550C400107A43 /* GodzippaFileManagerTestCase.m in Sources */,
				F80740AC206550C400107A43 /* GodzippaDataTestCase.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F80740BE2065536300107A43 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F80740BF2065536300107A43 /* GodzippaFileManagerTestCase.m in Sources */,
				F80740C02065536300107A43 /* GodzippaDataTestCase.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F80740CC2065536400107A43 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F80740CD2065536400107A43 /* GodzippaFileManagerTestCase.m in Sources */,
				F80740CE2065536400107A43 /* GodzippaDataTestCase.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F8458A63206555D600629214 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F8458A6A206555D600629214 /* main.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		F80740A72065508E00107A43 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 4320A8271BB1FEDB00AE91E2 /* Godzippa macOS */;
			targetProxy = F80740A62065508E00107A43 /* PBXContainerItemProxy */;
		};
		F80740D82065537900107A43 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 4320A84D1BB2030C00AE91E2 /* Godzippa watchOS */;
			targetProxy = F80740D72065537900107A43 /* PBXContainerItemProxy */;
		};
		F80740DC2065538800107A43 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 4320A83D1BB2002C00AE91E2 /* Godzippa iOS */;
			targetProxy = F80740DB2065538800107A43 /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		4320A8211BB1FE2D00AE91E2 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				ONLY_ACTIVE_ARCH = YES;
			};
			name = Debug;
		};
		4320A8221BB1FE2D00AE91E2 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
				CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_COMMA = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INFINITE_RECURSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
				CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
				CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
				CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
				CLANG_WARN_STRICT_PROTOTYPES = YES;
				CLANG_WARN_SUSPICIOUS_MOVE = YES;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
			};
			name = Release;
		};
		4320A82E1BB1FEDB00AE91E2 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = dwarf;
				DEFINES_MODULE = YES;
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				FRAMEWORK_VERSION = A;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				INFOPLIST_FILE = "$(SRCROOT)/Sources/Info.plist";
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				MTL_ENABLE_DEBUG_INFO = YES;
				ONLY_ACTIVE_ARCH = YES;
				PRODUCT_BUNDLE_IDENTIFIER = com.godzippa.Godzippa;
				PRODUCT_NAME = Godzippa;
				SDKROOT = macosx;
				SKIP_INSTALL = YES;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Debug;
		};
		4320A82F1BB1FEDB00AE91E2 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				DEFINES_MODULE = YES;
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				FRAMEWORK_VERSION = A;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				INFOPLIST_FILE = "$(SRCROOT)/Sources/Info.plist";
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				MTL_ENABLE_DEBUG_INFO = NO;
				PRODUCT_BUNDLE_IDENTIFIER = com.godzippa.Godzippa;
				PRODUCT_NAME = Godzippa;
				SDKROOT = macosx;
				SKIP_INSTALL = YES;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Release;
		};
		4320A8491BB2002C00AE91E2 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = dwarf;
				DEFINES_MODULE = YES;
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				FRAMEWORK_VERSION = A;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				INFOPLIST_FILE = Sources/Info.plist;
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				MTL_ENABLE_DEBUG_INFO = YES;
				ONLY_ACTIVE_ARCH = YES;
				PRODUCT_BUNDLE_IDENTIFIER = com.godzippa.Godzippa;
				PRODUCT_NAME = Godzippa;
				SDKROOT = iphoneos;
				SKIP_INSTALL = YES;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Debug;
		};
		4320A84A1BB2002C00AE91E2 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				DEFINES_MODULE = YES;
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				FRAMEWORK_VERSION = A;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				INFOPLIST_FILE = Sources/Info.plist;
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				MTL_ENABLE_DEBUG_INFO = NO;
				PRODUCT_BUNDLE_IDENTIFIER = com.godzippa.Godzippa;
				PRODUCT_NAME = Godzippa;
				SDKROOT = iphoneos;
				SKIP_INSTALL = YES;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Release;
		};
		4320A8591BB2030C00AE91E2 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = dwarf;
				DEFINES_MODULE = YES;
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				ENABLE_TESTABILITY = YES;
				FRAMEWORK_VERSION = A;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				INFOPLIST_FILE = Sources/Info.plist;
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				MTL_ENABLE_DEBUG_INFO = YES;
				ONLY_ACTIVE_ARCH = YES;
				PRODUCT_BUNDLE_IDENTIFIER = com.godzippa.Godzippa;
				PRODUCT_NAME = Godzippa;
				SDKROOT = watchos;
				SKIP_INSTALL = YES;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Debug;
		};
		4320A85A1BB2030C00AE91E2 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNREACHABLE_CODE = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				CODE_SIGN_IDENTITY = "iPhone Developer";
				"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				CURRENT_PROJECT_VERSION = 1;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				DEFINES_MODULE = YES;
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				DYLIB_INSTALL_NAME_BASE = "@rpath";
				ENABLE_NS_ASSERTIONS = NO;
				ENABLE_STRICT_OBJC_MSGSEND = YES;
				FRAMEWORK_VERSION = A;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_NO_COMMON_BLOCKS = YES;
				GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNDECLARED_SELECTOR = YES;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				GCC_WARN_UNUSED_FUNCTION = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				INFOPLIST_FILE = Sources/Info.plist;
				INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.11;
				MTL_ENABLE_DEBUG_INFO = NO;
				PRODUCT_BUNDLE_IDENTIFIER = com.godzippa.Godzippa;
				PRODUCT_NAME = Godzippa;
				SDKROOT = watchos;
				SKIP_INSTALL = YES;
				VERSIONING_SYSTEM = "apple-generic";
				VERSION_INFO_PREFIX = "";
			};
			name = Release;
		};
		F80740A92065508E00107A43 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CODE_SIGN_IDENTITY = "-";
				CODE_SIGN_STYLE = Automatic;
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				INFOPLIST_FILE = Tests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.13;
				MTL_ENABLE_DEBUG_INFO = YES;
				PRODUCT_BUNDLE_IDENTIFIER = "com.mattt.Godzippa-macOS-Tests";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SDKROOT = macosx;
			};
			name = Debug;
		};
		F80740AA2065508E00107A43 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CODE_SIGN_IDENTITY = "-";
				CODE_SIGN_STYLE = Automatic;
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				INFOPLIST_FILE = Tests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.13;
				MTL_ENABLE_DEBUG_INFO = NO;
				PRODUCT_BUNDLE_IDENTIFIER = "com.mattt.Godzippa-macOS-Tests";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SDKROOT = macosx;
			};
			name = Release;
		};
		F80740C52065536300107A43 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CODE_SIGN_IDENTITY = "-";
				CODE_SIGN_STYLE = Automatic;
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				INFOPLIST_FILE = Tests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.13;
				MTL_ENABLE_DEBUG_INFO = YES;
				PRODUCT_BUNDLE_IDENTIFIER = "com.mattt.Godzippa-macOS-Tests";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SDKROOT = macosx;
			};
			name = Debug;
		};
		F80740C62065536300107A43 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CODE_SIGN_IDENTITY = "-";
				CODE_SIGN_STYLE = Automatic;
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				INFOPLIST_FILE = Tests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.13;
				MTL_ENABLE_DEBUG_INFO = NO;
				PRODUCT_BUNDLE_IDENTIFIER = "com.mattt.Godzippa-macOS-Tests";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SDKROOT = macosx;
			};
			name = Release;
		};
		F80740D32065536400107A43 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CODE_SIGN_IDENTITY = "-";
				CODE_SIGN_STYLE = Automatic;
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				INFOPLIST_FILE = Tests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.13;
				MTL_ENABLE_DEBUG_INFO = YES;
				PRODUCT_BUNDLE_IDENTIFIER = "com.mattt.Godzippa-macOS-Tests";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SDKROOT = macosx;
			};
			name = Debug;
		};
		F80740D42065536400107A43 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CODE_SIGN_IDENTITY = "-";
				CODE_SIGN_STYLE = Automatic;
				COMBINE_HIDPI_IMAGES = YES;
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				INFOPLIST_FILE = Tests/Info.plist;
				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
				MACOSX_DEPLOYMENT_TARGET = 10.13;
				MTL_ENABLE_DEBUG_INFO = NO;
				PRODUCT_BUNDLE_IDENTIFIER = "com.mattt.Godzippa-macOS-Tests";
				PRODUCT_NAME = "$(TARGET_NAME)";
				SDKROOT = macosx;
			};
			name = Release;
		};
		F8458A6C206555D600629214 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CODE_SIGN_IDENTITY = "-";
				CODE_SIGN_STYLE = Automatic;
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = dwarf;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				MACOSX_DEPLOYMENT_TARGET = 10.13;
				MTL_ENABLE_DEBUG_INFO = YES;
				PRODUCT_NAME = "$(TARGET_NAME)";
				SDKROOT = macosx;
			};
			name = Debug;
		};
		F8458A6D206555D600629214 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ANALYZER_NONNULL = YES;
				CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
				CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
				CLANG_CXX_LIBRARY = "libc++";
				CLANG_ENABLE_MODULES = YES;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
				CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
				CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
				CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
				CODE_SIGN_IDENTITY = "-";
				CODE_SIGN_STYLE = Automatic;
				COPY_PHASE_STRIP = NO;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				ENABLE_NS_ASSERTIONS = NO;
				GCC_C_LANGUAGE_STANDARD = gnu11;
				GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
				MACOSX_DEPLOYMENT_TARGET = 10.13;
				MTL_ENABLE_DEBUG_INFO = NO;
				PRODUCT_NAME = "$(TARGET_NAME)";
				SDKROOT = macosx;
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		4320A8201BB1FE2D00AE91E2 /* Build configuration list for PBXProject "Godzippa" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				4320A8211BB1FE2D00AE91E2 /* Debug */,
				4320A8221BB1FE2D00AE91E2 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		4320A8301BB1FEDB00AE91E2 /* Build configuration list for PBXNativeTarget "Godzippa macOS" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				4320A82E1BB1FEDB00AE91E2 /* Debug */,
				4320A82F1BB1FEDB00AE91E2 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		4320A8481BB2002C00AE91E2 /* Build configuration list for PBXNativeTarget "Godzippa iOS" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				4320A8491BB2002C00AE91E2 /* Debug */,
				4320A84A1BB2002C00AE91E2 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		4320A8581BB2030C00AE91E2 /* Build configuration list for PBXNativeTarget "Godzippa watchOS" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				4320A8591BB2030C00AE91E2 /* Debug */,
				4320A85A1BB2030C00AE91E2 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F80740A82065508E00107A43 /* Build configuration list for PBXNativeTarget "Godzippa macOS Tests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F80740A92065508E00107A43 /* Debug */,
				F80740AA2065508E00107A43 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F80740C42065536300107A43 /* Build configuration list for PBXNativeTarget "Godzippa iOS Tests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F80740C52065536300107A43 /* Debug */,
				F80740C62065536300107A43 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F80740D22065536400107A43 /* Build configuration list for PBXNativeTarget "Godzippa watchOS Tests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F80740D32065536400107A43 /* Debug */,
				F80740D42065536400107A43 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F8458A6B206555D600629214 /* Build configuration list for PBXNativeTarget "Godzippa Example" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F8458A6C206555D600629214 /* Debug */,
				F8458A6D206555D600629214 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 4320A81D1BB1FE2D00AE91E2 /* Project object */;
}


================================================
FILE: Godzippa.xcodeproj/project.xcworkspace/contents.xcworkspacedata
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
   version = "1.0">
   <FileRef
      location = "self:">
   </FileRef>
</Workspace>


================================================
FILE: Godzippa.xcodeproj/xcshareddata/xcschemes/Godzippa Example.xcscheme
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
   LastUpgradeVersion = "1020"
   version = "1.3">
   <BuildAction
      parallelizeBuildables = "YES"
      buildImplicitDependencies = "YES">
      <BuildActionEntries>
         <BuildActionEntry
            buildForTesting = "YES"
            buildForRunning = "YES"
            buildForProfiling = "YES"
            buildForArchiving = "YES"
            buildForAnalyzing = "YES">
            <BuildableReference
               BuildableIdentifier = "primary"
               BlueprintIdentifier = "F8458A66206555D600629214"
               BuildableName = "Godzippa Example"
               BlueprintName = "Godzippa Example"
               ReferencedContainer = "container:Godzippa.xcodeproj">
            </BuildableReference>
         </BuildActionEntry>
      </BuildActionEntries>
   </BuildAction>
   <TestAction
      buildConfiguration = "Debug"
      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
      shouldUseLaunchSchemeArgsEnv = "YES">
      <Testables>
         <TestableReference
            skipped = "NO">
            <BuildableReference
               BuildableIdentifier = "primary"
               BlueprintIdentifier = "F807409F2065508E00107A43"
               BuildableName = "Godzippa macOS Tests.xctest"
               BlueprintName = "Godzippa macOS Tests"
               ReferencedContainer = "container:Godzippa.xcodeproj">
            </BuildableReference>
         </TestableReference>
      </Testables>
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "F8458A66206555D600629214"
            BuildableName = "Godzippa Example"
            BlueprintName = "Godzippa Example"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
      <AdditionalOptions>
      </AdditionalOptions>
   </TestAction>
   <LaunchAction
      buildConfiguration = "Debug"
      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
      disableMainThreadChecker = "YES"
      launchStyle = "0"
      useCustomWorkingDirectory = "NO"
      ignoresPersistentStateOnLaunch = "NO"
      debugDocumentVersioning = "YES"
      stopOnEveryUBSanitizerIssue = "YES"
      debugServiceExtension = "internal"
      allowLocationSimulation = "YES">
      <BuildableProductRunnable
         runnableDebuggingMode = "0">
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "F8458A66206555D600629214"
            BuildableName = "Godzippa Example"
            BlueprintName = "Godzippa Example"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </BuildableProductRunnable>
      <AdditionalOptions>
      </AdditionalOptions>
   </LaunchAction>
   <ProfileAction
      buildConfiguration = "Release"
      shouldUseLaunchSchemeArgsEnv = "YES"
      savedToolIdentifier = ""
      useCustomWorkingDirectory = "NO"
      debugDocumentVersioning = "YES">
      <BuildableProductRunnable
         runnableDebuggingMode = "0">
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "F8458A66206555D600629214"
            BuildableName = "Godzippa Example"
            BlueprintName = "Godzippa Example"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </BuildableProductRunnable>
   </ProfileAction>
   <AnalyzeAction
      buildConfiguration = "Debug">
   </AnalyzeAction>
   <ArchiveAction
      buildConfiguration = "Release"
      revealArchiveInOrganizer = "YES">
   </ArchiveAction>
</Scheme>


================================================
FILE: Godzippa.xcodeproj/xcshareddata/xcschemes/Godzippa iOS.xcscheme
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
   LastUpgradeVersion = "1020"
   version = "1.3">
   <BuildAction
      parallelizeBuildables = "YES"
      buildImplicitDependencies = "YES">
      <BuildActionEntries>
         <BuildActionEntry
            buildForTesting = "YES"
            buildForRunning = "YES"
            buildForProfiling = "YES"
            buildForArchiving = "YES"
            buildForAnalyzing = "YES">
            <BuildableReference
               BuildableIdentifier = "primary"
               BlueprintIdentifier = "4320A83D1BB2002C00AE91E2"
               BuildableName = "Godzippa.framework"
               BlueprintName = "Godzippa iOS"
               ReferencedContainer = "container:Godzippa.xcodeproj">
            </BuildableReference>
         </BuildActionEntry>
      </BuildActionEntries>
   </BuildAction>
   <TestAction
      buildConfiguration = "Debug"
      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
      shouldUseLaunchSchemeArgsEnv = "YES">
      <Testables>
         <TestableReference
            skipped = "NO">
            <BuildableReference
               BuildableIdentifier = "primary"
               BlueprintIdentifier = "F80740BB2065536300107A43"
               BuildableName = "Godzippa iOS Tests.xctest"
               BlueprintName = "Godzippa iOS Tests"
               ReferencedContainer = "container:Godzippa.xcodeproj">
            </BuildableReference>
         </TestableReference>
      </Testables>
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A83D1BB2002C00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa iOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
      <AdditionalOptions>
      </AdditionalOptions>
   </TestAction>
   <LaunchAction
      buildConfiguration = "Debug"
      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
      launchStyle = "0"
      useCustomWorkingDirectory = "NO"
      ignoresPersistentStateOnLaunch = "NO"
      debugDocumentVersioning = "YES"
      debugServiceExtension = "internal"
      allowLocationSimulation = "YES">
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A83D1BB2002C00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa iOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
      <AdditionalOptions>
      </AdditionalOptions>
   </LaunchAction>
   <ProfileAction
      buildConfiguration = "Release"
      shouldUseLaunchSchemeArgsEnv = "YES"
      savedToolIdentifier = ""
      useCustomWorkingDirectory = "NO"
      debugDocumentVersioning = "YES">
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A83D1BB2002C00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa iOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
   </ProfileAction>
   <AnalyzeAction
      buildConfiguration = "Debug">
   </AnalyzeAction>
   <ArchiveAction
      buildConfiguration = "Release"
      revealArchiveInOrganizer = "YES">
   </ArchiveAction>
</Scheme>


================================================
FILE: Godzippa.xcodeproj/xcshareddata/xcschemes/Godzippa macOS.xcscheme
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
   LastUpgradeVersion = "1020"
   version = "1.3">
   <BuildAction
      parallelizeBuildables = "YES"
      buildImplicitDependencies = "YES">
      <BuildActionEntries>
         <BuildActionEntry
            buildForTesting = "YES"
            buildForRunning = "YES"
            buildForProfiling = "YES"
            buildForArchiving = "YES"
            buildForAnalyzing = "YES">
            <BuildableReference
               BuildableIdentifier = "primary"
               BlueprintIdentifier = "4320A8271BB1FEDB00AE91E2"
               BuildableName = "Godzippa.framework"
               BlueprintName = "Godzippa macOS"
               ReferencedContainer = "container:Godzippa.xcodeproj">
            </BuildableReference>
         </BuildActionEntry>
      </BuildActionEntries>
   </BuildAction>
   <TestAction
      buildConfiguration = "Debug"
      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
      shouldUseLaunchSchemeArgsEnv = "YES">
      <Testables>
         <TestableReference
            skipped = "NO">
            <BuildableReference
               BuildableIdentifier = "primary"
               BlueprintIdentifier = "F807409F2065508E00107A43"
               BuildableName = "Godzippa macOS Tests.xctest"
               BlueprintName = "Godzippa macOS Tests"
               ReferencedContainer = "container:Godzippa.xcodeproj">
            </BuildableReference>
         </TestableReference>
      </Testables>
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A8271BB1FEDB00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa macOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
      <AdditionalOptions>
      </AdditionalOptions>
   </TestAction>
   <LaunchAction
      buildConfiguration = "Debug"
      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
      launchStyle = "0"
      useCustomWorkingDirectory = "NO"
      ignoresPersistentStateOnLaunch = "NO"
      debugDocumentVersioning = "YES"
      debugServiceExtension = "internal"
      allowLocationSimulation = "YES">
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A8271BB1FEDB00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa macOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
      <AdditionalOptions>
      </AdditionalOptions>
   </LaunchAction>
   <ProfileAction
      buildConfiguration = "Release"
      shouldUseLaunchSchemeArgsEnv = "YES"
      savedToolIdentifier = ""
      useCustomWorkingDirectory = "NO"
      debugDocumentVersioning = "YES">
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A8271BB1FEDB00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa macOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
   </ProfileAction>
   <AnalyzeAction
      buildConfiguration = "Debug">
   </AnalyzeAction>
   <ArchiveAction
      buildConfiguration = "Release"
      revealArchiveInOrganizer = "YES">
   </ArchiveAction>
</Scheme>


================================================
FILE: Godzippa.xcodeproj/xcshareddata/xcschemes/Godzippa watchOS.xcscheme
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
   LastUpgradeVersion = "1020"
   version = "1.3">
   <BuildAction
      parallelizeBuildables = "YES"
      buildImplicitDependencies = "YES">
      <BuildActionEntries>
         <BuildActionEntry
            buildForTesting = "YES"
            buildForRunning = "YES"
            buildForProfiling = "YES"
            buildForArchiving = "YES"
            buildForAnalyzing = "YES">
            <BuildableReference
               BuildableIdentifier = "primary"
               BlueprintIdentifier = "4320A84D1BB2030C00AE91E2"
               BuildableName = "Godzippa.framework"
               BlueprintName = "Godzippa watchOS"
               ReferencedContainer = "container:Godzippa.xcodeproj">
            </BuildableReference>
         </BuildActionEntry>
      </BuildActionEntries>
   </BuildAction>
   <TestAction
      buildConfiguration = "Debug"
      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
      shouldUseLaunchSchemeArgsEnv = "YES">
      <Testables>
         <TestableReference
            skipped = "NO">
            <BuildableReference
               BuildableIdentifier = "primary"
               BlueprintIdentifier = "F80740C92065536400107A43"
               BuildableName = "Godzippa watchOS Tests.xctest"
               BlueprintName = "Godzippa watchOS Tests"
               ReferencedContainer = "container:Godzippa.xcodeproj">
            </BuildableReference>
         </TestableReference>
      </Testables>
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A84D1BB2030C00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa watchOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
      <AdditionalOptions>
      </AdditionalOptions>
   </TestAction>
   <LaunchAction
      buildConfiguration = "Debug"
      selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
      selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
      launchStyle = "0"
      useCustomWorkingDirectory = "NO"
      ignoresPersistentStateOnLaunch = "NO"
      debugDocumentVersioning = "YES"
      debugServiceExtension = "internal"
      allowLocationSimulation = "YES">
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A84D1BB2030C00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa watchOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
      <AdditionalOptions>
      </AdditionalOptions>
   </LaunchAction>
   <ProfileAction
      buildConfiguration = "Release"
      shouldUseLaunchSchemeArgsEnv = "YES"
      savedToolIdentifier = ""
      useCustomWorkingDirectory = "NO"
      debugDocumentVersioning = "YES">
      <MacroExpansion>
         <BuildableReference
            BuildableIdentifier = "primary"
            BlueprintIdentifier = "4320A84D1BB2030C00AE91E2"
            BuildableName = "Godzippa.framework"
            BlueprintName = "Godzippa watchOS"
            ReferencedContainer = "container:Godzippa.xcodeproj">
         </BuildableReference>
      </MacroExpansion>
   </ProfileAction>
   <AnalyzeAction
      buildConfiguration = "Debug">
   </AnalyzeAction>
   <ArchiveAction
      buildConfiguration = "Release"
      revealArchiveInOrganizer = "YES">
   </ArchiveAction>
</Scheme>


================================================
FILE: Godzippa.xcworkspace/contents.xcworkspacedata
================================================
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
   version = "1.0">
   <FileRef
      location = "group:Godzippa.playground">
   </FileRef>
   <FileRef
      location = "group:Godzippa.xcodeproj">
   </FileRef>
</Workspace>


================================================
FILE: Godzippa.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>IDEDidComputeMac32BitWarning</key>
	<true/>
</dict>
</plist>


================================================
FILE: LICENSE
================================================
Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.


================================================
FILE: README.md
================================================
# Godzippa!

[![Build Status][build status badge]][build status]
[![License][license badge]][license]
[![Swift Version][swift version badge]][swift version]
![Cocoapods platforms][cocoapods platforms badge]
[![Cocoapods compatible][cocoapods badge]][cocoapods]
[![Carthage compatible][carthage badge]][carthage]

**gzip Compression / Decompression Category for NSData & NSFileManager**

> This library is no longer being maintained.
> As of iOS 13+ and macOS 10.15+,
> Foundation provides equivalent functionality through APIs like
> [`compressed(using:)`](https://developer.apple.com/documentation/foundation/nsdata/3174960-compressed)
> and [`decompressed(using:)`](https://developer.apple.com/documentation/foundation/nsdata/3174961-decompressed).

### CocoaPods

You can install `Godzippa` via CocoaPods,
by adding the following line to your `Podfile`:

```ruby
pod 'Godzippa', '~> 2.1.1'
```

Run the `pod install` command to download the library
and integrate it into your Xcode project.

### Carthage

To use `Godzippa` in your Xcode project using Carthage,
specify it in `Cartfile`:

```
github "mattt/Godzippa" ~> 2.1.1
```

Then run the `carthage update` command to build the framework,
and drag the built Godzippa.framework into your Xcode project.

### Manual Installation

Copy the `.h` and `.m` files in the `Sources` directory to your project.
In the "Link Binary With Libraries" Build Phase of your Target,
add `libz.dylib`.

## Usage

### Objective-C

#### NSData

```objective-c
NSData *originalData = [@"Look out! It's..." dataUsingEncoding:NSUTF8StringEncoding];
NSData *compressedData = [originalData dataByGZipCompressingWithError:nil];
NSData *decompressedData = [compressedData dataByGZipDecompressingDataWithError:nil];
NSLog(@"%@ %@", [NSString stringWithUTF8String:[decompressedData bytes]], @"Godzippa!");
```

#### NSFileManager

```objective-c
NSFileManager *fileManager = [NSFileManager defaultManager];
NSURL *file = [NSURL fileURLWithPath:@"/path/to/file.txt"];
NSError *error = nil;

[fileManager GZipCompressFile:file
        writingContentsToFile:[file URLByAppendingPathExtension:@"gz"]
                        error:&error];
```

### Swift

#### NSData

```swift
let originalString = "Look out! It's Godzippa!"
let originalData = originalString.data(using: .utf8)! as NSData
let compressedData = try! originalData.gzipCompressed() as NSData
let decompressedData = try! compressedData.gzipDecompressed()
let decompressedString = String(data: decompressedData, encoding: .utf8)
```

#### FileManager

```swift
let fileManager = FileManager.default
let textFile = URL(fileURLWithPath: "/path/to/file.txt")
let gzipFile = textFile.appendingPathExtension("gz")
try fileManager.gzipCompressFile(at: textFile, to: gzipFile)
```

## Contact

Mattt ([@mattt](http://twitter.com/mattt))

## License

Godzippa! is available under the MIT license.
See the LICENSE file for more info.

[build status]: https://travis-ci.org/mattt/Godzippa
[build status badge]: https://api.travis-ci.org/mattt/Godzippa.svg?branch=master
[license]: https://opensource.org/licenses/MIT
[license badge]: https://img.shields.io/cocoapods/l/Godzippa.svg
[swift version]: https://swift.org/download/
[swift version badge]: https://img.shields.io/badge/swift%20version-4.0+-orange.svg
[cocoapods platforms badge]: https://img.shields.io/cocoapods/p/Godzippa.svg
[cocoapods]: https://cocoapods.org/pods/Godzippa
[cocoapods badge]: https://img.shields.io/cocoapods/v/Godzippa.svg
[carthage]: https://github.com/Carthage/Carthage
[carthage badge]: https://img.shields.io/badge/Carthage-compatible-4BC51D.svg


================================================
FILE: Sources/Godzippa.h
================================================
// Godzippa.h
//
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

#import "GodzippaDefines.h"
#import "NSData+Godzippa.h"
#import "NSFileManager+Godzippa.h"


================================================
FILE: Sources/GodzippaDefines.h
================================================
// Godzippa.h
//
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

#ifndef GodzippaDefines_h
#define GodzippaDefines_h

#if __has_feature(nullability)
    #define __GODZIPPA_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
    #define __GODZIPPA_ASSUME_NONNULL_END   NS_ASSUME_NONNULL_END
    #define __GODZIPPA_NULLABLE nullable
#else
    #define __GODZIPPA_ASSUME_NONNULL_BEGIN
    #define __GODZIPPA_ASSUME_NONNULL_END
    #define __GODZIPPA_NULLABLE
#endif

#if defined(__has_attribute)
    #if __has_attribute(swift_name)
        #define __GODZIPPA_SWIFT_NAME(X) __attribute__((swift_name(#X)))
    #else
        #define __GODZIPPA_SWIFT_NAME(X)
    #endif
#endif
#endif /* GodzippaDefines_h */


================================================
FILE: Sources/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>CFBundleDevelopmentRegion</key>
        <string>en</string>
        <key>CFBundleExecutable</key>
        <string>$(EXECUTABLE_NAME)</string>
        <key>CFBundleIdentifier</key>
        <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleName</key>
        <string>$(PRODUCT_NAME)</string>
        <key>CFBundlePackageType</key>
        <string>FMWK</string>
        <key>CFBundleShortVersionString</key>
        <string>1.0</string>
        <key>CFBundleSignature</key>
        <string>????</string>
        <key>CFBundleVersion</key>
        <string>$(CURRENT_PROJECT_VERSION)</string>
        <key>NSPrincipalClass</key>
        <string></string>
    </dict>
</plist>


================================================
FILE: Sources/NSData+Godzippa.h
================================================
// NSData+Godzippa.h
//
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

#import <Foundation/Foundation.h>

#import "GodzippaDefines.h"

__GODZIPPA_ASSUME_NONNULL_BEGIN

/**
 Godzippa provides a category on `NSData` to inflate and deflate data using gzip compression.
 */
@interface NSData (Godzippa)

///------------------
/// @name Compressing
///------------------

/**
 Returns the deflated of the receiver using gzip compression.

 @param error The error that occurred while attempting to deflate the receiver.

 @return The compressed data.
 */
- (__GODZIPPA_NULLABLE NSData *)dataByGZipCompressingWithError:(NSError * __autoreleasing *)error __GODZIPPA_SWIFT_NAME(gzipCompressed());

/**
 Returns the deflated of the receiver using gzip compression with the specified zlib values for compression level, window size, internal memory allocation, and strategy.

 @param level The compression level must be Z_DEFAULT_COMPRESSION, or between 0 and 9: 1 gives best speed, 9 gives best compression, 0 gives no compression at all (the input data is simply copied a block at a time). Z_DEFAULT_COMPRESSION requests a default compromise between speed and compression (currently equivalent to level 6).
 @param windowBits The base two logarithm of the window size (the size of the history buffer). Larger values of this parameter result in better compression at the expense of memory usage.
 @param memLevel Specifies how much memory should be allocated for the internal compression state. memLevel=1 uses minimum memory but is slow and reduces compression ratio; memLevel=9 uses maximum memory for optimal speed. The default value is 8. See zconf.h for total memory usage as a function of windowBits and memLevel.
 @param strategy Used to tune the compression algorithm. Use the value Z_DEFAULT_STRATEGY for normal data, Z_FILTERED for data produced by a filter (or predictor), Z_HUFFMAN_ONLY to force Huffman encoding only (no string match), or Z_RLE to limit match distances to one (run-length encoding). Filtered data consists mostly of small values with a somewhat random distribution. In this case, the compression algorithm is tuned to compress them better. The effect of Z_FILTERED is to force more Huffman coding and less string matching; it is somewhat intermediate between Z_DEFAULT_STRATEGY and Z_HUFFMAN_ONLY. Z_RLE is designed to be almost as fast as Z_HUFFMAN_ONLY, but give better compression for PNG image data. The strategy parameter only affects the compression ratio but not the correctness of the compressed output even if it is not set appropriately. Z_FIXED prevents the use of dynamic Huffman codes, allowing for a simpler decoder for special applications.
 @param error The error that occurred while attempting to deflate the receiver.

 @return The compressed data.
 */
- (__GODZIPPA_NULLABLE NSData *)dataByGZipCompressingAtLevel:(int)level
                                                  windowSize:(int)windowBits
                                                 memoryLevel:(int)memLevel
                                                    strategy:(int)strategy
                                                       error:(NSError * __autoreleasing *)error
    __GODZIPPA_SWIFT_NAME(gzipCompressed(at:windowSize:memoryLevel:strategy:));

///--------------------
/// @name Decompressing
///--------------------

/**
 Returns the inflated of the receiver using gzip compression.

 @param error The error that occurred while attempting to inflate the receiver.

 @return The decompressed data.
 */
- (__GODZIPPA_NULLABLE NSData *)dataByGZipDecompressingDataWithError:(NSError * __autoreleasing *)error
    __GODZIPPA_SWIFT_NAME(gzipDecompressed());

/**
 Returns the inflated of the receiver using gzip compression with the specified zlib value for window size.

 @param windowBits The base two logarithm of the maximum window size (the size of the history buffer). Must be greater than or equal to the windowBits value provided to dataByGZipCompressingAtLevel:windowSize:memoryLevel:strategy:error: while compressing.
 @param error The error that occurred while attempting to inflate the receiver.

 @return The decompressed data.
 */
- (__GODZIPPA_NULLABLE NSData *)dataByGZipDecompressingDataWithWindowSize:(int)windowBits
                                                                    error:(NSError * __autoreleasing *)error
    __GODZIPPA_SWIFT_NAME(gzipDecompressed(windowSize:));

///---------------------------------------------
/// @name Determining Whether Data is Compressed
///---------------------------------------------

/**
 Whether the receiver contains gzip compressed data.

 This method checks the first three bytes for the gzip signature `1F 8B 08`.
 */
@property (readonly, nonatomic, getter=isGzipCompressed) BOOL gzipCompressed;

@end

///----------------
/// @name Constants
///----------------

/**
 ### Constants

 `GodzippaZlibErrorDomain`
 Godzippa errors. Error codes for `GodzippaZlibErrorDomain` correspond to status codes from zlib.
 */
extern NSString * const GodzippaZlibErrorDomain;

__GODZIPPA_ASSUME_NONNULL_END


================================================
FILE: Sources/NSData+Godzippa.m
================================================
// NSData+Godzippa.m
//
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

#import <zlib.h>
#import "NSData+Godzippa.h"

static const int kGodzippaChunkSize = 1024;
static const int kGodzippaDefaultMemoryLevel = 8;
static const int kGodzippaDefaultWindowBits = 15;
static const int kGodzippaDefaultWindowBitsWithGZipHeader = 16 + kGodzippaDefaultWindowBits;

NSString * const GodzippaZlibErrorDomain = @"com.godzippa.zlib.error";

@implementation NSData (Godzippa)

- (NSData *)dataByGZipCompressingWithError:(NSError * __autoreleasing *)error {
    return [self dataByGZipCompressingAtLevel:Z_DEFAULT_COMPRESSION windowSize:kGodzippaDefaultWindowBitsWithGZipHeader memoryLevel:kGodzippaDefaultMemoryLevel strategy:Z_DEFAULT_STRATEGY error:error];
}

- (NSData *)dataByGZipCompressingAtLevel:(int)level
                              windowSize:(int)windowBits
                             memoryLevel:(int)memLevel
                                strategy:(int)strategy
                                   error:(NSError * __autoreleasing *)error
{
	if ([self length] == 0) {
		return self;
	}

    z_stream zStream;
    bzero(&zStream, sizeof(z_stream));

    zStream.zalloc = Z_NULL;
    zStream.zfree = Z_NULL;
    zStream.opaque = Z_NULL;
    zStream.next_in = (Bytef *)[self bytes];
    zStream.avail_in = (unsigned int)[self length];
    zStream.total_out = 0;

    OSStatus status;
    if ((status = deflateInit2(&zStream, level, Z_DEFLATED, windowBits, memLevel, strategy)) != Z_OK) {
        if (error) {
            NSDictionary *userInfo = [NSDictionary dictionaryWithObject:NSLocalizedString(@"Failed deflateInit", nil) forKey:NSLocalizedDescriptionKey];
            *error = [[NSError alloc] initWithDomain:GodzippaZlibErrorDomain code:status userInfo:userInfo];
        }

        return nil;
    }

    NSMutableData *compressedData = [NSMutableData dataWithLength:kGodzippaChunkSize];

    do {
        if ((status == Z_BUF_ERROR) || (zStream.total_out == [compressedData length])) {
            [compressedData increaseLengthBy:kGodzippaChunkSize];
        }

        zStream.next_out = (Bytef*)[compressedData mutableBytes] + zStream.total_out;
        zStream.avail_out = (unsigned int)([compressedData length] - zStream.total_out);

        status = deflate(&zStream, Z_FINISH);
    } while ((status == Z_OK) || (status == Z_BUF_ERROR));

    deflateEnd(&zStream);

    if ((status != Z_OK) && (status != Z_STREAM_END)) {
        if (error) {
            NSDictionary *userInfo = [NSDictionary dictionaryWithObject:NSLocalizedString(@"Error deflating payload", nil) forKey:NSLocalizedDescriptionKey];
            *error = [[NSError alloc] initWithDomain:GodzippaZlibErrorDomain code:status userInfo:userInfo];
        }

        return nil;
    }

    [compressedData setLength:zStream.total_out];

    return compressedData;
}

- (NSData *)dataByGZipDecompressingDataWithError:(NSError * __autoreleasing *)error {
    return [self dataByGZipDecompressingDataWithWindowSize:kGodzippaDefaultWindowBitsWithGZipHeader error:error];
}

- (NSData *)dataByGZipDecompressingDataWithWindowSize:(int)windowBits
                                                error:(NSError * __autoreleasing *)error
{
    if ([self length] == 0) {
        return self;
    }

    z_stream zStream;
    bzero(&zStream, sizeof(z_stream));

    zStream.zalloc = Z_NULL;
    zStream.zfree = Z_NULL;
    zStream.opaque = Z_NULL;
    zStream.avail_in = (unsigned int)[self length];
    zStream.next_in = (Byte *)[self bytes];

    OSStatus status;
    if ((status = inflateInit2(&zStream, windowBits)) != Z_OK) {
        if (error) {
            NSDictionary *userInfo = [NSDictionary dictionaryWithObject:NSLocalizedString(@"Failed inflateInit", nil) forKey:NSLocalizedDescriptionKey];
            *error = [[NSError alloc] initWithDomain:GodzippaZlibErrorDomain code:status userInfo:userInfo];
        }

        return nil;
    }

    NSUInteger estimatedLength = (NSUInteger)((double)[self length] * 1.5);
    NSMutableData *decompressedData = [NSMutableData dataWithLength:estimatedLength];

    do {
        if ((status == Z_BUF_ERROR) || (zStream.total_out == [decompressedData length])) {
            [decompressedData increaseLengthBy:estimatedLength / 2];
        }

        zStream.next_out = (Bytef*)[decompressedData mutableBytes] + zStream.total_out;
        zStream.avail_out = (unsigned int)([decompressedData length] - zStream.total_out);

        status = inflate(&zStream, Z_FINISH);
    } while ((status == Z_OK) || (status == Z_BUF_ERROR));

    inflateEnd(&zStream);

    if ((status != Z_OK) && (status != Z_STREAM_END)) {
        if (error) {
            NSDictionary *userInfo = [NSDictionary dictionaryWithObject:NSLocalizedString(@"Error inflating payload", nil) forKey:NSLocalizedDescriptionKey];
            *error = [[NSError alloc] initWithDomain:GodzippaZlibErrorDomain code:status userInfo:userInfo];
        }

        return nil;
    }

    [decompressedData setLength:zStream.total_out];

    return decompressedData;
}

- (BOOL)isGzipCompressed {
    if (self.length < 3) {
        return NO;
    }

    NSData *subdata = [self subdataWithRange:NSMakeRange(0, 3)];
    const Byte *bytes = (const Byte *)subdata.bytes;
    return bytes[0] == 0x1f && bytes[1] == 0x8b && bytes[2] == 0x08;
}

@end


================================================
FILE: Sources/NSFileManager+Godzippa.h
================================================
// NSFileManager+Godzippa.h
//
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

#import <Foundation/Foundation.h>

#import "GodzippaDefines.h"

__GODZIPPA_ASSUME_NONNULL_BEGIN

/**
 Godzippa provides a category on `NSFileManager` to inflate and deflate files using gzip compression.
 */
@interface NSFileManager (Godzippa)

///------------------
/// @name Compressing
///------------------

/**
 Compresses the specified file, writing data to a destination file.

 @param sourceFile The file to be compressed.
 @param destinationFile The destination of the compressed file.
 @param error The error that occurred while attempting to compress the source file, if any.

 @return Whether the compressed file contents were written successfully.
 */
- (BOOL)GZipCompressFile:(NSURL *)sourceFile
   writingContentsToFile:(NSURL *)destinationFile
                   error:(NSError * __autoreleasing *)error
    __GODZIPPA_SWIFT_NAME(gzipCompressFile(at:to:));

/**
 Compresses the specified file at a particular level, writing data to a destination file.

 @param sourceFile The file to be compressed.
 @param destinationFile The destination of the compressed file.
 @param level The compression level must be Z_DEFAULT_COMPRESSION, or between 0 and 9: 1 gives best speed, 9 gives best compression, 0 gives no compression at all (the input data is simply copied a block at a time). Z_DEFAULT_COMPRESSION requests a default compromise between speed and compression (currently equivalent to level 6).
 @param error The error that occurred while attempting to compress the source file, if any.

 @return Whether the compressed file contents were written successfully.
 */
- (BOOL)GZipCompressFile:(NSURL *)sourceFile
   writingContentsToFile:(NSURL *)destinationFile
                 atLevel:(int)level
                   error:(NSError *__autoreleasing *)error
    __GODZIPPA_SWIFT_NAME(gzipCompressFile(at:to:level:));

///--------------------
/// @name Decompressing
///--------------------

/**
 Decompresses the specified Gzip-compressed file, writing data to a destination file.

 @param sourceFile The compressed file.
 @param destinationFile The destination for the decompressed file.
 */
- (BOOL)GZipDecompressFile:(NSURL *)sourceFile
     writingContentsToFile:(NSURL *)destinationFile
                     error:(NSError * __autoreleasing *)error
    __GODZIPPA_SWIFT_NAME(gzipDecompressFile(at:to:));

@end

__GODZIPPA_ASSUME_NONNULL_END


================================================
FILE: Sources/NSFileManager+Godzippa.m
================================================
// NSFileManager+Godzippa.m
//
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

#import <zlib.h>

#import "NSFileManager+Godzippa.h"

static const int kGodzippaChunkSize = 4096;

@implementation NSFileManager (Godzippa)

#pragma mark - Compressing

- (BOOL)GZipCompressFile:(NSURL *)sourceFile
   writingContentsToFile:(NSURL *)destinationFile
                   error:(NSError * __autoreleasing *)error
{
    return [self GZipCompressFile:sourceFile writingContentsToFile:destinationFile atLevel:Z_DEFAULT_COMPRESSION error:error];
}

- (BOOL)GZipCompressFile:(NSURL *)sourceFile
   writingContentsToFile:(NSURL *)destinationFile
                 atLevel:(int)level
                   error:(NSError *__autoreleasing *)error
{
    NSParameterAssert(sourceFile);
    NSParameterAssert(destinationFile);

    NSDictionary *sourceAttributes = [self attributesOfItemAtPath:sourceFile.path error:error];
    if (!sourceAttributes || [sourceAttributes[NSFileSize] unsignedIntegerValue] == 0) {
        return NO;
    }

    const char *mode = NULL;
    if (level == Z_DEFAULT_COMPRESSION) {
        mode = "w";
    } else {
        mode = [[NSString stringWithFormat:@"w%d", level] UTF8String];
    }

    NSFileHandle *sourceFileHandle = [NSFileHandle fileHandleForReadingFromURL:sourceFile error:error];
    {
        gzFile output = gzopen([destinationFile.path UTF8String], mode);
        {
            int numberOfBytesWritten = 0;

            do {
                @autoreleasepool {
                    NSData *data = [sourceFileHandle readDataOfLength:kGodzippaChunkSize];
                    numberOfBytesWritten = gzwrite(output, data.bytes, (unsigned) data.length);
                }
            } while (numberOfBytesWritten == kGodzippaChunkSize);
        }
        gzclose(output);
    }
    [sourceFileHandle closeFile];

    return YES;
}


#pragma mark - Decompressing

- (BOOL)GZipDecompressFile:(NSURL *)sourceFile
     writingContentsToFile:(NSURL *)destinationFile
                     error:(NSError * __autoreleasing *)error
{
    NSParameterAssert(sourceFile);
    NSParameterAssert(destinationFile);

    NSDictionary *sourceAttributes = [self attributesOfItemAtPath:sourceFile.path error:error];
    if (!sourceAttributes || [sourceAttributes[NSFileSize] unsignedIntegerValue] == 0) {
        return NO;
    }

    if (![[NSFileManager defaultManager] fileExistsAtPath:destinationFile.path]) {
        if (![[NSFileManager defaultManager] createFileAtPath:destinationFile.path contents:nil attributes:nil]) {
            return NO;
        }
    }

    NSFileHandle *destinationFileHandle = [NSFileHandle fileHandleForWritingAtPath:destinationFile.path];
    {
        gzFile input = gzopen([sourceFile.path UTF8String], "r");
        {
            int numberOfBytesRead = 0;

            do {
                @autoreleasepool {
                    NSMutableData *mutableData = [NSMutableData dataWithLength:kGodzippaChunkSize];
                    numberOfBytesRead = gzread(input, mutableData.mutableBytes, kGodzippaChunkSize);
                    [destinationFileHandle writeData:[mutableData subdataWithRange:NSMakeRange(0, (NSUInteger)numberOfBytesRead)]];
                }
            } while (numberOfBytesRead == kGodzippaChunkSize);
        }
        gzclose(input);
    }
    [destinationFileHandle synchronizeFile];
    [destinationFileHandle closeFile];

    return YES;
}

@end


================================================
FILE: Tests/GodzippaDataTestCase.m
================================================
// GodzippaTest.h
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

#import "Godzippa.h"

#import <XCTest/XCTest.h>

@interface GodzippaDataTestCase : XCTestCase
@property (nonatomic, copy) NSData *data;
@end

@implementation GodzippaDataTestCase

- (void)setUp {
    [super setUp];

    self.data = [@"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." dataUsingEncoding:NSUTF8StringEncoding];
}

#pragma mark -

- (void)testCompressionOfData {
    NSError *error = nil;
	[self.data dataByGZipCompressingWithError:&error];

	XCTAssertNil(error, @"Error compressing data: %@", [error localizedDescription]);
}

- (void)testCompressionOfEmptyDataIsEmpty {
	NSData *compressedData = [[NSData data] dataByGZipCompressingWithError:nil];
    XCTAssertTrue([[NSData data] isEqualToData:compressedData], @"compression of empty data is not empty");
}

- (void)testDecompressionOfCompressedData {
    NSError *error = nil;
    [[self.data dataByGZipCompressingWithError:&error] dataByGZipDecompressingDataWithError:&error];

	XCTAssertNil(error, @"Error compressing data: %@", [error localizedDescription]);
}

- (void)testEqualityForDecompressionOfCompressedData {
    NSData *compressedData = [self.data dataByGZipCompressingWithError:nil];
	NSData *decompressedData = [compressedData dataByGZipDecompressingDataWithError:nil];

    XCTAssertNotNil(self.data, @"compressed data is nil");
	XCTAssertTrue([self.data isEqualToData:decompressedData], @"decompression of compressed data not same as original");
}

- (void)testDetectionOfCompressedData {
    NSData *compressedData = [self.data dataByGZipCompressingWithError:nil];

    XCTAssertFalse(self.data.isGzipCompressed, @"original data shouldn't be identified as gzip compressed");
    XCTAssertTrue(compressedData.isGzipCompressed, @"compressed data should be identified as gzip compressed");
}

@end


================================================
FILE: Tests/GodzippaFileManagerTestCase.m
================================================
// GodzippaFileManagerTestCase.m
// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included in
// all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.

#import "Godzippa.h"

#import <XCTest/XCTest.h>

@interface GodzippaFileManagerTestCase : XCTestCase
@property (nonatomic, copy) NSData *data;
@property (nonatomic, copy) NSURL *compressedFileURL;
@property (nonatomic, copy) NSURL *decompressedFileURL;
@end

@implementation GodzippaFileManagerTestCase

- (void)setUp {
    [super setUp];

    self.compressedFileURL = [NSURL fileURLWithPath:[NSTemporaryDirectory() stringByAppendingString:@"compressed.gzip"]];
    self.decompressedFileURL = [NSURL fileURLWithPath:[NSTemporaryDirectory() stringByAppendingString:@"decompressed"]];

    self.data = [@"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." dataUsingEncoding:NSUTF8StringEncoding];
}

- (void)tearDown {
    if (self.compressedFileURL && [[NSFileManager defaultManager] fileExistsAtPath:self.compressedFileURL.path]) {
        [[NSFileManager defaultManager] removeItemAtURL:self.compressedFileURL error:nil];
    }

    if (self.decompressedFileURL && [[NSFileManager defaultManager] fileExistsAtPath:self.decompressedFileURL.path]) {
        [[NSFileManager defaultManager] removeItemAtURL:self.decompressedFileURL error:nil];
    }

    [super tearDown];
}

#pragma mark -

- (void)testCompressFile {
    [self.data writeToURL:self.decompressedFileURL atomically:YES];

    NSError *error = nil;
    [[NSFileManager defaultManager] GZipCompressFile:self.decompressedFileURL writingContentsToFile:self.compressedFileURL error:&error];
    XCTAssertNil(error, @"error should be nil");

    NSData *compressedData = [self.data dataByGZipCompressingWithError:nil];
    NSDictionary *compressedFileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:self.compressedFileURL.path error:nil];

    XCTAssertEqualObjects(@(compressedData.length), compressedFileAttributes[NSFileSize], @"compressed file size doesn't equal expected size");
    XCTAssertEqualObjects(compressedData, [NSData dataWithContentsOfURL:self.compressedFileURL], @"compressed data is not equal");
}

- (void)testDecompressFile {
    NSData *compressedData = [self.data dataByGZipCompressingWithError:nil];
    [compressedData writeToURL:self.compressedFileURL atomically:YES];

    NSError *error = nil;
    [[NSFileManager defaultManager] GZipDecompressFile:self.compressedFileURL writingContentsToFile:self.decompressedFileURL error:&error];
    XCTAssertNil(error, @"error should be nil");

    NSDictionary *decompressedFileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:self.decompressedFileURL.path error:nil];

    XCTAssertEqualObjects(@(self.data.length), decompressedFileAttributes[NSFileSize], @"decompressed file size doesn't equal expected size");
    XCTAssertEqualObjects(self.data, [NSData dataWithContentsOfURL:self.decompressedFileURL], @"decompressed data is not equal");
}

@end


================================================
FILE: Tests/Info.plist
================================================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>en</string>
	<key>CFBundleExecutable</key>
	<string>${EXECUTABLE_NAME}</string>
	<key>CFBundleIdentifier</key>
	<string>com.godzippa.zlib.error.${PRODUCT_NAME:rfc1034identifier}</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundlePackageType</key>
	<string>BNDL</string>
	<key>CFBundleShortVersionString</key>
	<string>1.0</string>
	<key>CFBundleSignature</key>
	<string>????</string>
	<key>CFBundleVersion</key>
	<string>1</string>
</dict>
</plist>
Download .txt
gitextract_ehd_00nb/

├── .gitattributes
├── .travis.yml
├── Example/
│   └── main.m
├── Godzippa.playground/
│   ├── Contents.swift
│   ├── Resources/
│   │   └── file.txt
│   ├── Sources/
│   │   └── fileSize.swift
│   └── contents.xcplayground
├── Godzippa.podspec
├── Godzippa.xcodeproj/
│   ├── project.pbxproj
│   ├── project.xcworkspace/
│   │   └── contents.xcworkspacedata
│   └── xcshareddata/
│       └── xcschemes/
│           ├── Godzippa Example.xcscheme
│           ├── Godzippa iOS.xcscheme
│           ├── Godzippa macOS.xcscheme
│           └── Godzippa watchOS.xcscheme
├── Godzippa.xcworkspace/
│   ├── contents.xcworkspacedata
│   └── xcshareddata/
│       └── IDEWorkspaceChecks.plist
├── LICENSE
├── README.md
├── Sources/
│   ├── Godzippa.h
│   ├── GodzippaDefines.h
│   ├── Info.plist
│   ├── NSData+Godzippa.h
│   ├── NSData+Godzippa.m
│   ├── NSFileManager+Godzippa.h
│   └── NSFileManager+Godzippa.m
└── Tests/
    ├── GodzippaDataTestCase.m
    ├── GodzippaFileManagerTestCase.m
    └── Info.plist
Condensed preview — 28 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (123K chars).
[
  {
    "path": ".gitattributes",
    "chars": 112,
    "preview": "*.playground/** linguist-detectable=false\n*.podspec linguist-detectable=false\n*.h linguist-language=Objective-C\n"
  },
  {
    "path": ".travis.yml",
    "chars": 179,
    "preview": "osx_image: xcode10.2\nlanguage: objective-c\nxcode_project: Godzippa.xcodeproj\nxcode_scheme: Godzippa macOS\ndeploy:\n  prov"
  },
  {
    "path": "Example/main.m",
    "chars": 1673,
    "preview": "// main.m\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted, free of charge, to any"
  },
  {
    "path": "Godzippa.playground/Contents.swift",
    "chars": 779,
    "preview": "import Foundation\nimport Godzippa\n\nlet originalString = \"Look out! It's Godzippa!\"\nlet originalData = originalString.dat"
  },
  {
    "path": "Godzippa.playground/Resources/file.txt",
    "chars": 1215,
    "preview": "Commodo officia sit eu aliquip qui. Laborum id mollit labore dolore fugiat labore laborum duis aute reprehenderit. Velit"
  },
  {
    "path": "Godzippa.playground/Sources/fileSize.swift",
    "chars": 775,
    "preview": "import Foundation\n\npublic func fileSize(of file: URL) throws -> String {\n    let fileManager = FileManager.default\n\n    "
  },
  {
    "path": "Godzippa.playground/contents.xcplayground",
    "chars": 167,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<playground version='5.0' target-platform='macos'>\n    <timeline"
  },
  {
    "path": "Godzippa.podspec",
    "chars": 651,
    "preview": "Pod::Spec.new do |s|\n  s.name     = 'Godzippa'\n  s.version  = '2.1.1'\n  s.license  = 'MIT'\n  s.summary  = 'GZip Compress"
  },
  {
    "path": "Godzippa.xcodeproj/project.pbxproj",
    "chars": 54075,
    "preview": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section *"
  },
  {
    "path": "Godzippa.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "chars": 135,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef"
  },
  {
    "path": "Godzippa.xcodeproj/xcshareddata/xcschemes/Godzippa Example.xcscheme",
    "chars": 3891,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"1020\"\n   version = \"1.3\">\n   <BuildAction\n      "
  },
  {
    "path": "Godzippa.xcodeproj/xcshareddata/xcschemes/Godzippa iOS.xcscheme",
    "chars": 3684,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"1020\"\n   version = \"1.3\">\n   <BuildAction\n      "
  },
  {
    "path": "Godzippa.xcodeproj/xcshareddata/xcschemes/Godzippa macOS.xcscheme",
    "chars": 3696,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"1020\"\n   version = \"1.3\">\n   <BuildAction\n      "
  },
  {
    "path": "Godzippa.xcodeproj/xcshareddata/xcschemes/Godzippa watchOS.xcscheme",
    "chars": 3708,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"1020\"\n   version = \"1.3\">\n   <BuildAction\n      "
  },
  {
    "path": "Godzippa.xcworkspace/contents.xcworkspacedata",
    "chars": 226,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"group:Godzippa.playg"
  },
  {
    "path": "Godzippa.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "chars": 238,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "LICENSE",
    "chars": 1073,
    "preview": "Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n\nPermission is hereby granted, free of charge, to any person obtaining "
  },
  {
    "path": "README.md",
    "chars": 3606,
    "preview": "# Godzippa!\n\n[![Build Status][build status badge]][build status]\n[![License][license badge]][license]\n[![Swift Version]["
  },
  {
    "path": "Sources/Godzippa.h",
    "chars": 1236,
    "preview": "// Godzippa.h\n//\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted, free of charge,"
  },
  {
    "path": "Sources/GodzippaDefines.h",
    "chars": 1774,
    "preview": "// Godzippa.h\n//\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted, free of charge,"
  },
  {
    "path": "Sources/Info.plist",
    "chars": 954,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  },
  {
    "path": "Sources/NSData+Godzippa.h",
    "chars": 6162,
    "preview": "// NSData+Godzippa.h\n//\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted, free of "
  },
  {
    "path": "Sources/NSData+Godzippa.m",
    "chars": 6397,
    "preview": "// NSData+Godzippa.m\n//\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted, free of "
  },
  {
    "path": "Sources/NSFileManager+Godzippa.h",
    "chars": 3518,
    "preview": "// NSFileManager+Godzippa.h\n//\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted, f"
  },
  {
    "path": "Sources/NSFileManager+Godzippa.m",
    "chars": 4492,
    "preview": "// NSFileManager+Godzippa.m\n//\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted, f"
  },
  {
    "path": "Tests/GodzippaDataTestCase.m",
    "chars": 3324,
    "preview": "// GodzippaTest.h\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted, free of charge"
  },
  {
    "path": "Tests/GodzippaFileManagerTestCase.m",
    "chars": 4374,
    "preview": "// GodzippaFileManagerTestCase.m\n// Copyright (c) 2012 – 2019 Mattt (http://mat.tt/)\n//\n// Permission is hereby granted,"
  },
  {
    "path": "Tests/Info.plist",
    "chars": 703,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/P"
  }
]

About this extraction

This page contains the full source code of the mattt/Godzippa GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 28 files (110.2 KB), approximately 32.4k tokens. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!