// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 46;
	objects = {

/* Begin PBXBuildFile section */
		145FC9A96DC34918913D15B3 /* libPods-PULL_osx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0962D31C804C41988B625DA3 /* libPods-PULL_osx.a */; };
		DC87A6F91525AEA3005A09B0 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DC87A6F81525AEA3005A09B0 /* Cocoa.framework */; };
		DC87A7031525AEA3005A09B0 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = DC87A7011525AEA3005A09B0 /* InfoPlist.strings */; };
		DC87A7051525AEA3005A09B0 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = DC87A7041525AEA3005A09B0 /* main.m */; };
		DC87A7091525AEA3005A09B0 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = DC87A7071525AEA3005A09B0 /* Credits.rtf */; };
		DC87A70C1525AEA3005A09B0 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = DC87A70B1525AEA3005A09B0 /* AppDelegate.m */; };
		DC87A70F1525AEA3005A09B0 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = DC87A70D1525AEA3005A09B0 /* MainMenu.xib */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		0962D31C804C41988B625DA3 /* libPods-PULL_osx.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-PULL_osx.a"; sourceTree = BUILT_PRODUCTS_DIR; };
		B513ABCA15C2902F8B3390BC /* Pods-PULL_osx.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PULL_osx.debug.xcconfig"; path = "Pods/Target Support Files/Pods-PULL_osx/Pods-PULL_osx.debug.xcconfig"; sourceTree = "<group>"; };
		D8E6A730A03A926AAD72CC7A /* Pods-PULL_osx.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PULL_osx.release.xcconfig"; path = "Pods/Target Support Files/Pods-PULL_osx/Pods-PULL_osx.release.xcconfig"; sourceTree = "<group>"; };
		DC28B92D15263ED00043126F /* LumberjackUser.bash */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = LumberjackUser.bash; path = Scripts/LumberjackUser.bash; sourceTree = SOURCE_ROOT; };
		DC87A6F41525AEA3005A09B0 /* PerUserLogLevels.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = PerUserLogLevels.app; sourceTree = BUILT_PRODUCTS_DIR; };
		DC87A6F81525AEA3005A09B0 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
		DC87A6FB1525AEA3005A09B0 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
		DC87A6FC1525AEA3005A09B0 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
		DC87A6FD1525AEA3005A09B0 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
		DC87A7001525AEA3005A09B0 /* PerUserLogLevels-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "PerUserLogLevels-Info.plist"; sourceTree = "<group>"; };
		DC87A7021525AEA3005A09B0 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DC87A7041525AEA3005A09B0 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
		DC87A7061525AEA3005A09B0 /* PerUserLogLevels-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "PerUserLogLevels-Prefix.pch"; sourceTree = "<group>"; };
		DC87A7081525AEA3005A09B0 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = "<group>"; };
		DC87A70A1525AEA3005A09B0 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
		DC87A70B1525AEA3005A09B0 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
		DC87A70E1525AEA3005A09B0 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainMenu.xib; sourceTree = "<group>"; };
		DC87A72E1525B051005A09B0 /* LumberjackUser.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = LumberjackUser.h; path = ../Xcode/PerUserLogLevels/PerUserLogLevels/LumberjackUser.h; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		DC87A6F11525AEA3005A09B0 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				DC87A6F91525AEA3005A09B0 /* Cocoa.framework in Frameworks */,
				145FC9A96DC34918913D15B3 /* libPods-PULL_osx.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		3CEFE886C93FBC963106267F /* Pods */ = {
			isa = PBXGroup;
			children = (
				B513ABCA15C2902F8B3390BC /* Pods-PULL_osx.debug.xcconfig */,
				D8E6A730A03A926AAD72CC7A /* Pods-PULL_osx.release.xcconfig */,
			);
			name = Pods;
			sourceTree = "<group>";
		};
		DC87A6E91525AEA2005A09B0 = {
			isa = PBXGroup;
			children = (
				DC87A7301525B10C005A09B0 /* LumberjackUser */,
				DC87A6FE1525AEA3005A09B0 /* PerUserLogLevels */,
				DC87A6F71525AEA3005A09B0 /* Frameworks */,
				DC87A6F51525AEA3005A09B0 /* Products */,
				3CEFE886C93FBC963106267F /* Pods */,
			);
			sourceTree = "<group>";
		};
		DC87A6F51525AEA3005A09B0 /* Products */ = {
			isa = PBXGroup;
			children = (
				DC87A6F41525AEA3005A09B0 /* PerUserLogLevels.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		DC87A6F71525AEA3005A09B0 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				DC87A6F81525AEA3005A09B0 /* Cocoa.framework */,
				DC87A6FA1525AEA3005A09B0 /* Other Frameworks */,
				0962D31C804C41988B625DA3 /* libPods-PULL_osx.a */,
			);
			name = Frameworks;
			sourceTree = "<group>";
		};
		DC87A6FA1525AEA3005A09B0 /* Other Frameworks */ = {
			isa = PBXGroup;
			children = (
				DC87A6FB1525AEA3005A09B0 /* AppKit.framework */,
				DC87A6FC1525AEA3005A09B0 /* CoreData.framework */,
				DC87A6FD1525AEA3005A09B0 /* Foundation.framework */,
			);
			name = "Other Frameworks";
			sourceTree = "<group>";
		};
		DC87A6FE1525AEA3005A09B0 /* PerUserLogLevels */ = {
			isa = PBXGroup;
			children = (
				DC87A70A1525AEA3005A09B0 /* AppDelegate.h */,
				DC87A70B1525AEA3005A09B0 /* AppDelegate.m */,
				DC87A70D1525AEA3005A09B0 /* MainMenu.xib */,
				DC87A6FF1525AEA3005A09B0 /* Supporting Files */,
			);
			path = PerUserLogLevels;
			sourceTree = "<group>";
		};
		DC87A6FF1525AEA3005A09B0 /* Supporting Files */ = {
			isa = PBXGroup;
			children = (
				DC87A7001525AEA3005A09B0 /* PerUserLogLevels-Info.plist */,
				DC87A7011525AEA3005A09B0 /* InfoPlist.strings */,
				DC87A7041525AEA3005A09B0 /* main.m */,
				DC87A7061525AEA3005A09B0 /* PerUserLogLevels-Prefix.pch */,
				DC87A7071525AEA3005A09B0 /* Credits.rtf */,
			);
			name = "Supporting Files";
			sourceTree = "<group>";
		};
		DC87A7301525B10C005A09B0 /* LumberjackUser */ = {
			isa = PBXGroup;
			children = (
				DC28B92D15263ED00043126F /* LumberjackUser.bash */,
				DC87A72E1525B051005A09B0 /* LumberjackUser.h */,
			);
			name = LumberjackUser;
			path = ../../Lumberjack;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		DC87A6F31525AEA3005A09B0 /* PerUserLogLevels */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = DC87A7121525AEA3005A09B0 /* Build configuration list for PBXNativeTarget "PerUserLogLevels" */;
			buildPhases = (
				76E60D6416AA4C2AB3DFE316 /* Check Pods Manifest.lock */,
				DC87A7341525B41D005A09B0 /* ShellScript */,
				DC87A6F01525AEA3005A09B0 /* Sources */,
				DC87A6F11525AEA3005A09B0 /* Frameworks */,
				DC87A6F21525AEA3005A09B0 /* Resources */,
				DB290A9ED1D14F6CA2ACE3FD /* Copy Pods Resources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = PerUserLogLevels;
			productName = PerUserLogLevels;
			productReference = DC87A6F41525AEA3005A09B0 /* PerUserLogLevels.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		DC87A6EB1525AEA2005A09B0 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				LastUpgradeCheck = 0500;
			};
			buildConfigurationList = DC87A6EE1525AEA2005A09B0 /* Build configuration list for PBXProject "PerUserLogLevels" */;
			compatibilityVersion = "Xcode 3.2";
			developmentRegion = English;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
			);
			mainGroup = DC87A6E91525AEA2005A09B0;
			productRefGroup = DC87A6F51525AEA3005A09B0 /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				DC87A6F31525AEA3005A09B0 /* PerUserLogLevels */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		DC87A6F21525AEA3005A09B0 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				DC87A7031525AEA3005A09B0 /* InfoPlist.strings in Resources */,
				DC87A7091525AEA3005A09B0 /* Credits.rtf in Resources */,
				DC87A70F1525AEA3005A09B0 /* MainMenu.xib in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
		76E60D6416AA4C2AB3DFE316 /* Check Pods Manifest.lock */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Check Pods Manifest.lock";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n    cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n    exit 1\nfi\n";
			showEnvVarsInLog = 0;
		};
		DB290A9ED1D14F6CA2ACE3FD /* Copy Pods Resources */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Copy Pods Resources";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-PULL_osx/Pods-PULL_osx-resources.sh\"\n";
			showEnvVarsInLog = 0;
		};
		DC87A7341525B41D005A09B0 /* ShellScript */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/bash;
			shellScript = "${PROJECT_DIR}/Scripts/LumberjackUser.bash";
		};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		DC87A6F01525AEA3005A09B0 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				DC87A7051525AEA3005A09B0 /* main.m in Sources */,
				DC87A70C1525AEA3005A09B0 /* AppDelegate.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
		DC87A7011525AEA3005A09B0 /* InfoPlist.strings */ = {
			isa = PBXVariantGroup;
			children = (
				DC87A7021525AEA3005A09B0 /* en */,
			);
			name = InfoPlist.strings;
			sourceTree = "<group>";
		};
		DC87A7071525AEA3005A09B0 /* Credits.rtf */ = {
			isa = PBXVariantGroup;
			children = (
				DC87A7081525AEA3005A09B0 /* en */,
			);
			name = Credits.rtf;
			sourceTree = "<group>";
		};
		DC87A70D1525AEA3005A09B0 /* MainMenu.xib */ = {
			isa = PBXVariantGroup;
			children = (
				DC87A70E1525AEA3005A09B0 /* en */,
			);
			name = MainMenu.xib;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		DC87A7101525AEA3005A09B0 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				COPY_PHASE_STRIP = NO;
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREPROCESSOR_DEFINITIONS = (
					"DEBUG=1",
					"$(inherited)",
				);
				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
				GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
				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;
				MACOSX_DEPLOYMENT_TARGET = 10.7;
				ONLY_ACTIVE_ARCH = YES;
				SDKROOT = macosx;
			};
			name = Debug;
		};
		DC87A7111525AEA3005A09B0 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				CLANG_ENABLE_OBJC_ARC = YES;
				CLANG_WARN_BOOL_CONVERSION = YES;
				CLANG_WARN_CONSTANT_CONVERSION = YES;
				CLANG_WARN_EMPTY_BODY = YES;
				CLANG_WARN_ENUM_CONVERSION = YES;
				CLANG_WARN_INT_CONVERSION = YES;
				CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
				COPY_PHASE_STRIP = YES;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				GCC_C_LANGUAGE_STANDARD = gnu99;
				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
				GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
				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;
				MACOSX_DEPLOYMENT_TARGET = 10.7;
				SDKROOT = macosx;
			};
			name = Release;
		};
		DC87A7131525AEA3005A09B0 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = B513ABCA15C2902F8B3390BC /* Pods-PULL_osx.debug.xcconfig */;
			buildSettings = {
				COMBINE_HIDPI_IMAGES = YES;
				GCC_PRECOMPILE_PREFIX_HEADER = YES;
				GCC_PREFIX_HEADER = "PerUserLogLevels/PerUserLogLevels-Prefix.pch";
				INFOPLIST_FILE = "PerUserLogLevels/PerUserLogLevels-Info.plist";
				PRODUCT_NAME = "$(TARGET_NAME)";
				WRAPPER_EXTENSION = app;
			};
			name = Debug;
		};
		DC87A7141525AEA3005A09B0 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = D8E6A730A03A926AAD72CC7A /* Pods-PULL_osx.release.xcconfig */;
			buildSettings = {
				COMBINE_HIDPI_IMAGES = YES;
				GCC_PRECOMPILE_PREFIX_HEADER = YES;
				GCC_PREFIX_HEADER = "PerUserLogLevels/PerUserLogLevels-Prefix.pch";
				INFOPLIST_FILE = "PerUserLogLevels/PerUserLogLevels-Info.plist";
				PRODUCT_NAME = "$(TARGET_NAME)";
				WRAPPER_EXTENSION = app;
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		DC87A6EE1525AEA2005A09B0 /* Build configuration list for PBXProject "PerUserLogLevels" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				DC87A7101525AEA3005A09B0 /* Debug */,
				DC87A7111525AEA3005A09B0 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		DC87A7121525AEA3005A09B0 /* Build configuration list for PBXNativeTarget "PerUserLogLevels" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				DC87A7131525AEA3005A09B0 /* Debug */,
				DC87A7141525AEA3005A09B0 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = DC87A6EB1525AEA2005A09B0 /* Project object */;
}
