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

/* Begin PBXAggregateTarget section */
		F94585840F782326009A47BF /* All */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = F94585930F78235C009A47BF /* Build configuration list for PBXAggregateTarget "All" */;
			buildPhases = (
			);
			dependencies = (
				F94585880F78232B009A47BF /* PBXTargetDependency */,
				F945858A0F78232E009A47BF /* PBXTargetDependency */,
				F945858C0F782330009A47BF /* PBXTargetDependency */,
				F945858E0F782333009A47BF /* PBXTargetDependency */,
				F94585900F782336009A47BF /* PBXTargetDependency */,
				F93DE3A70F830D1D00608B94 /* PBXTargetDependency */,
				F95BB8B3101F94D300AA053B /* PBXTargetDependency */,
				F95BB8B5101F94D300AA053B /* PBXTargetDependency */,
				F95BB8B7101F94D300AA053B /* PBXTargetDependency */,
				8B31023911F0CF0600FCF3E4 /* PBXTargetDependency */,
				8B31051711F1010E00FCF3E4 /* PBXTargetDependency */,
				8B31051911F1010E00FCF3E4 /* PBXTargetDependency */,
				8B31051B11F1010E00FCF3E4 /* PBXTargetDependency */,
				8B31051D11F1010E00FCF3E4 /* PBXTargetDependency */,
				8B31051F11F1010E00FCF3E4 /* PBXTargetDependency */,
			);
			name = All;
			productName = All;
		};
/* End PBXAggregateTarget section */

/* Begin PBXBuildFile section */
		162F64F2161C577500CD68D5 /* arch_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F0161C577500CD68D5 /* arch_utilities.cc */; };
		162F64F3161C577500CD68D5 /* arch_utilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 162F64F1161C577500CD68D5 /* arch_utilities.h */; };
		162F64F4161C579B00CD68D5 /* arch_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F0161C577500CD68D5 /* arch_utilities.cc */; };
		162F64F5161C579B00CD68D5 /* arch_utilities.h in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F1161C577500CD68D5 /* arch_utilities.h */; };
		163201D61443019E00C4DBF5 /* ConfigFile.h in Headers */ = {isa = PBXBuildFile; fileRef = 163201D41443019E00C4DBF5 /* ConfigFile.h */; };
		163201D71443019E00C4DBF5 /* ConfigFile.mm in Sources */ = {isa = PBXBuildFile; fileRef = 163201D51443019E00C4DBF5 /* ConfigFile.mm */; };
		163201E31443029300C4DBF5 /* ConfigFile.mm in Sources */ = {isa = PBXBuildFile; fileRef = 163201D51443019E00C4DBF5 /* ConfigFile.mm */; };
		16C7C918147D45AE00776EAD /* BreakpadDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = 16C7C917147D45AE00776EAD /* BreakpadDefines.h */; settings = {ATTRIBUTES = (Public, ); }; };
		16E02DB8147410F0008C604D /* uploader.mm in Sources */ = {isa = PBXBuildFile; fileRef = 16E02DB4147410D4008C604D /* uploader.mm */; };
		1EEEB6231720829E00F7E689 /* simple_string_dictionary.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EEEB6211720829E00F7E689 /* simple_string_dictionary.cc */; };
		1EEEB6241720829E00F7E689 /* simple_string_dictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EEEB6221720829E00F7E689 /* simple_string_dictionary.h */; };
		1EEEB6271720831E00F7E689 /* BreakpadFramework_Test.mm in Sources */ = {isa = PBXBuildFile; fileRef = F91AF5CF0FD60393009D8BE2 /* BreakpadFramework_Test.mm */; };
		1EEEB62A1720859200F7E689 /* simple_string_dictionary_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EEEB6251720830600F7E689 /* simple_string_dictionary_unittest.cc */; };
		1EEEB62B1720868C00F7E689 /* simple_string_dictionary.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EEEB6211720829E00F7E689 /* simple_string_dictionary.cc */; };
		3329D4ED0FA16D820007BBC5 /* Breakpad.xib in Resources */ = {isa = PBXBuildFile; fileRef = 3329D4EC0FA16D820007BBC5 /* Breakpad.xib */; };
		33880C800F9E097100817F82 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 33880C7E0F9E097100817F82 /* InfoPlist.strings */; };
		4084699D0F5D9CF900FDCA37 /* crash_report_sender.icns in Resources */ = {isa = PBXBuildFile; fileRef = 4084699C0F5D9CF900FDCA37 /* crash_report_sender.icns */; };
		4D61A25F14F43CFC002D5862 /* bootstrap_compat.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D61A25D14F43CFC002D5862 /* bootstrap_compat.cc */; };
		4D61A26B14F43D3C002D5862 /* bootstrap_compat.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D61A25D14F43CFC002D5862 /* bootstrap_compat.cc */; };
		4D61A26C14F43D42002D5862 /* bootstrap_compat.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D61A25D14F43CFC002D5862 /* bootstrap_compat.cc */; };
		4D61A26D14F43D43002D5862 /* bootstrap_compat.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D61A25D14F43CFC002D5862 /* bootstrap_compat.cc */; };
		4D61A26E14F43D45002D5862 /* bootstrap_compat.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D61A25D14F43CFC002D5862 /* bootstrap_compat.cc */; };
		4D61A26F14F43D48002D5862 /* bootstrap_compat.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D61A25D14F43CFC002D5862 /* bootstrap_compat.cc */; };
		4D72CA0E13DFAD5C006CABE3 /* md5.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D72CA0D13DFAD5C006CABE3 /* md5.cc */; };
		4D72CA2513DFAE1C006CABE3 /* md5.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D72CA0D13DFAD5C006CABE3 /* md5.cc */; };
		4D72CA2F13DFAE65006CABE3 /* md5.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D72CA0D13DFAD5C006CABE3 /* md5.cc */; };
		4D72CA3813DFAE91006CABE3 /* md5.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D72CA0D13DFAD5C006CABE3 /* md5.cc */; };
		4D72CA3913DFAE92006CABE3 /* md5.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D72CA0D13DFAD5C006CABE3 /* md5.cc */; };
		4DBE49A6134A4F200072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
		4DBE49A7134A4F280072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
		4DBE49A8134A4F380072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
		4DBE49A9134A4F460072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
		8B3101C611F0CD9F00FCF3E4 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
		8B3101C711F0CD9F00FCF3E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		8B3101CA11F0CDB000FCF3E4 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
		8B3101CB11F0CDB000FCF3E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		8B3101EA11F0CDE300FCF3E4 /* SenTestingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8B3101E911F0CDE300FCF3E4 /* SenTestingKit.framework */; };
		8B31029411F0D54300FCF3E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		8B3102E611F0D74C00FCF3E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		8B3102EB11F0D78000FCF3E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		8B31FC8211EFD2B800FCF3E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */; };
		D23F4B2E12A7E13200686C8D /* minidump_generator_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = D23F4B2C12A7E13200686C8D /* minidump_generator_test.cc */; };
		D23F4B3312A7E17700686C8D /* libgtest.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D2F9A41512131EF0002747C1 /* libgtest.a */; };
		D23F4BB112A868CB00686C8D /* minidump_generator_test_helper.cc in Sources */ = {isa = PBXBuildFile; fileRef = D23F4B9A12A8688800686C8D /* minidump_generator_test_helper.cc */; };
		D23F4BB812A868F700686C8D /* MachIPC.mm in Sources */ = {isa = PBXBuildFile; fileRef = F92C53790ECCE635009BE4BA /* MachIPC.mm */; };
		D244536A12426F00009BBCE0 /* logging.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535112426EBB009BBCE0 /* logging.cc */; };
		D244536B12426F00009BBCE0 /* minidump.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535212426EBB009BBCE0 /* minidump.cc */; };
		D244536C12426F00009BBCE0 /* pathname_stripper.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535312426EBB009BBCE0 /* pathname_stripper.cc */; };
		D244536D12426F00009BBCE0 /* basic_code_modules.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244534F12426E98009BBCE0 /* basic_code_modules.cc */; };
		D244540B12439BA0009BBCE0 /* memory_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244540A12439BA0009BBCE0 /* memory_unittest.cc */; };
		D246417012BAA40E005170D0 /* exception_handler.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */; };
		D246417112BAA41C005170D0 /* crash_generation_client.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C6121336C7002747C1 /* crash_generation_client.cc */; };
		D246417512BAA438005170D0 /* minidump_generator.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536F0ECCE3FD009BE4BA /* minidump_generator.cc */; };
		D246417612BAA43F005170D0 /* dynamic_images.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */; };
		D246417712BAA444005170D0 /* breakpad_nlist_64.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */; };
		D246418412BAA4BA005170D0 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		D246418812BAA4E3005170D0 /* string_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53820ECCE635009BE4BA /* string_utilities.cc */; };
		D246418C12BAA508005170D0 /* minidump_file_writer.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C538F0ECCE70A009BE4BA /* minidump_file_writer.cc */; };
		D246419012BAA52A005170D0 /* string_conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53850ECCE6AD009BE4BA /* string_conversion.cc */; };
		D246419112BAA52F005170D0 /* convert_UTF.c in Sources */ = {isa = PBXBuildFile; fileRef = F92C53870ECCE6C0009BE4BA /* convert_UTF.c */; };
		D246419512BAA54C005170D0 /* file_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53740ECCE635009BE4BA /* file_id.cc */; };
		D246419612BAA55A005170D0 /* macho_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537A0ECCE635009BE4BA /* macho_id.cc */; };
		D24641A012BAA67F005170D0 /* macho_walker.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537E0ECCE635009BE4BA /* macho_walker.cc */; };
		D24641AF12BAA82D005170D0 /* macho_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537C0ECCE635009BE4BA /* macho_utilities.cc */; };
		D24641EC12BAC6FB005170D0 /* logging.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535112426EBB009BBCE0 /* logging.cc */; };
		D24641ED12BAC6FB005170D0 /* minidump.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535212426EBB009BBCE0 /* minidump.cc */; };
		D24641EE12BAC6FB005170D0 /* pathname_stripper.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535312426EBB009BBCE0 /* pathname_stripper.cc */; };
		D24641EF12BAC6FB005170D0 /* basic_code_modules.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244534F12426E98009BBCE0 /* basic_code_modules.cc */; };
		D24BBBFD121050F000F3D417 /* breakpadUtilities.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */; };
		D24BBD291211EDB100F3D417 /* MachIPC.mm in Sources */ = {isa = PBXBuildFile; fileRef = F92C53790ECCE635009BE4BA /* MachIPC.mm */; };
		D24BBD321212CACF00F3D417 /* MachIPC.mm in Sources */ = {isa = PBXBuildFile; fileRef = F92C53790ECCE635009BE4BA /* MachIPC.mm */; };
		D2A5DD301188633800081F03 /* breakpad_nlist_64.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */; };
		D2A5DD401188640400081F03 /* breakpad_nlist_64.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */; };
		D2A5DD411188642E00081F03 /* breakpad_nlist_64.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */; };
		D2C1DBE412AFC270006917BD /* logging.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535112426EBB009BBCE0 /* logging.cc */; };
		D2C1DBE512AFC270006917BD /* minidump.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535212426EBB009BBCE0 /* minidump.cc */; };
		D2C1DBE612AFC270006917BD /* pathname_stripper.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244535312426EBB009BBCE0 /* pathname_stripper.cc */; };
		D2C1DBE712AFC270006917BD /* basic_code_modules.cc in Sources */ = {isa = PBXBuildFile; fileRef = D244534F12426E98009BBCE0 /* basic_code_modules.cc */; };
		D2F9A3D51212F87C002747C1 /* exception_handler_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A3D41212F87C002747C1 /* exception_handler_test.cc */; };
		D2F9A43D12131F55002747C1 /* gmock-all.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A43C12131F55002747C1 /* gmock-all.cc */; };
		D2F9A44012131F65002747C1 /* gtest_main.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A43E12131F65002747C1 /* gtest_main.cc */; };
		D2F9A44112131F65002747C1 /* gtest-all.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A43F12131F65002747C1 /* gtest-all.cc */; };
		D2F9A44412131F84002747C1 /* libgtest.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D2F9A41512131EF0002747C1 /* libgtest.a */; };
		D2F9A4C9121336C7002747C1 /* client_info.h in Headers */ = {isa = PBXBuildFile; fileRef = D2F9A4C4121336C7002747C1 /* client_info.h */; };
		D2F9A4CA121336C7002747C1 /* crash_generation_client.h in Headers */ = {isa = PBXBuildFile; fileRef = D2F9A4C5121336C7002747C1 /* crash_generation_client.h */; };
		D2F9A4CB121336C7002747C1 /* crash_generation_client.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C6121336C7002747C1 /* crash_generation_client.cc */; };
		D2F9A4CC121336C7002747C1 /* crash_generation_server.h in Headers */ = {isa = PBXBuildFile; fileRef = D2F9A4C7121336C7002747C1 /* crash_generation_server.h */; };
		D2F9A4CD121336C7002747C1 /* crash_generation_server.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C8121336C7002747C1 /* crash_generation_server.cc */; };
		D2F9A4DF12133AD9002747C1 /* crash_generation_client.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C6121336C7002747C1 /* crash_generation_client.cc */; };
		D2F9A4E012133AD9002747C1 /* crash_generation_server.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C8121336C7002747C1 /* crash_generation_server.cc */; };
		D2F9A4E112133AE2002747C1 /* crash_generation_client.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C6121336C7002747C1 /* crash_generation_client.cc */; };
		D2F9A4E212133AE2002747C1 /* crash_generation_server.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C8121336C7002747C1 /* crash_generation_server.cc */; };
		D2F9A52E121383A1002747C1 /* crash_generation_client.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C6121336C7002747C1 /* crash_generation_client.cc */; };
		D2F9A52F121383A1002747C1 /* crash_generation_server.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4C8121336C7002747C1 /* crash_generation_server.cc */; };
		D2F9A530121383A1002747C1 /* MachIPC.mm in Sources */ = {isa = PBXBuildFile; fileRef = F92C53790ECCE635009BE4BA /* MachIPC.mm */; };
		D2F9A531121383A1002747C1 /* breakpad_nlist_64.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */; };
		D2F9A532121383A1002747C1 /* dynamic_images.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */; };
		D2F9A533121383A1002747C1 /* exception_handler.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */; };
		D2F9A534121383A1002747C1 /* minidump_generator.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536F0ECCE3FD009BE4BA /* minidump_generator.cc */; };
		D2F9A535121383A1002747C1 /* minidump_file_writer.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C538F0ECCE70A009BE4BA /* minidump_file_writer.cc */; };
		D2F9A536121383A1002747C1 /* convert_UTF.c in Sources */ = {isa = PBXBuildFile; fileRef = F92C53870ECCE6C0009BE4BA /* convert_UTF.c */; };
		D2F9A537121383A1002747C1 /* string_conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53850ECCE6AD009BE4BA /* string_conversion.cc */; };
		D2F9A538121383A1002747C1 /* file_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53740ECCE635009BE4BA /* file_id.cc */; };
		D2F9A539121383A1002747C1 /* macho_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537A0ECCE635009BE4BA /* macho_id.cc */; };
		D2F9A53A121383A1002747C1 /* macho_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537C0ECCE635009BE4BA /* macho_utilities.cc */; };
		D2F9A53B121383A1002747C1 /* macho_walker.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537E0ECCE635009BE4BA /* macho_walker.cc */; };
		D2F9A53C121383A1002747C1 /* string_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53820ECCE635009BE4BA /* string_utilities.cc */; };
		D2F9A53F121383A1002747C1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		D2F9A541121383A1002747C1 /* libgtest.a in Frameworks */ = {isa = PBXBuildFile; fileRef = D2F9A41512131EF0002747C1 /* libgtest.a */; };
		D2F9A553121383DC002747C1 /* crash_generation_server_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = D2F9A4CE121336F7002747C1 /* crash_generation_server_test.cc */; };
		F4DAB1DD19F1027100A5A838 /* launch_reporter.cc in Sources */ = {isa = PBXBuildFile; fileRef = F4DAB1DB19F1027100A5A838 /* launch_reporter.cc */; };
		F4DAB1DE19F1027100A5A838 /* launch_reporter.h in Headers */ = {isa = PBXBuildFile; fileRef = F4DAB1DC19F1027100A5A838 /* launch_reporter.h */; };
		F4F916B619F10FFC00B83BE4 /* launch_reporter.cc in Sources */ = {isa = PBXBuildFile; fileRef = F4DAB1DB19F1027100A5A838 /* launch_reporter.cc */; };
		F91AF6210FD60784009D8BE2 /* Breakpad.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* Breakpad.framework */; };
		F9286B3A0F7EB25800A4DCC8 /* InspectorMain.mm in Sources */ = {isa = PBXBuildFile; fileRef = F9286B390F7EB25800A4DCC8 /* InspectorMain.mm */; };
		F92C53B80ECCE7B3009BE4BA /* Inspector.mm in Sources */ = {isa = PBXBuildFile; fileRef = F92C53B70ECCE7B3009BE4BA /* Inspector.mm */; };
		F92C554C0ECCF534009BE4BA /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
		F92C55D00ECD0064009BE4BA /* Breakpad.h in Headers */ = {isa = PBXBuildFile; fileRef = F92C55CE0ECD0064009BE4BA /* Breakpad.h */; settings = {ATTRIBUTES = (Public, ); }; };
		F92C55D10ECD0064009BE4BA /* Breakpad.mm in Sources */ = {isa = PBXBuildFile; fileRef = F92C55CF0ECD0064009BE4BA /* Breakpad.mm */; };
		F92C56330ECD0DF1009BE4BA /* OnDemandServer.h in Headers */ = {isa = PBXBuildFile; fileRef = F92C56310ECD0DF1009BE4BA /* OnDemandServer.h */; };
		F92C56340ECD0DF1009BE4BA /* OnDemandServer.mm in Sources */ = {isa = PBXBuildFile; fileRef = F92C56320ECD0DF1009BE4BA /* OnDemandServer.mm */; };
		F92C563F0ECD10CA009BE4BA /* convert_UTF.c in Sources */ = {isa = PBXBuildFile; fileRef = F92C53870ECCE6C0009BE4BA /* convert_UTF.c */; };
		F92C56400ECD10CA009BE4BA /* dynamic_images.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */; };
		F92C56410ECD10CA009BE4BA /* file_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53740ECCE635009BE4BA /* file_id.cc */; };
		F92C56420ECD10CA009BE4BA /* macho_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537A0ECCE635009BE4BA /* macho_id.cc */; };
		F92C56430ECD10CA009BE4BA /* macho_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537C0ECCE635009BE4BA /* macho_utilities.cc */; };
		F92C56440ECD10CA009BE4BA /* macho_walker.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537E0ECCE635009BE4BA /* macho_walker.cc */; };
		F92C56450ECD10CA009BE4BA /* MachIPC.mm in Sources */ = {isa = PBXBuildFile; fileRef = F92C53790ECCE635009BE4BA /* MachIPC.mm */; };
		F92C56460ECD10CA009BE4BA /* minidump_file_writer.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C538F0ECCE70A009BE4BA /* minidump_file_writer.cc */; };
		F92C56470ECD10CA009BE4BA /* minidump_generator.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536F0ECCE3FD009BE4BA /* minidump_generator.cc */; };
		F92C56490ECD10CA009BE4BA /* string_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53820ECCE635009BE4BA /* string_utilities.cc */; };
		F92C564A0ECD10CA009BE4BA /* string_conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53850ECCE6AD009BE4BA /* string_conversion.cc */; };
		F92C564C0ECD10DD009BE4BA /* breakpadUtilities.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */; };
		F92C56570ECD113E009BE4BA /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F92C554A0ECCF530009BE4BA /* Carbon.framework */; };
		F92C565C0ECD1158009BE4BA /* breakpadUtilities.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */; };
		F92C565F0ECD116B009BE4BA /* protected_memory_allocator.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53720ECCE3FD009BE4BA /* protected_memory_allocator.cc */; };
		F92C56630ECD1179009BE4BA /* exception_handler.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */; };
		F92C56650ECD1185009BE4BA /* breakpadUtilities.dylib in Resources */ = {isa = PBXBuildFile; fileRef = F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */; };
		F92C568A0ECD15F9009BE4BA /* Inspector in Resources */ = {isa = PBXBuildFile; fileRef = F92C53540ECCE349009BE4BA /* Inspector */; };
		F92C56A90ECE04C5009BE4BA /* crash_report_sender.m in Sources */ = {isa = PBXBuildFile; fileRef = F92C56A80ECE04C5009BE4BA /* crash_report_sender.m */; };
		F93803CD0F8083B7004D428B /* dynamic_images.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */; };
		F93803CE0F8083B7004D428B /* exception_handler.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */; };
		F93803CF0F8083B7004D428B /* minidump_generator.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536F0ECCE3FD009BE4BA /* minidump_generator.cc */; };
		F93803D00F8083B7004D428B /* minidump_file_writer.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C538F0ECCE70A009BE4BA /* minidump_file_writer.cc */; };
		F93803D10F8083B7004D428B /* convert_UTF.c in Sources */ = {isa = PBXBuildFile; fileRef = F92C53870ECCE6C0009BE4BA /* convert_UTF.c */; };
		F93803D20F8083B7004D428B /* string_conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53850ECCE6AD009BE4BA /* string_conversion.cc */; };
		F93803D30F8083B7004D428B /* file_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53740ECCE635009BE4BA /* file_id.cc */; };
		F93803D40F8083B7004D428B /* macho_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537A0ECCE635009BE4BA /* macho_id.cc */; };
		F93803D50F8083B7004D428B /* macho_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537C0ECCE635009BE4BA /* macho_utilities.cc */; };
		F93803D60F8083B7004D428B /* macho_walker.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537E0ECCE635009BE4BA /* macho_walker.cc */; };
		F93803D70F8083B7004D428B /* string_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53820ECCE635009BE4BA /* string_utilities.cc */; };
		F93DE2D80F82A70E00608B94 /* minidump_file_writer_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = F93DE2D70F82A70E00608B94 /* minidump_file_writer_unittest.cc */; };
		F93DE2D90F82A73500608B94 /* minidump_file_writer.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C538F0ECCE70A009BE4BA /* minidump_file_writer.cc */; };
		F93DE2DA0F82A73500608B94 /* convert_UTF.c in Sources */ = {isa = PBXBuildFile; fileRef = F92C53870ECCE6C0009BE4BA /* convert_UTF.c */; };
		F93DE2DB0F82A73500608B94 /* string_conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53850ECCE6AD009BE4BA /* string_conversion.cc */; };
		F93DE3350F82C66B00608B94 /* dynamic_images.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */; };
		F93DE3360F82C66B00608B94 /* exception_handler.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */; };
		F93DE3370F82C66B00608B94 /* minidump_generator.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536F0ECCE3FD009BE4BA /* minidump_generator.cc */; };
		F93DE3380F82C66B00608B94 /* minidump_file_writer.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C538F0ECCE70A009BE4BA /* minidump_file_writer.cc */; };
		F93DE3390F82C66B00608B94 /* convert_UTF.c in Sources */ = {isa = PBXBuildFile; fileRef = F92C53870ECCE6C0009BE4BA /* convert_UTF.c */; };
		F93DE33A0F82C66B00608B94 /* string_conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53850ECCE6AD009BE4BA /* string_conversion.cc */; };
		F93DE33B0F82C66B00608B94 /* file_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53740ECCE635009BE4BA /* file_id.cc */; };
		F93DE33C0F82C66B00608B94 /* macho_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537A0ECCE635009BE4BA /* macho_id.cc */; };
		F93DE33D0F82C66B00608B94 /* macho_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537C0ECCE635009BE4BA /* macho_utilities.cc */; };
		F93DE33E0F82C66B00608B94 /* macho_walker.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C537E0ECCE635009BE4BA /* macho_walker.cc */; };
		F93DE33F0F82C66B00608B94 /* string_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53820ECCE635009BE4BA /* string_utilities.cc */; };
		F945849E0F280E3C009A47BF /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = F945849C0F280E3C009A47BF /* Localizable.strings */; };
		F9B630A0100FF96B00D0F4AC /* goArrow.png in Resources */ = {isa = PBXBuildFile; fileRef = F9B6309F100FF96B00D0F4AC /* goArrow.png */; };
		F9C44DB20EF07288003AEBAA /* Controller.m in Sources */ = {isa = PBXBuildFile; fileRef = F9C44DAC0EF07288003AEBAA /* Controller.m */; };
		F9C44DB30EF07288003AEBAA /* crashduringload in Resources */ = {isa = PBXBuildFile; fileRef = F9C44DAD0EF07288003AEBAA /* crashduringload */; };
		F9C44DB40EF07288003AEBAA /* crashInMain in Resources */ = {isa = PBXBuildFile; fileRef = F9C44DAE0EF07288003AEBAA /* crashInMain */; };
		F9C44DB60EF07288003AEBAA /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = F9C44DB00EF07288003AEBAA /* main.m */; };
		F9C44DB70EF07288003AEBAA /* TestClass.mm in Sources */ = {isa = PBXBuildFile; fileRef = F9C44DB10EF07288003AEBAA /* TestClass.mm */; };
		F9C44DBC0EF072A0003AEBAA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = F9C44DB80EF072A0003AEBAA /* InfoPlist.strings */; };
		F9C44DBD0EF072A0003AEBAA /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = F9C44DBA0EF072A0003AEBAA /* MainMenu.xib */; };
		F9C44E000EF077CD003AEBAA /* Breakpad.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* Breakpad.framework */; };
		F9C44E3C0EF08B12003AEBAA /* Breakpad.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* Breakpad.framework */; };
		F9C44E980EF09F56003AEBAA /* crash_report_sender.app in Resources */ = {isa = PBXBuildFile; fileRef = F92C56A00ECE04A7009BE4BA /* crash_report_sender.app */; };
		F9C44EA20EF09F93003AEBAA /* HTTPMultipartUpload.m in Sources */ = {isa = PBXBuildFile; fileRef = F92C53770ECCE635009BE4BA /* HTTPMultipartUpload.m */; };
		F9C44EE50EF0A006003AEBAA /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C44EE40EF0A006003AEBAA /* SystemConfiguration.framework */; };
		F9C44EE90EF0A3C1003AEBAA /* GTMLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = F9C44EE80EF0A3C1003AEBAA /* GTMLogger.m */; };
		F9C77E130F7DDF810045F7DB /* GTMSenTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = F9C77E120F7DDF810045F7DB /* GTMSenTestCase.m */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		8B31023811F0CF0600FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = B88FAFC9116BDCAD00407530;
			remoteInfo = all_unittests;
		};
		8B31051611F1010E00FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F93803BD0F80820F004D428B;
			remoteInfo = generator_test;
		};
		8B31051811F1010E00FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F93DE2D00F82A67300608B94;
			remoteInfo = minidump_file_writer_unittest;
		};
		8B31051A11F1010E00FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F93DE32B0F82C55600608B94;
			remoteInfo = handler_test;
		};
		8B31051C11F1010E00FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = B89E0E731166575200DD08C9;
			remoteInfo = macho_dump;
		};
		8B31051E11F1010E00FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB894101F94C000AA053B /* symupload.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = 9BD835FA0B0544950055103E;
			remoteInfo = minidump_upload;
		};
		8B31F7A011EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B89E0E741166575200DD08C9;
			remoteInfo = macho_dump;
		};
		8B31F7A211EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB024116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		8B31F7A411EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB14B116CF4A700407530;
			remoteInfo = byte_cursor_unittest;
		};
		8B31F7A611EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B89E0E9511665A6400DD08C9;
			remoteInfo = macho_reader_unittest;
		};
		8B31F7A811EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB007116BDE8300407530;
			remoteInfo = stabs_reader_unittest;
		};
		8B31F7AA11EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB135116CF30F00407530;
			remoteInfo = bytereader_unittest;
		};
		8B31F7AC11EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FAF2F116A591E00407530;
			remoteInfo = dwarf2reader_cfi_unittest;
		};
		8B31F7AE11EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB0DF116CEEA800407530;
			remoteInfo = dwarf2diehandler_unittest;
		};
		8B31F7B011EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB10A116CF07900407530;
			remoteInfo = dwarf_cu_to_module_unittest;
		};
		8B31F7B211EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB0F2116CEF1900407530;
			remoteInfo = dwarf_line_to_module_unittest;
		};
		8B31F7B411EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB11F116CF27F00407530;
			remoteInfo = dwarf_cfi_to_module_unittest;
		};
		8B31F7B611EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B84A91F4116CF784006C210E;
			remoteInfo = stabs_to_module_unittest;
		};
		8B31F7B811EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = B88FB0B9116CEABF00407530;
			remoteInfo = module_unittest;
		};
		8B31F7BA11EF9A8700FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D21F97D211CBA0F200239E38;
			remoteInfo = test_assembler_unittest;
		};
		D23F4B2F12A7E16200686C8D /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = D2F9A41412131EF0002747C1;
			remoteInfo = gtest;
		};
		D23F4BB912A8694C00686C8D /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = D23F4BAA12A868A500686C8D;
			remoteInfo = minidump_generator_test_helper;
		};
		D2F9A44212131F80002747C1 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = D2F9A41412131EF0002747C1;
			remoteInfo = gtest;
		};
		D2F9A52C121383A1002747C1 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = D2F9A41412131EF0002747C1;
			remoteInfo = gtest;
		};
		D2F9A5DE12142A6A002747C1 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = D2F9A52A121383A1002747C1;
			remoteInfo = crash_generation_server_test;
		};
		F91AF6370FD60A74009D8BE2 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
			remoteInfo = Breakpad;
		};
		F92C564D0ECD10E5009BE4BA /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F92C563B0ECD10B3009BE4BA;
			remoteInfo = breakpadUtilities;
		};
		F92C56850ECD15EF009BE4BA /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F92C563B0ECD10B3009BE4BA;
			remoteInfo = breakpadUtilities;
		};
		F92C56870ECD15F1009BE4BA /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F92C53530ECCE349009BE4BA;
			remoteInfo = Inspector;
		};
		F93DE2FB0F82C3C600608B94 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F93803BD0F80820F004D428B;
			remoteInfo = generator_test;
		};
		F93DE36F0F82CC1300608B94 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F93DE32B0F82C55600608B94;
			remoteInfo = handler_test;
		};
		F93DE3A60F830D1D00608B94 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F9C77DD90F7DD5CF0045F7DB;
			remoteInfo = UnitTests;
		};
		F94585870F78232B009A47BF /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
			remoteInfo = Breakpad;
		};
		F94585890F78232E009A47BF /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F92C53530ECCE349009BE4BA;
			remoteInfo = Inspector;
		};
		F945858B0F782330009A47BF /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F92C563B0ECD10B3009BE4BA;
			remoteInfo = breakpadUtilities;
		};
		F945858D0F782333009A47BF /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F92C569F0ECE04A7009BE4BA;
			remoteInfo = crash_report_sender;
		};
		F945858F0F782336009A47BF /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F9C44DA40EF060A8003AEBAA;
			remoteInfo = BreakpadTest;
		};
		F95BB884101F949F00AA053B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB87C101F949F00AA053B /* crash_report.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 8DD76FA10486AA7600D96B5E;
			remoteInfo = crash_report;
		};
		F95BB891101F94AC00AA053B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 8DD76FA10486AA7600D96B5E;
			remoteInfo = dump_syms;
		};
		F95BB89E101F94C000AA053B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB894101F94C000AA053B /* symupload.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 8DD76FA10486AA7600D96B5E;
			remoteInfo = symupload;
		};
		F95BB8A0101F94C000AA053B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB894101F94C000AA053B /* symupload.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 9BD835FB0B0544950055103E;
			remoteInfo = minidump_upload;
		};
		F95BB8B2101F94D300AA053B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = B8C5B5101166531A00D34F4E;
			remoteInfo = dump_syms;
		};
		F95BB8B4101F94D300AA053B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB894101F94C000AA053B /* symupload.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = 8DD76F960486AA7600D96B5E;
			remoteInfo = symupload;
		};
		F95BB8B6101F94D300AA053B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = F95BB87C101F949F00AA053B /* crash_report.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = 8DD76F960486AA7600D96B5E;
			remoteInfo = crash_report;
		};
		F9C44E190EF0790F003AEBAA /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
			remoteInfo = Breakpad;
		};
		F9C44E960EF09F4B003AEBAA /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = F92C569F0ECE04A7009BE4BA;
			remoteInfo = crash_report_sender;
		};
/* End PBXContainerItemProxy section */

/* Begin PBXCopyFilesBuildPhase section */
		F9C44E410EF08B17003AEBAA /* Copy Frameworks */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 2147483647;
			dstPath = "";
			dstSubfolderSpec = 10;
			files = (
				F9C44E3C0EF08B12003AEBAA /* Breakpad.framework in Copy Frameworks */,
			);
			name = "Copy Frameworks";
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXCopyFilesBuildPhase section */

/* Begin PBXFileReference section */
		0867D69BFE84028FC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
		0867D6A5FE840307C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
		1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
		162F64F0161C577500CD68D5 /* arch_utilities.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = arch_utilities.cc; path = ../../common/mac/arch_utilities.cc; sourceTree = "<group>"; };
		162F64F1161C577500CD68D5 /* arch_utilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = arch_utilities.h; path = ../../common/mac/arch_utilities.h; sourceTree = "<group>"; };
		163201D41443019E00C4DBF5 /* ConfigFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ConfigFile.h; path = crash_generation/ConfigFile.h; sourceTree = "<group>"; };
		163201D51443019E00C4DBF5 /* ConfigFile.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; name = ConfigFile.mm; path = crash_generation/ConfigFile.mm; sourceTree = "<group>"; };
		163202431443201300C4DBF5 /* uploader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = uploader.h; path = sender/uploader.h; sourceTree = "<group>"; };
		16C7C917147D45AE00776EAD /* BreakpadDefines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BreakpadDefines.h; sourceTree = "<group>"; };
		16E02DB4147410D4008C604D /* uploader.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = uploader.mm; path = sender/uploader.mm; sourceTree = "<group>"; };
		1EEEB6211720829E00F7E689 /* simple_string_dictionary.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = simple_string_dictionary.cc; path = ../../common/simple_string_dictionary.cc; sourceTree = "<group>"; };
		1EEEB6221720829E00F7E689 /* simple_string_dictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = simple_string_dictionary.h; path = ../../common/simple_string_dictionary.h; sourceTree = "<group>"; };
		1EEEB6251720830600F7E689 /* simple_string_dictionary_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = simple_string_dictionary_unittest.cc; path = ../../common/simple_string_dictionary_unittest.cc; sourceTree = "<group>"; };
		32DBCF5E0370ADEE00C91783 /* Breakpad_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Breakpad_Prefix.pch; path = Framework/Breakpad_Prefix.pch; sourceTree = "<group>"; };
		3329D4EC0FA16D820007BBC5 /* Breakpad.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Breakpad.xib; path = sender/Breakpad.xib; sourceTree = "<group>"; };
		33880C7F0F9E097100817F82 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = sender/English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		4084699C0F5D9CF900FDCA37 /* crash_report_sender.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = crash_report_sender.icns; path = sender/crash_report_sender.icns; sourceTree = "<group>"; };
		4D61A25D14F43CFC002D5862 /* bootstrap_compat.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = bootstrap_compat.cc; path = ../../common/mac/bootstrap_compat.cc; sourceTree = SOURCE_ROOT; };
		4D61A25E14F43CFC002D5862 /* bootstrap_compat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = bootstrap_compat.h; path = ../../common/mac/bootstrap_compat.h; sourceTree = SOURCE_ROOT; };
		4D72CA0D13DFAD5C006CABE3 /* md5.cc */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = md5.cc; path = ../../common/md5.cc; sourceTree = SOURCE_ROOT; };
		4DBE4769134A4F080072546A /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = System/Library/Frameworks/CoreServices.framework; sourceTree = SDKROOT; };
		8B31007011F0CD3C00FCF3E4 /* GTMDefines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GTMDefines.h; path = ../../common/mac/GTMDefines.h; sourceTree = SOURCE_ROOT; };
		8B3101E911F0CDE300FCF3E4 /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; };
		8B31027711F0D3AF00FCF3E4 /* BreakpadDebug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = BreakpadDebug.xcconfig; path = ../../common/mac/BreakpadDebug.xcconfig; sourceTree = SOURCE_ROOT; };
		8B31027811F0D3AF00FCF3E4 /* BreakpadRelease.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = BreakpadRelease.xcconfig; path = ../../common/mac/BreakpadRelease.xcconfig; sourceTree = SOURCE_ROOT; };
		8B31FFF611F0C90500FCF3E4 /* Breakpad.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Breakpad.xcconfig; path = ../../common/mac/Breakpad.xcconfig; sourceTree = SOURCE_ROOT; };
		8DC2EF5B0486A6940098B216 /* Breakpad.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Breakpad.framework; sourceTree = BUILT_PRODUCTS_DIR; };
		D23F4B2C12A7E13200686C8D /* minidump_generator_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = minidump_generator_test.cc; path = tests/minidump_generator_test.cc; sourceTree = "<group>"; };
		D23F4B9A12A8688800686C8D /* minidump_generator_test_helper.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = minidump_generator_test_helper.cc; path = tests/minidump_generator_test_helper.cc; sourceTree = "<group>"; };
		D23F4BAB12A868A500686C8D /* minidump_generator_test_helper */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = minidump_generator_test_helper; sourceTree = BUILT_PRODUCTS_DIR; };
		D244534F12426E98009BBCE0 /* basic_code_modules.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = basic_code_modules.cc; path = ../../processor/basic_code_modules.cc; sourceTree = SOURCE_ROOT; };
		D244535112426EBB009BBCE0 /* logging.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = logging.cc; path = ../../processor/logging.cc; sourceTree = SOURCE_ROOT; };
		D244535212426EBB009BBCE0 /* minidump.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = minidump.cc; path = ../../processor/minidump.cc; sourceTree = SOURCE_ROOT; };
		D244535312426EBB009BBCE0 /* pathname_stripper.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = pathname_stripper.cc; path = ../../processor/pathname_stripper.cc; sourceTree = SOURCE_ROOT; };
		D244540A12439BA0009BBCE0 /* memory_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = memory_unittest.cc; path = ../../common/memory_unittest.cc; sourceTree = SOURCE_ROOT; };
		D2F9A3D41212F87C002747C1 /* exception_handler_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = exception_handler_test.cc; path = tests/exception_handler_test.cc; sourceTree = "<group>"; };
		D2F9A41512131EF0002747C1 /* libgtest.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libgtest.a; sourceTree = BUILT_PRODUCTS_DIR; };
		D2F9A43C12131F55002747C1 /* gmock-all.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "gmock-all.cc"; path = "../../testing/src/gmock-all.cc"; sourceTree = SOURCE_ROOT; };
		D2F9A43E12131F65002747C1 /* gtest_main.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = gtest_main.cc; path = ../../testing/gtest/src/gtest_main.cc; sourceTree = "<group>"; };
		D2F9A43F12131F65002747C1 /* gtest-all.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "gtest-all.cc"; path = "../../testing/gtest/src/gtest-all.cc"; sourceTree = "<group>"; };
		D2F9A4C4121336C7002747C1 /* client_info.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = client_info.h; path = crash_generation/client_info.h; sourceTree = "<group>"; };
		D2F9A4C5121336C7002747C1 /* crash_generation_client.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = crash_generation_client.h; path = crash_generation/crash_generation_client.h; sourceTree = "<group>"; };
		D2F9A4C6121336C7002747C1 /* crash_generation_client.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = crash_generation_client.cc; path = crash_generation/crash_generation_client.cc; sourceTree = "<group>"; };
		D2F9A4C7121336C7002747C1 /* crash_generation_server.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = crash_generation_server.h; path = crash_generation/crash_generation_server.h; sourceTree = "<group>"; };
		D2F9A4C8121336C7002747C1 /* crash_generation_server.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = crash_generation_server.cc; path = crash_generation/crash_generation_server.cc; sourceTree = "<group>"; };
		D2F9A4CE121336F7002747C1 /* crash_generation_server_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = crash_generation_server_test.cc; path = tests/crash_generation_server_test.cc; sourceTree = "<group>"; };
		D2F9A546121383A1002747C1 /* crash_generation_server_test */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = crash_generation_server_test; sourceTree = BUILT_PRODUCTS_DIR; };
		DE43467411C72855004F095F /* da */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = da; path = sender/da.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467511C72857004F095F /* de */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = de; path = sender/de.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467611C7285B004F095F /* es */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = es; path = sender/es.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467711C72862004F095F /* fr */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = fr; path = sender/fr.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467811C72869004F095F /* it */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = it; path = sender/it.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467911C7286D004F095F /* nl */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = nl; path = sender/nl.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467A11C72873004F095F /* no */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = no; path = sender/no.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467B11C72877004F095F /* sl */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = sl; path = sender/sl.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467C11C7287A004F095F /* sv */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = sv; path = sender/sv.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467E11C728DC004F095F /* ja */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = ja; path = sender/ja.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43467F11C728E1004F095F /* tr */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = tr; path = sender/tr.lproj/Localizable.strings; sourceTree = "<group>"; };
		DE43468611C72958004F095F /* de */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = de; path = sender/de.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468711C7295D004F095F /* da */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = da; path = sender/da.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468811C7295F004F095F /* es */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = es; path = sender/es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468911C72964004F095F /* fr */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = fr; path = sender/fr.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468A11C72967004F095F /* it */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = it; path = sender/it.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468B11C7296B004F095F /* ja */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = ja; path = sender/ja.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468C11C7296D004F095F /* nl */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = nl; path = sender/nl.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468D11C7296F004F095F /* no */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = no; path = sender/no.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468E11C72971004F095F /* sl */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = sl; path = sender/sl.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43468F11C72973004F095F /* sv */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = sv; path = sender/sv.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		DE43469011C72976004F095F /* tr */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = tr; path = sender/tr.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		F4DAB1DB19F1027100A5A838 /* launch_reporter.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = launch_reporter.cc; path = ../../common/mac/launch_reporter.cc; sourceTree = SOURCE_ROOT; };
		F4DAB1DC19F1027100A5A838 /* launch_reporter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = launch_reporter.h; path = ../../common/mac/launch_reporter.h; sourceTree = SOURCE_ROOT; };
		F91AF5CF0FD60393009D8BE2 /* BreakpadFramework_Test.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = BreakpadFramework_Test.mm; path = tests/BreakpadFramework_Test.mm; sourceTree = "<group>"; };
		F9286B380F7EB25800A4DCC8 /* Inspector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Inspector.h; path = crash_generation/Inspector.h; sourceTree = "<group>"; };
		F9286B390F7EB25800A4DCC8 /* InspectorMain.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = InspectorMain.mm; path = crash_generation/InspectorMain.mm; sourceTree = "<group>"; };
		F92C53540ECCE349009BE4BA /* Inspector */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = Inspector; sourceTree = BUILT_PRODUCTS_DIR; };
		F92C53670ECCE3FD009BE4BA /* breakpad_exc_server.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = breakpad_exc_server.c; path = handler/breakpad_exc_server.c; sourceTree = SOURCE_ROOT; };
		F92C53680ECCE3FD009BE4BA /* breakpad_exc_server.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = breakpad_exc_server.h; path = handler/breakpad_exc_server.h; sourceTree = SOURCE_ROOT; };
		F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = breakpad_nlist_64.cc; path = handler/breakpad_nlist_64.cc; sourceTree = SOURCE_ROOT; };
		F92C536A0ECCE3FD009BE4BA /* breakpad_nlist_64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = breakpad_nlist_64.h; path = handler/breakpad_nlist_64.h; sourceTree = SOURCE_ROOT; };
		F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dynamic_images.cc; path = handler/dynamic_images.cc; sourceTree = SOURCE_ROOT; };
		F92C536C0ECCE3FD009BE4BA /* dynamic_images.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dynamic_images.h; path = handler/dynamic_images.h; sourceTree = SOURCE_ROOT; };
		F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = exception_handler.cc; path = handler/exception_handler.cc; sourceTree = SOURCE_ROOT; };
		F92C536E0ECCE3FD009BE4BA /* exception_handler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = exception_handler.h; path = handler/exception_handler.h; sourceTree = SOURCE_ROOT; };
		F92C536F0ECCE3FD009BE4BA /* minidump_generator.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = minidump_generator.cc; path = handler/minidump_generator.cc; sourceTree = SOURCE_ROOT; };
		F92C53700ECCE3FD009BE4BA /* minidump_generator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = minidump_generator.h; path = handler/minidump_generator.h; sourceTree = SOURCE_ROOT; };
		F92C53720ECCE3FD009BE4BA /* protected_memory_allocator.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = protected_memory_allocator.cc; path = handler/protected_memory_allocator.cc; sourceTree = SOURCE_ROOT; };
		F92C53730ECCE3FD009BE4BA /* protected_memory_allocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = protected_memory_allocator.h; path = handler/protected_memory_allocator.h; sourceTree = SOURCE_ROOT; };
		F92C53740ECCE635009BE4BA /* file_id.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = file_id.cc; path = ../../common/mac/file_id.cc; sourceTree = SOURCE_ROOT; };
		F92C53750ECCE635009BE4BA /* file_id.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = file_id.h; path = ../../common/mac/file_id.h; sourceTree = SOURCE_ROOT; };
		F92C53760ECCE635009BE4BA /* HTTPMultipartUpload.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HTTPMultipartUpload.h; path = ../../common/mac/HTTPMultipartUpload.h; sourceTree = SOURCE_ROOT; };
		F92C53770ECCE635009BE4BA /* HTTPMultipartUpload.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HTTPMultipartUpload.m; path = ../../common/mac/HTTPMultipartUpload.m; sourceTree = SOURCE_ROOT; };
		F92C53780ECCE635009BE4BA /* MachIPC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MachIPC.h; path = ../../common/mac/MachIPC.h; sourceTree = SOURCE_ROOT; };
		F92C53790ECCE635009BE4BA /* MachIPC.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = MachIPC.mm; path = ../../common/mac/MachIPC.mm; sourceTree = SOURCE_ROOT; };
		F92C537A0ECCE635009BE4BA /* macho_id.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = macho_id.cc; path = ../../common/mac/macho_id.cc; sourceTree = SOURCE_ROOT; };
		F92C537B0ECCE635009BE4BA /* macho_id.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = macho_id.h; path = ../../common/mac/macho_id.h; sourceTree = SOURCE_ROOT; };
		F92C537C0ECCE635009BE4BA /* macho_utilities.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = macho_utilities.cc; path = ../../common/mac/macho_utilities.cc; sourceTree = SOURCE_ROOT; };
		F92C537D0ECCE635009BE4BA /* macho_utilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = macho_utilities.h; path = ../../common/mac/macho_utilities.h; sourceTree = SOURCE_ROOT; };
		F92C537E0ECCE635009BE4BA /* macho_walker.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = macho_walker.cc; path = ../../common/mac/macho_walker.cc; sourceTree = SOURCE_ROOT; };
		F92C537F0ECCE635009BE4BA /* macho_walker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = macho_walker.h; path = ../../common/mac/macho_walker.h; sourceTree = SOURCE_ROOT; };
		F92C53820ECCE635009BE4BA /* string_utilities.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = string_utilities.cc; path = ../../common/mac/string_utilities.cc; sourceTree = SOURCE_ROOT; };
		F92C53830ECCE635009BE4BA /* string_utilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = string_utilities.h; path = ../../common/mac/string_utilities.h; sourceTree = SOURCE_ROOT; };
		F92C53850ECCE6AD009BE4BA /* string_conversion.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = string_conversion.cc; path = ../../common/string_conversion.cc; sourceTree = SOURCE_ROOT; };
		F92C53860ECCE6AD009BE4BA /* string_conversion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = string_conversion.h; path = ../../common/string_conversion.h; sourceTree = SOURCE_ROOT; };
		F92C53870ECCE6C0009BE4BA /* convert_UTF.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = convert_UTF.c; path = ../../common/convert_UTF.c; sourceTree = SOURCE_ROOT; };
		F92C53880ECCE6C0009BE4BA /* convert_UTF.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = convert_UTF.h; path = ../../common/convert_UTF.h; sourceTree = SOURCE_ROOT; };
		F92C538E0ECCE70A009BE4BA /* minidump_file_writer-inl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "minidump_file_writer-inl.h"; path = "../minidump_file_writer-inl.h"; sourceTree = SOURCE_ROOT; };
		F92C538F0ECCE70A009BE4BA /* minidump_file_writer.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = minidump_file_writer.cc; path = ../minidump_file_writer.cc; sourceTree = SOURCE_ROOT; };
		F92C53900ECCE70A009BE4BA /* minidump_file_writer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = minidump_file_writer.h; path = ../minidump_file_writer.h; sourceTree = SOURCE_ROOT; };
		F92C53B70ECCE7B3009BE4BA /* Inspector.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = Inspector.mm; path = crash_generation/Inspector.mm; sourceTree = SOURCE_ROOT; };
		F92C554A0ECCF530009BE4BA /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
		F92C55CE0ECD0064009BE4BA /* Breakpad.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Breakpad.h; path = Framework/Breakpad.h; sourceTree = "<group>"; };
		F92C55CF0ECD0064009BE4BA /* Breakpad.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = Breakpad.mm; path = Framework/Breakpad.mm; sourceTree = "<group>"; };
		F92C56310ECD0DF1009BE4BA /* OnDemandServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OnDemandServer.h; path = Framework/OnDemandServer.h; sourceTree = "<group>"; };
		F92C56320ECD0DF1009BE4BA /* OnDemandServer.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = OnDemandServer.mm; path = Framework/OnDemandServer.mm; sourceTree = "<group>"; };
		F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = breakpadUtilities.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
		F92C56A00ECE04A7009BE4BA /* crash_report_sender.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = crash_report_sender.app; sourceTree = BUILT_PRODUCTS_DIR; };
		F92C56A20ECE04A7009BE4BA /* crash_report_sender-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "crash_report_sender-Info.plist"; path = "sender/crash_report_sender-Info.plist"; sourceTree = "<group>"; };
		F92C56A70ECE04C5009BE4BA /* crash_report_sender.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = crash_report_sender.h; path = sender/crash_report_sender.h; sourceTree = "<group>"; };
		F92C56A80ECE04C5009BE4BA /* crash_report_sender.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = crash_report_sender.m; path = sender/crash_report_sender.m; sourceTree = "<group>"; };
		F93803BE0F80820F004D428B /* generator_test */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = generator_test; sourceTree = BUILT_PRODUCTS_DIR; };
		F93DE2D10F82A67300608B94 /* minidump_file_writer_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = minidump_file_writer_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		F93DE2D70F82A70E00608B94 /* minidump_file_writer_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = minidump_file_writer_unittest.cc; path = ../minidump_file_writer_unittest.cc; sourceTree = SOURCE_ROOT; };
		F93DE32C0F82C55600608B94 /* handler_test */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = handler_test; sourceTree = BUILT_PRODUCTS_DIR; };
		F945849D0F280E3C009A47BF /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = sender/English.lproj/Localizable.strings; sourceTree = "<group>"; };
		F945859D0F78241E009A47BF /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Framework/Info.plist; sourceTree = "<group>"; };
		F95BB87C101F949F00AA053B /* crash_report.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = crash_report.xcodeproj; path = ../../tools/mac/crash_report/crash_report.xcodeproj; sourceTree = SOURCE_ROOT; };
		F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = dump_syms.xcodeproj; path = ../../tools/mac/dump_syms/dump_syms.xcodeproj; sourceTree = SOURCE_ROOT; };
		F95BB894101F94C000AA053B /* symupload.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = symupload.xcodeproj; path = ../../tools/mac/symupload/symupload.xcodeproj; sourceTree = SOURCE_ROOT; };
		F9B6309F100FF96B00D0F4AC /* goArrow.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = goArrow.png; path = sender/goArrow.png; sourceTree = "<group>"; };
		F9C44DA50EF060A8003AEBAA /* BreakpadTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = BreakpadTest.app; sourceTree = BUILT_PRODUCTS_DIR; };
		F9C44DAC0EF07288003AEBAA /* Controller.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Controller.m; path = testapp/Controller.m; sourceTree = "<group>"; };
		F9C44DAD0EF07288003AEBAA /* crashduringload */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; name = crashduringload; path = testapp/crashduringload; sourceTree = "<group>"; };
		F9C44DAE0EF07288003AEBAA /* crashInMain */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.executable"; name = crashInMain; path = testapp/crashInMain; sourceTree = "<group>"; };
		F9C44DAF0EF07288003AEBAA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = testapp/Info.plist; sourceTree = "<group>"; };
		F9C44DB00EF07288003AEBAA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = testapp/main.m; sourceTree = "<group>"; };
		F9C44DB10EF07288003AEBAA /* TestClass.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TestClass.mm; path = testapp/TestClass.mm; sourceTree = "<group>"; };
		F9C44DB90EF072A0003AEBAA /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = testapp/English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		F9C44DBB0EF072A0003AEBAA /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = testapp/English.lproj/MainMenu.xib; sourceTree = "<group>"; };
		F9C44DBF0EF0778F003AEBAA /* Controller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Controller.h; path = testapp/Controller.h; sourceTree = "<group>"; };
		F9C44DC00EF0778F003AEBAA /* TestClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TestClass.h; path = testapp/TestClass.h; sourceTree = "<group>"; };
		F9C44EE40EF0A006003AEBAA /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; };
		F9C44EE70EF0A3C1003AEBAA /* GTMLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GTMLogger.h; path = ../../common/mac/GTMLogger.h; sourceTree = SOURCE_ROOT; };
		F9C44EE80EF0A3C1003AEBAA /* GTMLogger.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GTMLogger.m; path = ../../common/mac/GTMLogger.m; sourceTree = SOURCE_ROOT; };
		F9C77DDA0F7DD5CF0045F7DB /* UnitTests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = UnitTests.octest; sourceTree = BUILT_PRODUCTS_DIR; };
		F9C77DDB0F7DD5CF0045F7DB /* UnitTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "UnitTests-Info.plist"; sourceTree = "<group>"; };
		F9C77E110F7DDF810045F7DB /* GTMSenTestCase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GTMSenTestCase.h; path = ../../common/mac/testing/GTMSenTestCase.h; sourceTree = SOURCE_ROOT; };
		F9C77E120F7DDF810045F7DB /* GTMSenTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = GTMSenTestCase.m; path = ../../common/mac/testing/GTMSenTestCase.m; sourceTree = SOURCE_ROOT; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		8DC2EF560486A6940098B216 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F92C565C0ECD1158009BE4BA /* breakpadUtilities.dylib in Frameworks */,
				8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D23F4BA912A868A500686C8D /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D246418412BAA4BA005170D0 /* Foundation.framework in Frameworks */,
				4DBE49A6134A4F200072546A /* CoreServices.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D2F9A41312131EF0002747C1 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D2F9A53E121383A1002747C1 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D2F9A53F121383A1002747C1 /* Foundation.framework in Frameworks */,
				D2F9A541121383A1002747C1 /* libgtest.a in Frameworks */,
				4DBE49A9134A4F460072546A /* CoreServices.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F92C53520ECCE349009BE4BA /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F92C564C0ECD10DD009BE4BA /* breakpadUtilities.dylib in Frameworks */,
				F92C554C0ECCF534009BE4BA /* Foundation.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F92C563A0ECD10B3009BE4BA /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				8B31FC8211EFD2B800FCF3E4 /* Foundation.framework in Frameworks */,
				F92C56570ECD113E009BE4BA /* Carbon.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F92C569E0ECE04A7009BE4BA /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F9C44EE50EF0A006003AEBAA /* SystemConfiguration.framework in Frameworks */,
				8B3101C611F0CD9F00FCF3E4 /* AppKit.framework in Frameworks */,
				8B3101C711F0CD9F00FCF3E4 /* Foundation.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F93803BC0F80820F004D428B /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				8B31029411F0D54300FCF3E4 /* Foundation.framework in Frameworks */,
				D23F4B3312A7E17700686C8D /* libgtest.a in Frameworks */,
				4DBE49A7134A4F280072546A /* CoreServices.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F93DE2CF0F82A67300608B94 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F93DE32A0F82C55600608B94 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				8B3102E611F0D74C00FCF3E4 /* Foundation.framework in Frameworks */,
				D2F9A44412131F84002747C1 /* libgtest.a in Frameworks */,
				4DBE49A8134A4F380072546A /* CoreServices.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F9C44DA30EF060A8003AEBAA /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F9C44E000EF077CD003AEBAA /* Breakpad.framework in Frameworks */,
				8B3101CA11F0CDB000FCF3E4 /* AppKit.framework in Frameworks */,
				8B3101CB11F0CDB000FCF3E4 /* Foundation.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F9C77DD70F7DD5CF0045F7DB /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F91AF6210FD60784009D8BE2 /* Breakpad.framework in Frameworks */,
				8B3101EA11F0CDE300FCF3E4 /* SenTestingKit.framework in Frameworks */,
				8B3102EB11F0D78000FCF3E4 /* Foundation.framework in Frameworks */,
				D24BBBFD121050F000F3D417 /* breakpadUtilities.dylib in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		034768DFFF38A50411DB9C8B /* Products */ = {
			isa = PBXGroup;
			children = (
				8DC2EF5B0486A6940098B216 /* Breakpad.framework */,
				F92C53540ECCE349009BE4BA /* Inspector */,
				F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */,
				F92C56A00ECE04A7009BE4BA /* crash_report_sender.app */,
				F9C44DA50EF060A8003AEBAA /* BreakpadTest.app */,
				F9C77DDA0F7DD5CF0045F7DB /* UnitTests.octest */,
				F93803BE0F80820F004D428B /* generator_test */,
				F93DE2D10F82A67300608B94 /* minidump_file_writer_unittest */,
				F93DE32C0F82C55600608B94 /* handler_test */,
				D2F9A41512131EF0002747C1 /* libgtest.a */,
				D2F9A546121383A1002747C1 /* crash_generation_server_test */,
				D23F4BAB12A868A500686C8D /* minidump_generator_test_helper */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		0867D691FE84028FC02AAC07 /* Breakpad */ = {
			isa = PBXGroup;
			children = (
				D2F9A43812131F3B002747C1 /* gtest */,
				8B31FFF611F0C90500FCF3E4 /* Breakpad.xcconfig */,
				8B31027711F0D3AF00FCF3E4 /* BreakpadDebug.xcconfig */,
				8B31027811F0D3AF00FCF3E4 /* BreakpadRelease.xcconfig */,
				F95BB8A3101F94C300AA053B /* Tools */,
				32DBCF5E0370ADEE00C91783 /* Breakpad_Prefix.pch */,
				F92C538D0ECCE6F2009BE4BA /* client */,
				F92C53600ECCE3D6009BE4BA /* common */,
				D244536912426EE7009BBCE0 /* processor */,
				0867D69AFE84028FC02AAC07 /* Frameworks */,
				034768DFFF38A50411DB9C8B /* Products */,
				F9C77DDB0F7DD5CF0045F7DB /* UnitTests-Info.plist */,
			);
			name = Breakpad;
			sourceTree = "<group>";
		};
		0867D69AFE84028FC02AAC07 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				8B3101E911F0CDE300FCF3E4 /* SenTestingKit.framework */,
				F9C44EE40EF0A006003AEBAA /* SystemConfiguration.framework */,
				F92C554A0ECCF530009BE4BA /* Carbon.framework */,
				1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */,
				0867D6A5FE840307C02AAC07 /* AppKit.framework */,
				0867D69BFE84028FC02AAC07 /* Foundation.framework */,
				4DBE4769134A4F080072546A /* CoreServices.framework */,
			);
			name = Frameworks;
			sourceTree = "<group>";
		};
		16C7C915147D45AE00776EAD /* apple */ = {
			isa = PBXGroup;
			children = (
				16C7C916147D45AE00776EAD /* Framework */,
			);
			name = apple;
			path = ../apple;
			sourceTree = SOURCE_ROOT;
		};
		16C7C916147D45AE00776EAD /* Framework */ = {
			isa = PBXGroup;
			children = (
				16C7C917147D45AE00776EAD /* BreakpadDefines.h */,
			);
			path = Framework;
			sourceTree = "<group>";
		};
		D244536912426EE7009BBCE0 /* processor */ = {
			isa = PBXGroup;
			children = (
				D244535112426EBB009BBCE0 /* logging.cc */,
				D244535212426EBB009BBCE0 /* minidump.cc */,
				D244535312426EBB009BBCE0 /* pathname_stripper.cc */,
				D244534F12426E98009BBCE0 /* basic_code_modules.cc */,
			);
			name = processor;
			sourceTree = "<group>";
		};
		D2F9A43812131F3B002747C1 /* gtest */ = {
			isa = PBXGroup;
			children = (
				D2F9A43E12131F65002747C1 /* gtest_main.cc */,
				D2F9A43F12131F65002747C1 /* gtest-all.cc */,
				D2F9A43C12131F55002747C1 /* gmock-all.cc */,
			);
			name = gtest;
			sourceTree = "<group>";
		};
		F92C53590ECCE3BB009BE4BA /* handler */ = {
			isa = PBXGroup;
			children = (
				F92C53670ECCE3FD009BE4BA /* breakpad_exc_server.c */,
				F92C53680ECCE3FD009BE4BA /* breakpad_exc_server.h */,
				F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */,
				F92C536A0ECCE3FD009BE4BA /* breakpad_nlist_64.h */,
				F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */,
				F92C536C0ECCE3FD009BE4BA /* dynamic_images.h */,
				F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */,
				F92C536E0ECCE3FD009BE4BA /* exception_handler.h */,
				F92C536F0ECCE3FD009BE4BA /* minidump_generator.cc */,
				F92C53700ECCE3FD009BE4BA /* minidump_generator.h */,
				F92C53720ECCE3FD009BE4BA /* protected_memory_allocator.cc */,
				F92C53730ECCE3FD009BE4BA /* protected_memory_allocator.h */,
			);
			name = handler;
			sourceTree = "<group>";
		};
		F92C53600ECCE3D6009BE4BA /* common */ = {
			isa = PBXGroup;
			children = (
				D244540A12439BA0009BBCE0 /* memory_unittest.cc */,
				F92C53870ECCE6C0009BE4BA /* convert_UTF.c */,
				F92C53880ECCE6C0009BE4BA /* convert_UTF.h */,
				4D72CA0D13DFAD5C006CABE3 /* md5.cc */,
				1EEEB6211720829E00F7E689 /* simple_string_dictionary.cc */,
				1EEEB6221720829E00F7E689 /* simple_string_dictionary.h */,
				F92C53850ECCE6AD009BE4BA /* string_conversion.cc */,
				F92C53860ECCE6AD009BE4BA /* string_conversion.h */,
				F92C53840ECCE68D009BE4BA /* mac */,
			);
			name = common;
			sourceTree = "<group>";
		};
		F92C53840ECCE68D009BE4BA /* mac */ = {
			isa = PBXGroup;
			children = (
				162F64F0161C577500CD68D5 /* arch_utilities.cc */,
				162F64F1161C577500CD68D5 /* arch_utilities.h */,
				8B31007011F0CD3C00FCF3E4 /* GTMDefines.h */,
				F9C77E0F0F7DDF650045F7DB /* testing */,
				F9C44EE70EF0A3C1003AEBAA /* GTMLogger.h */,
				F9C44EE80EF0A3C1003AEBAA /* GTMLogger.m */,
				F92C53740ECCE635009BE4BA /* file_id.cc */,
				F92C53750ECCE635009BE4BA /* file_id.h */,
				F92C53760ECCE635009BE4BA /* HTTPMultipartUpload.h */,
				F92C53770ECCE635009BE4BA /* HTTPMultipartUpload.m */,
				F4DAB1DB19F1027100A5A838 /* launch_reporter.cc */,
				F4DAB1DC19F1027100A5A838 /* launch_reporter.h */,
				F92C53780ECCE635009BE4BA /* MachIPC.h */,
				F92C53790ECCE635009BE4BA /* MachIPC.mm */,
				4D61A25D14F43CFC002D5862 /* bootstrap_compat.cc */,
				4D61A25E14F43CFC002D5862 /* bootstrap_compat.h */,
				F92C537A0ECCE635009BE4BA /* macho_id.cc */,
				F92C537B0ECCE635009BE4BA /* macho_id.h */,
				F92C537C0ECCE635009BE4BA /* macho_utilities.cc */,
				F92C537D0ECCE635009BE4BA /* macho_utilities.h */,
				F92C537E0ECCE635009BE4BA /* macho_walker.cc */,
				F92C537F0ECCE635009BE4BA /* macho_walker.h */,
				F92C53820ECCE635009BE4BA /* string_utilities.cc */,
				F92C53830ECCE635009BE4BA /* string_utilities.h */,
			);
			name = mac;
			sourceTree = "<group>";
		};
		F92C538D0ECCE6F2009BE4BA /* client */ = {
			isa = PBXGroup;
			children = (
				16C7C915147D45AE00776EAD /* apple */,
				F92C53990ECCE78E009BE4BA /* mac */,
				F92C538E0ECCE70A009BE4BA /* minidump_file_writer-inl.h */,
				F92C538F0ECCE70A009BE4BA /* minidump_file_writer.cc */,
				F92C53900ECCE70A009BE4BA /* minidump_file_writer.h */,
				F93DE2D70F82A70E00608B94 /* minidump_file_writer_unittest.cc */,
			);
			name = client;
			sourceTree = "<group>";
		};
		F92C53990ECCE78E009BE4BA /* mac */ = {
			isa = PBXGroup;
			children = (
				F9C77DDF0F7DD7CF0045F7DB /* tests */,
				F9C44DAB0EF0726F003AEBAA /* testapp */,
				F92C56A60ECE04B6009BE4BA /* sender */,
				F92C55CD0ECD0053009BE4BA /* Framework */,
				F92C53B50ECCE799009BE4BA /* crash_generation */,
				F92C53590ECCE3BB009BE4BA /* handler */,
			);
			name = mac;
			sourceTree = "<group>";
		};
		F92C53B50ECCE799009BE4BA /* crash_generation */ = {
			isa = PBXGroup;
			children = (
				163201D41443019E00C4DBF5 /* ConfigFile.h */,
				163201D51443019E00C4DBF5 /* ConfigFile.mm */,
				D2F9A4C4121336C7002747C1 /* client_info.h */,
				D2F9A4C5121336C7002747C1 /* crash_generation_client.h */,
				D2F9A4C6121336C7002747C1 /* crash_generation_client.cc */,
				D2F9A4C7121336C7002747C1 /* crash_generation_server.h */,
				D2F9A4C8121336C7002747C1 /* crash_generation_server.cc */,
				F9286B380F7EB25800A4DCC8 /* Inspector.h */,
				F9286B390F7EB25800A4DCC8 /* InspectorMain.mm */,
				F92C53B70ECCE7B3009BE4BA /* Inspector.mm */,
			);
			name = crash_generation;
			sourceTree = "<group>";
		};
		F92C55CD0ECD0053009BE4BA /* Framework */ = {
			isa = PBXGroup;
			children = (
				F945859D0F78241E009A47BF /* Info.plist */,
				F92C56310ECD0DF1009BE4BA /* OnDemandServer.h */,
				F92C56320ECD0DF1009BE4BA /* OnDemandServer.mm */,
				F92C55CE0ECD0064009BE4BA /* Breakpad.h */,
				F92C55CF0ECD0064009BE4BA /* Breakpad.mm */,
			);
			name = Framework;
			sourceTree = "<group>";
		};
		F92C56A60ECE04B6009BE4BA /* sender */ = {
			isa = PBXGroup;
			children = (
				16E02DB4147410D4008C604D /* uploader.mm */,
				163202431443201300C4DBF5 /* uploader.h */,
				F9B6309F100FF96B00D0F4AC /* goArrow.png */,
				F92C56A70ECE04C5009BE4BA /* crash_report_sender.h */,
				F92C56A80ECE04C5009BE4BA /* crash_report_sender.m */,
				F945849C0F280E3C009A47BF /* Localizable.strings */,
				33880C7E0F9E097100817F82 /* InfoPlist.strings */,
				3329D4EC0FA16D820007BBC5 /* Breakpad.xib */,
				4084699C0F5D9CF900FDCA37 /* crash_report_sender.icns */,
				F92C56A20ECE04A7009BE4BA /* crash_report_sender-Info.plist */,
			);
			name = sender;
			sourceTree = "<group>";
		};
		F95BB87D101F949F00AA053B /* Products */ = {
			isa = PBXGroup;
			children = (
				F95BB885101F949F00AA053B /* crash_report */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		F95BB88A101F94AC00AA053B /* Products */ = {
			isa = PBXGroup;
			children = (
				F95BB892101F94AC00AA053B /* dump_syms */,
				8B31F7A111EF9A8700FCF3E4 /* macho_dump */,
				8B31F7A311EF9A8700FCF3E4 /* libgtestmockall.a */,
				8B31F7A511EF9A8700FCF3E4 /* byte_cursor_unittest */,
				8B31F7A711EF9A8700FCF3E4 /* macho_reader_unittest */,
				8B31F7A911EF9A8700FCF3E4 /* stabs_reader_unittest */,
				8B31F7AB11EF9A8700FCF3E4 /* bytereader_unittest */,
				8B31F7AD11EF9A8700FCF3E4 /* dwarf2reader_cfi_unittest */,
				8B31F7AF11EF9A8700FCF3E4 /* dwarf2diehandler_unittest */,
				8B31F7B111EF9A8700FCF3E4 /* dwarf_cu_to_module_unittest */,
				8B31F7B311EF9A8700FCF3E4 /* dwarf_line_to_module_unittest */,
				8B31F7B511EF9A8700FCF3E4 /* dwarf_cfi_to_module_unittest */,
				8B31F7B711EF9A8700FCF3E4 /* stabs_to_module_unittest */,
				8B31F7B911EF9A8700FCF3E4 /* module_unittest */,
				8B31F7BB11EF9A8700FCF3E4 /* test_assembler_unittest */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		F95BB895101F94C000AA053B /* Products */ = {
			isa = PBXGroup;
			children = (
				F95BB89F101F94C000AA053B /* symupload */,
				F95BB8A1101F94C000AA053B /* minidump_upload */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		F95BB8A3101F94C300AA053B /* Tools */ = {
			isa = PBXGroup;
			children = (
				F95BB894101F94C000AA053B /* symupload.xcodeproj */,
				F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */,
				F95BB87C101F949F00AA053B /* crash_report.xcodeproj */,
			);
			name = Tools;
			sourceTree = "<group>";
		};
		F9C44DAB0EF0726F003AEBAA /* testapp */ = {
			isa = PBXGroup;
			children = (
				F9C44DBF0EF0778F003AEBAA /* Controller.h */,
				F9C44DC00EF0778F003AEBAA /* TestClass.h */,
				F9C44DB80EF072A0003AEBAA /* InfoPlist.strings */,
				F9C44DBA0EF072A0003AEBAA /* MainMenu.xib */,
				F9C44DAC0EF07288003AEBAA /* Controller.m */,
				F9C44DAD0EF07288003AEBAA /* crashduringload */,
				F9C44DAE0EF07288003AEBAA /* crashInMain */,
				F9C44DAF0EF07288003AEBAA /* Info.plist */,
				F9C44DB00EF07288003AEBAA /* main.m */,
				F9C44DB10EF07288003AEBAA /* TestClass.mm */,
			);
			name = testapp;
			sourceTree = "<group>";
		};
		F9C77DDF0F7DD7CF0045F7DB /* tests */ = {
			isa = PBXGroup;
			children = (
				1EEEB6251720830600F7E689 /* simple_string_dictionary_unittest.cc */,
				D23F4B9A12A8688800686C8D /* minidump_generator_test_helper.cc */,
				D23F4B2C12A7E13200686C8D /* minidump_generator_test.cc */,
				D2F9A4CE121336F7002747C1 /* crash_generation_server_test.cc */,
				D2F9A3D41212F87C002747C1 /* exception_handler_test.cc */,
				F91AF5CF0FD60393009D8BE2 /* BreakpadFramework_Test.mm */,
			);
			name = tests;
			sourceTree = "<group>";
		};
		F9C77E0F0F7DDF650045F7DB /* testing */ = {
			isa = PBXGroup;
			children = (
				F9C77E110F7DDF810045F7DB /* GTMSenTestCase.h */,
				F9C77E120F7DDF810045F7DB /* GTMSenTestCase.m */,
			);
			name = testing;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		8DC2EF500486A6940098B216 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F92C55D00ECD0064009BE4BA /* Breakpad.h in Headers */,
				F92C56330ECD0DF1009BE4BA /* OnDemandServer.h in Headers */,
				D2F9A4C9121336C7002747C1 /* client_info.h in Headers */,
				D2F9A4CA121336C7002747C1 /* crash_generation_client.h in Headers */,
				D2F9A4CC121336C7002747C1 /* crash_generation_server.h in Headers */,
				163201D61443019E00C4DBF5 /* ConfigFile.h in Headers */,
				16C7C918147D45AE00776EAD /* BreakpadDefines.h in Headers */,
				162F64F3161C577500CD68D5 /* arch_utilities.h in Headers */,
				F4DAB1DE19F1027100A5A838 /* launch_reporter.h in Headers */,
				1EEEB6241720829E00F7E689 /* simple_string_dictionary.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D2F9A41112131EF0002747C1 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F92C56380ECD10B3009BE4BA /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		8DC2EF4F0486A6940098B216 /* Breakpad */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "Breakpad" */;
			buildPhases = (
				F97A0E850ED4EC15008784D3 /* Change install name of breakpadUtilities */,
				8DC2EF500486A6940098B216 /* Headers */,
				8DC2EF520486A6940098B216 /* Resources */,
				8DC2EF540486A6940098B216 /* Sources */,
				8DC2EF560486A6940098B216 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				F92C56860ECD15EF009BE4BA /* PBXTargetDependency */,
				F92C56880ECD15F1009BE4BA /* PBXTargetDependency */,
				F9C44E970EF09F4B003AEBAA /* PBXTargetDependency */,
			);
			name = Breakpad;
			productInstallPath = "$(HOME)/Library/Frameworks";
			productName = Breakpad;
			productReference = 8DC2EF5B0486A6940098B216 /* Breakpad.framework */;
			productType = "com.apple.product-type.framework";
		};
		D23F4BAA12A868A500686C8D /* minidump_generator_test_helper */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = D23F4BB012A868C400686C8D /* Build configuration list for PBXNativeTarget "minidump_generator_test_helper" */;
			buildPhases = (
				D23F4BA812A868A500686C8D /* Sources */,
				D23F4BA912A868A500686C8D /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = minidump_generator_test_helper;
			productName = minidump_generator_test_helper;
			productReference = D23F4BAB12A868A500686C8D /* minidump_generator_test_helper */;
			productType = "com.apple.product-type.tool";
		};
		D2F9A41412131EF0002747C1 /* gtest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = D2F9A42D12131F0E002747C1 /* Build configuration list for PBXNativeTarget "gtest" */;
			buildPhases = (
				D2F9A41112131EF0002747C1 /* Headers */,
				D2F9A41212131EF0002747C1 /* Sources */,
				D2F9A41312131EF0002747C1 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = gtest;
			productName = gtest;
			productReference = D2F9A41512131EF0002747C1 /* libgtest.a */;
			productType = "com.apple.product-type.library.static";
		};
		D2F9A52A121383A1002747C1 /* crash_generation_server_test */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = D2F9A542121383A1002747C1 /* Build configuration list for PBXNativeTarget "crash_generation_server_test" */;
			buildPhases = (
				D2F9A52D121383A1002747C1 /* Sources */,
				D2F9A53E121383A1002747C1 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				D2F9A52B121383A1002747C1 /* PBXTargetDependency */,
			);
			name = crash_generation_server_test;
			productName = handler_test;
			productReference = D2F9A546121383A1002747C1 /* crash_generation_server_test */;
			productType = "com.apple.product-type.tool";
		};
		F92C53530ECCE349009BE4BA /* Inspector */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F92C53580ECCE36D009BE4BA /* Build configuration list for PBXNativeTarget "Inspector" */;
			buildPhases = (
				F94584840F27FB40009A47BF /* Change install name of breakpadUtilities */,
				F92C53510ECCE349009BE4BA /* Sources */,
				F92C53520ECCE349009BE4BA /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				F92C564E0ECD10E5009BE4BA /* PBXTargetDependency */,
			);
			name = Inspector;
			productName = Inspector;
			productReference = F92C53540ECCE349009BE4BA /* Inspector */;
			productType = "com.apple.product-type.tool";
		};
		F92C563B0ECD10B3009BE4BA /* breakpadUtilities */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F92C56670ECD11A3009BE4BA /* Build configuration list for PBXNativeTarget "breakpadUtilities" */;
			buildPhases = (
				F92C56380ECD10B3009BE4BA /* Headers */,
				F92C56390ECD10B3009BE4BA /* Sources */,
				F92C563A0ECD10B3009BE4BA /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = breakpadUtilities;
			productName = breakpadUtilities;
			productReference = F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */;
			productType = "com.apple.product-type.library.dynamic";
		};
		F92C569F0ECE04A7009BE4BA /* crash_report_sender */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F92C56A50ECE04A8009BE4BA /* Build configuration list for PBXNativeTarget "crash_report_sender" */;
			buildPhases = (
				F92C569C0ECE04A7009BE4BA /* Resources */,
				F92C569D0ECE04A7009BE4BA /* Sources */,
				F92C569E0ECE04A7009BE4BA /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = crash_report_sender;
			productName = crash_report_sender;
			productReference = F92C56A00ECE04A7009BE4BA /* crash_report_sender.app */;
			productType = "com.apple.product-type.application";
		};
		F93803BD0F80820F004D428B /* generator_test */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F93803C40F80822E004D428B /* Build configuration list for PBXNativeTarget "generator_test" */;
			buildPhases = (
				F93803BB0F80820F004D428B /* Sources */,
				F93803BC0F80820F004D428B /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				D23F4B3012A7E16200686C8D /* PBXTargetDependency */,
				D23F4BBA12A8694C00686C8D /* PBXTargetDependency */,
			);
			name = generator_test;
			productName = generator_test;
			productReference = F93803BE0F80820F004D428B /* generator_test */;
			productType = "com.apple.product-type.tool";
		};
		F93DE2D00F82A67300608B94 /* minidump_file_writer_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F93DE2D60F82A67700608B94 /* Build configuration list for PBXNativeTarget "minidump_file_writer_unittest" */;
			buildPhases = (
				F93DE2CE0F82A67300608B94 /* Sources */,
				F93DE2CF0F82A67300608B94 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = minidump_file_writer_unittest;
			productName = minidump_file_writer_unittest;
			productReference = F93DE2D10F82A67300608B94 /* minidump_file_writer_unittest */;
			productType = "com.apple.product-type.tool";
		};
		F93DE32B0F82C55600608B94 /* handler_test */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F93DE3320F82C5D800608B94 /* Build configuration list for PBXNativeTarget "handler_test" */;
			buildPhases = (
				F93DE3290F82C55600608B94 /* Sources */,
				F93DE32A0F82C55600608B94 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				D2F9A44312131F80002747C1 /* PBXTargetDependency */,
			);
			name = handler_test;
			productName = handler_test;
			productReference = F93DE32C0F82C55600608B94 /* handler_test */;
			productType = "com.apple.product-type.tool";
		};
		F9C44DA40EF060A8003AEBAA /* BreakpadTest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F9C44DAA0EF060A9003AEBAA /* Build configuration list for PBXNativeTarget "BreakpadTest" */;
			buildPhases = (
				F9C44DA10EF060A8003AEBAA /* Resources */,
				F9C44DA20EF060A8003AEBAA /* Sources */,
				F9C44DA30EF060A8003AEBAA /* Frameworks */,
				F9C44E410EF08B17003AEBAA /* Copy Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				F9C44E1A0EF0790F003AEBAA /* PBXTargetDependency */,
			);
			name = BreakpadTest;
			productName = BreakpadTest;
			productReference = F9C44DA50EF060A8003AEBAA /* BreakpadTest.app */;
			productType = "com.apple.product-type.application";
		};
		F9C77DD90F7DD5CF0045F7DB /* UnitTests */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = F9C77DDE0F7DD5D00045F7DB /* Build configuration list for PBXNativeTarget "UnitTests" */;
			buildPhases = (
				F9C77DD50F7DD5CF0045F7DB /* Resources */,
				F9C77DD60F7DD5CF0045F7DB /* Sources */,
				F9C77DD70F7DD5CF0045F7DB /* Frameworks */,
				F9C77DD80F7DD5CF0045F7DB /* ShellScript */,
			);
			buildRules = (
			);
			dependencies = (
				F93DE2FC0F82C3C600608B94 /* PBXTargetDependency */,
				F93DE3700F82CC1300608B94 /* PBXTargetDependency */,
				F91AF6380FD60A74009D8BE2 /* PBXTargetDependency */,
				D2F9A5DF12142A6A002747C1 /* PBXTargetDependency */,
			);
			name = UnitTests;
			productName = UnitTests;
			productReference = F9C77DDA0F7DD5CF0045F7DB /* UnitTests.octest */;
			productType = "com.apple.product-type.bundle";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		0867D690FE84028FC02AAC07 /* Project object */ = {
			isa = PBXProject;
			buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "Breakpad" */;
			compatibilityVersion = "Xcode 3.1";
			developmentRegion = English;
			hasScannedForEncodings = 1;
			knownRegions = (
				English,
				da,
				de,
				es,
				fr,
				it,
				ja,
				nl,
				no,
				sl,
				sv,
				tr,
			);
			mainGroup = 0867D691FE84028FC02AAC07 /* Breakpad */;
			productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
			projectDirPath = "";
			projectReferences = (
				{
					ProductGroup = F95BB87D101F949F00AA053B /* Products */;
					ProjectRef = F95BB87C101F949F00AA053B /* crash_report.xcodeproj */;
				},
				{
					ProductGroup = F95BB88A101F94AC00AA053B /* Products */;
					ProjectRef = F95BB889101F94AC00AA053B /* dump_syms.xcodeproj */;
				},
				{
					ProductGroup = F95BB895101F94C000AA053B /* Products */;
					ProjectRef = F95BB894101F94C000AA053B /* symupload.xcodeproj */;
				},
			);
			projectRoot = "";
			targets = (
				8DC2EF4F0486A6940098B216 /* Breakpad */,
				F92C53530ECCE349009BE4BA /* Inspector */,
				F92C563B0ECD10B3009BE4BA /* breakpadUtilities */,
				F92C569F0ECE04A7009BE4BA /* crash_report_sender */,
				F9C44DA40EF060A8003AEBAA /* BreakpadTest */,
				F94585840F782326009A47BF /* All */,
				F9C77DD90F7DD5CF0045F7DB /* UnitTests */,
				F93803BD0F80820F004D428B /* generator_test */,
				F93DE2D00F82A67300608B94 /* minidump_file_writer_unittest */,
				F93DE32B0F82C55600608B94 /* handler_test */,
				D2F9A41412131EF0002747C1 /* gtest */,
				D2F9A52A121383A1002747C1 /* crash_generation_server_test */,
				D23F4BAA12A868A500686C8D /* minidump_generator_test_helper */,
			);
		};
/* End PBXProject section */

/* Begin PBXReferenceProxy section */
		8B31F7A111EF9A8700FCF3E4 /* macho_dump */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = macho_dump;
			remoteRef = 8B31F7A011EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7A311EF9A8700FCF3E4 /* libgtestmockall.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libgtestmockall.a;
			remoteRef = 8B31F7A211EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7A511EF9A8700FCF3E4 /* byte_cursor_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = byte_cursor_unittest;
			remoteRef = 8B31F7A411EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7A711EF9A8700FCF3E4 /* macho_reader_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = macho_reader_unittest;
			remoteRef = 8B31F7A611EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7A911EF9A8700FCF3E4 /* stabs_reader_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = stabs_reader_unittest;
			remoteRef = 8B31F7A811EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7AB11EF9A8700FCF3E4 /* bytereader_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = bytereader_unittest;
			remoteRef = 8B31F7AA11EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7AD11EF9A8700FCF3E4 /* dwarf2reader_cfi_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = dwarf2reader_cfi_unittest;
			remoteRef = 8B31F7AC11EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7AF11EF9A8700FCF3E4 /* dwarf2diehandler_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = dwarf2diehandler_unittest;
			remoteRef = 8B31F7AE11EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7B111EF9A8700FCF3E4 /* dwarf_cu_to_module_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = dwarf_cu_to_module_unittest;
			remoteRef = 8B31F7B011EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7B311EF9A8700FCF3E4 /* dwarf_line_to_module_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = dwarf_line_to_module_unittest;
			remoteRef = 8B31F7B211EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7B511EF9A8700FCF3E4 /* dwarf_cfi_to_module_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = dwarf_cfi_to_module_unittest;
			remoteRef = 8B31F7B411EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7B711EF9A8700FCF3E4 /* stabs_to_module_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = stabs_to_module_unittest;
			remoteRef = 8B31F7B611EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7B911EF9A8700FCF3E4 /* module_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = module_unittest;
			remoteRef = 8B31F7B811EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		8B31F7BB11EF9A8700FCF3E4 /* test_assembler_unittest */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = test_assembler_unittest;
			remoteRef = 8B31F7BA11EF9A8700FCF3E4 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		F95BB885101F949F00AA053B /* crash_report */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = crash_report;
			remoteRef = F95BB884101F949F00AA053B /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		F95BB892101F94AC00AA053B /* dump_syms */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = dump_syms;
			remoteRef = F95BB891101F94AC00AA053B /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		F95BB89F101F94C000AA053B /* symupload */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = symupload;
			remoteRef = F95BB89E101F94C000AA053B /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		F95BB8A1101F94C000AA053B /* minidump_upload */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = minidump_upload;
			remoteRef = F95BB8A0101F94C000AA053B /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
/* End PBXReferenceProxy section */

/* Begin PBXResourcesBuildPhase section */
		8DC2EF520486A6940098B216 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F9C44E980EF09F56003AEBAA /* crash_report_sender.app in Resources */,
				F92C568A0ECD15F9009BE4BA /* Inspector in Resources */,
				F92C56650ECD1185009BE4BA /* breakpadUtilities.dylib in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F92C569C0ECE04A7009BE4BA /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F945849E0F280E3C009A47BF /* Localizable.strings in Resources */,
				4084699D0F5D9CF900FDCA37 /* crash_report_sender.icns in Resources */,
				33880C800F9E097100817F82 /* InfoPlist.strings in Resources */,
				3329D4ED0FA16D820007BBC5 /* Breakpad.xib in Resources */,
				F9B630A0100FF96B00D0F4AC /* goArrow.png in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F9C44DA10EF060A8003AEBAA /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F9C44DB30EF07288003AEBAA /* crashduringload in Resources */,
				F9C44DB40EF07288003AEBAA /* crashInMain in Resources */,
				F9C44DBC0EF072A0003AEBAA /* InfoPlist.strings in Resources */,
				F9C44DBD0EF072A0003AEBAA /* MainMenu.xib in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F9C77DD50F7DD5CF0045F7DB /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
		F94584840F27FB40009A47BF /* Change install name of breakpadUtilities */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Change install name of breakpadUtilities";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "install_name_tool -id \"@executable_path/../Resources/breakpadUtilities.dylib\" \"${BUILT_PRODUCTS_DIR}/breakpadUtilities.dylib\"\n";
		};
		F97A0E850ED4EC15008784D3 /* Change install name of breakpadUtilities */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Change install name of breakpadUtilities";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "#!/bin/bash\ninstall_name_tool -id \"@executable_path/../Frameworks/Breakpad.framework/Resources/breakpadUtilities.dylib\" \"${BUILT_PRODUCTS_DIR}/breakpadUtilities.dylib\"\n";
		};
		F9C77DD80F7DD5CF0045F7DB /* ShellScript */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n\necho running minidump generator tests...\n\"${BUILT_PRODUCTS_DIR}/generator_test\"\necho Running exception handler tests...\n\"${BUILT_PRODUCTS_DIR}/handler_test\"\necho Running crash generation server tests...\n\"${BUILT_PRODUCTS_DIR}/crash_generation_server_test\"\n";
		};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		8DC2EF540486A6940098B216 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F92C565F0ECD116B009BE4BA /* protected_memory_allocator.cc in Sources */,
				F92C56630ECD1179009BE4BA /* exception_handler.cc in Sources */,
				F92C55D10ECD0064009BE4BA /* Breakpad.mm in Sources */,
				F4DAB1DD19F1027100A5A838 /* launch_reporter.cc in Sources */,
				F92C56340ECD0DF1009BE4BA /* OnDemandServer.mm in Sources */,
				D2F9A4CB121336C7002747C1 /* crash_generation_client.cc in Sources */,
				D2F9A4CD121336C7002747C1 /* crash_generation_server.cc in Sources */,
				163201D71443019E00C4DBF5 /* ConfigFile.mm in Sources */,
				162F64F2161C577500CD68D5 /* arch_utilities.cc in Sources */,
				1EEEB6231720829E00F7E689 /* simple_string_dictionary.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D23F4BA812A868A500686C8D /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D23F4BB112A868CB00686C8D /* minidump_generator_test_helper.cc in Sources */,
				D23F4BB812A868F700686C8D /* MachIPC.mm in Sources */,
				D246417012BAA40E005170D0 /* exception_handler.cc in Sources */,
				D246417112BAA41C005170D0 /* crash_generation_client.cc in Sources */,
				D246417512BAA438005170D0 /* minidump_generator.cc in Sources */,
				D246417612BAA43F005170D0 /* dynamic_images.cc in Sources */,
				D246417712BAA444005170D0 /* breakpad_nlist_64.cc in Sources */,
				D246418812BAA4E3005170D0 /* string_utilities.cc in Sources */,
				D246418C12BAA508005170D0 /* minidump_file_writer.cc in Sources */,
				D246419012BAA52A005170D0 /* string_conversion.cc in Sources */,
				D246419112BAA52F005170D0 /* convert_UTF.c in Sources */,
				D246419512BAA54C005170D0 /* file_id.cc in Sources */,
				D246419612BAA55A005170D0 /* macho_id.cc in Sources */,
				D24641A012BAA67F005170D0 /* macho_walker.cc in Sources */,
				D24641AF12BAA82D005170D0 /* macho_utilities.cc in Sources */,
				4D72CA2513DFAE1C006CABE3 /* md5.cc in Sources */,
				4D61A26C14F43D42002D5862 /* bootstrap_compat.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D2F9A41212131EF0002747C1 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D2F9A43D12131F55002747C1 /* gmock-all.cc in Sources */,
				D2F9A44012131F65002747C1 /* gtest_main.cc in Sources */,
				D2F9A44112131F65002747C1 /* gtest-all.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D2F9A52D121383A1002747C1 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D2F9A553121383DC002747C1 /* crash_generation_server_test.cc in Sources */,
				D2F9A52E121383A1002747C1 /* crash_generation_client.cc in Sources */,
				D2F9A52F121383A1002747C1 /* crash_generation_server.cc in Sources */,
				D2F9A530121383A1002747C1 /* MachIPC.mm in Sources */,
				D2F9A531121383A1002747C1 /* breakpad_nlist_64.cc in Sources */,
				D2F9A532121383A1002747C1 /* dynamic_images.cc in Sources */,
				D2F9A533121383A1002747C1 /* exception_handler.cc in Sources */,
				D2F9A534121383A1002747C1 /* minidump_generator.cc in Sources */,
				D2F9A535121383A1002747C1 /* minidump_file_writer.cc in Sources */,
				D2F9A536121383A1002747C1 /* convert_UTF.c in Sources */,
				D2F9A537121383A1002747C1 /* string_conversion.cc in Sources */,
				D2F9A538121383A1002747C1 /* file_id.cc in Sources */,
				D2F9A539121383A1002747C1 /* macho_id.cc in Sources */,
				D2F9A53A121383A1002747C1 /* macho_utilities.cc in Sources */,
				D2F9A53B121383A1002747C1 /* macho_walker.cc in Sources */,
				D2F9A53C121383A1002747C1 /* string_utilities.cc in Sources */,
				D24641EC12BAC6FB005170D0 /* logging.cc in Sources */,
				D24641ED12BAC6FB005170D0 /* minidump.cc in Sources */,
				D24641EE12BAC6FB005170D0 /* pathname_stripper.cc in Sources */,
				D24641EF12BAC6FB005170D0 /* basic_code_modules.cc in Sources */,
				4D72CA3913DFAE92006CABE3 /* md5.cc in Sources */,
				4D61A26F14F43D48002D5862 /* bootstrap_compat.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F92C53510ECCE349009BE4BA /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F92C53B80ECCE7B3009BE4BA /* Inspector.mm in Sources */,
				F9286B3A0F7EB25800A4DCC8 /* InspectorMain.mm in Sources */,
				163201E31443029300C4DBF5 /* ConfigFile.mm in Sources */,
				4D61A26B14F43D3C002D5862 /* bootstrap_compat.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F92C56390ECD10B3009BE4BA /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F4F916B619F10FFC00B83BE4 /* launch_reporter.cc in Sources */,
				162F64F4161C579B00CD68D5 /* arch_utilities.cc in Sources */,
				162F64F5161C579B00CD68D5 /* arch_utilities.h in Sources */,
				D2A5DD301188633800081F03 /* breakpad_nlist_64.cc in Sources */,
				F92C563F0ECD10CA009BE4BA /* convert_UTF.c in Sources */,
				F92C56400ECD10CA009BE4BA /* dynamic_images.cc in Sources */,
				F92C56410ECD10CA009BE4BA /* file_id.cc in Sources */,
				F92C56420ECD10CA009BE4BA /* macho_id.cc in Sources */,
				F92C56430ECD10CA009BE4BA /* macho_utilities.cc in Sources */,
				F92C56440ECD10CA009BE4BA /* macho_walker.cc in Sources */,
				F92C56450ECD10CA009BE4BA /* MachIPC.mm in Sources */,
				4D72CA0E13DFAD5C006CABE3 /* md5.cc in Sources */,
				F92C56460ECD10CA009BE4BA /* minidump_file_writer.cc in Sources */,
				F92C56470ECD10CA009BE4BA /* minidump_generator.cc in Sources */,
				F92C56490ECD10CA009BE4BA /* string_utilities.cc in Sources */,
				F92C564A0ECD10CA009BE4BA /* string_conversion.cc in Sources */,
				4D61A25F14F43CFC002D5862 /* bootstrap_compat.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F92C569D0ECE04A7009BE4BA /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F9C44EA20EF09F93003AEBAA /* HTTPMultipartUpload.m in Sources */,
				F92C56A90ECE04C5009BE4BA /* crash_report_sender.m in Sources */,
				F9C44EE90EF0A3C1003AEBAA /* GTMLogger.m in Sources */,
				16E02DB8147410F0008C604D /* uploader.mm in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F93803BB0F80820F004D428B /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D2C1DBE412AFC270006917BD /* logging.cc in Sources */,
				D2C1DBE512AFC270006917BD /* minidump.cc in Sources */,
				D2C1DBE612AFC270006917BD /* pathname_stripper.cc in Sources */,
				D2C1DBE712AFC270006917BD /* basic_code_modules.cc in Sources */,
				D2F9A4DF12133AD9002747C1 /* crash_generation_client.cc in Sources */,
				D2F9A4E012133AD9002747C1 /* crash_generation_server.cc in Sources */,
				D24BBD291211EDB100F3D417 /* MachIPC.mm in Sources */,
				D2A5DD401188640400081F03 /* breakpad_nlist_64.cc in Sources */,
				F93803CD0F8083B7004D428B /* dynamic_images.cc in Sources */,
				F93803CE0F8083B7004D428B /* exception_handler.cc in Sources */,
				F93803CF0F8083B7004D428B /* minidump_generator.cc in Sources */,
				F93803D00F8083B7004D428B /* minidump_file_writer.cc in Sources */,
				F93803D10F8083B7004D428B /* convert_UTF.c in Sources */,
				F93803D20F8083B7004D428B /* string_conversion.cc in Sources */,
				F93803D30F8083B7004D428B /* file_id.cc in Sources */,
				F93803D40F8083B7004D428B /* macho_id.cc in Sources */,
				F93803D50F8083B7004D428B /* macho_utilities.cc in Sources */,
				F93803D60F8083B7004D428B /* macho_walker.cc in Sources */,
				F93803D70F8083B7004D428B /* string_utilities.cc in Sources */,
				D23F4B2E12A7E13200686C8D /* minidump_generator_test.cc in Sources */,
				4D72CA2F13DFAE65006CABE3 /* md5.cc in Sources */,
				4D61A26D14F43D43002D5862 /* bootstrap_compat.cc in Sources */,
				1EEEB62B1720868C00F7E689 /* simple_string_dictionary.cc in Sources */,
				1EEEB62A1720859200F7E689 /* simple_string_dictionary_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F93DE2CE0F82A67300608B94 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F93DE2D90F82A73500608B94 /* minidump_file_writer.cc in Sources */,
				F93DE2DA0F82A73500608B94 /* convert_UTF.c in Sources */,
				F93DE2DB0F82A73500608B94 /* string_conversion.cc in Sources */,
				F93DE2D80F82A70E00608B94 /* minidump_file_writer_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F93DE3290F82C55600608B94 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D244536A12426F00009BBCE0 /* logging.cc in Sources */,
				D244536B12426F00009BBCE0 /* minidump.cc in Sources */,
				D244536C12426F00009BBCE0 /* pathname_stripper.cc in Sources */,
				D244536D12426F00009BBCE0 /* basic_code_modules.cc in Sources */,
				D2F9A4E112133AE2002747C1 /* crash_generation_client.cc in Sources */,
				D2F9A4E212133AE2002747C1 /* crash_generation_server.cc in Sources */,
				D24BBD321212CACF00F3D417 /* MachIPC.mm in Sources */,
				D2A5DD411188642E00081F03 /* breakpad_nlist_64.cc in Sources */,
				F93DE3350F82C66B00608B94 /* dynamic_images.cc in Sources */,
				F93DE3360F82C66B00608B94 /* exception_handler.cc in Sources */,
				F93DE3370F82C66B00608B94 /* minidump_generator.cc in Sources */,
				F93DE3380F82C66B00608B94 /* minidump_file_writer.cc in Sources */,
				F93DE3390F82C66B00608B94 /* convert_UTF.c in Sources */,
				F93DE33A0F82C66B00608B94 /* string_conversion.cc in Sources */,
				F93DE33B0F82C66B00608B94 /* file_id.cc in Sources */,
				F93DE33C0F82C66B00608B94 /* macho_id.cc in Sources */,
				F93DE33D0F82C66B00608B94 /* macho_utilities.cc in Sources */,
				F93DE33E0F82C66B00608B94 /* macho_walker.cc in Sources */,
				F93DE33F0F82C66B00608B94 /* string_utilities.cc in Sources */,
				D2F9A3D51212F87C002747C1 /* exception_handler_test.cc in Sources */,
				D244540B12439BA0009BBCE0 /* memory_unittest.cc in Sources */,
				4D72CA3813DFAE91006CABE3 /* md5.cc in Sources */,
				4D61A26E14F43D45002D5862 /* bootstrap_compat.cc in Sources */,
				1EEEB6271720831E00F7E689 /* BreakpadFramework_Test.mm in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F9C44DA20EF060A8003AEBAA /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F9C44DB20EF07288003AEBAA /* Controller.m in Sources */,
				F9C44DB60EF07288003AEBAA /* main.m in Sources */,
				F9C44DB70EF07288003AEBAA /* TestClass.mm in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		F9C77DD60F7DD5CF0045F7DB /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F9C77E130F7DDF810045F7DB /* GTMSenTestCase.m in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		8B31023911F0CF0600FCF3E4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = all_unittests;
			targetProxy = 8B31023811F0CF0600FCF3E4 /* PBXContainerItemProxy */;
		};
		8B31051711F1010E00FCF3E4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F93803BD0F80820F004D428B /* generator_test */;
			targetProxy = 8B31051611F1010E00FCF3E4 /* PBXContainerItemProxy */;
		};
		8B31051911F1010E00FCF3E4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F93DE2D00F82A67300608B94 /* minidump_file_writer_unittest */;
			targetProxy = 8B31051811F1010E00FCF3E4 /* PBXContainerItemProxy */;
		};
		8B31051B11F1010E00FCF3E4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F93DE32B0F82C55600608B94 /* handler_test */;
			targetProxy = 8B31051A11F1010E00FCF3E4 /* PBXContainerItemProxy */;
		};
		8B31051D11F1010E00FCF3E4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = macho_dump;
			targetProxy = 8B31051C11F1010E00FCF3E4 /* PBXContainerItemProxy */;
		};
		8B31051F11F1010E00FCF3E4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = minidump_upload;
			targetProxy = 8B31051E11F1010E00FCF3E4 /* PBXContainerItemProxy */;
		};
		D23F4B3012A7E16200686C8D /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = D2F9A41412131EF0002747C1 /* gtest */;
			targetProxy = D23F4B2F12A7E16200686C8D /* PBXContainerItemProxy */;
		};
		D23F4BBA12A8694C00686C8D /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = D23F4BAA12A868A500686C8D /* minidump_generator_test_helper */;
			targetProxy = D23F4BB912A8694C00686C8D /* PBXContainerItemProxy */;
		};
		D2F9A44312131F80002747C1 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = D2F9A41412131EF0002747C1 /* gtest */;
			targetProxy = D2F9A44212131F80002747C1 /* PBXContainerItemProxy */;
		};
		D2F9A52B121383A1002747C1 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = D2F9A41412131EF0002747C1 /* gtest */;
			targetProxy = D2F9A52C121383A1002747C1 /* PBXContainerItemProxy */;
		};
		D2F9A5DF12142A6A002747C1 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = D2F9A52A121383A1002747C1 /* crash_generation_server_test */;
			targetProxy = D2F9A5DE12142A6A002747C1 /* PBXContainerItemProxy */;
		};
		F91AF6380FD60A74009D8BE2 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 8DC2EF4F0486A6940098B216 /* Breakpad */;
			targetProxy = F91AF6370FD60A74009D8BE2 /* PBXContainerItemProxy */;
		};
		F92C564E0ECD10E5009BE4BA /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F92C563B0ECD10B3009BE4BA /* breakpadUtilities */;
			targetProxy = F92C564D0ECD10E5009BE4BA /* PBXContainerItemProxy */;
		};
		F92C56860ECD15EF009BE4BA /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F92C563B0ECD10B3009BE4BA /* breakpadUtilities */;
			targetProxy = F92C56850ECD15EF009BE4BA /* PBXContainerItemProxy */;
		};
		F92C56880ECD15F1009BE4BA /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F92C53530ECCE349009BE4BA /* Inspector */;
			targetProxy = F92C56870ECD15F1009BE4BA /* PBXContainerItemProxy */;
		};
		F93DE2FC0F82C3C600608B94 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F93803BD0F80820F004D428B /* generator_test */;
			targetProxy = F93DE2FB0F82C3C600608B94 /* PBXContainerItemProxy */;
		};
		F93DE3700F82CC1300608B94 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F93DE32B0F82C55600608B94 /* handler_test */;
			targetProxy = F93DE36F0F82CC1300608B94 /* PBXContainerItemProxy */;
		};
		F93DE3A70F830D1D00608B94 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F9C77DD90F7DD5CF0045F7DB /* UnitTests */;
			targetProxy = F93DE3A60F830D1D00608B94 /* PBXContainerItemProxy */;
		};
		F94585880F78232B009A47BF /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 8DC2EF4F0486A6940098B216 /* Breakpad */;
			targetProxy = F94585870F78232B009A47BF /* PBXContainerItemProxy */;
		};
		F945858A0F78232E009A47BF /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F92C53530ECCE349009BE4BA /* Inspector */;
			targetProxy = F94585890F78232E009A47BF /* PBXContainerItemProxy */;
		};
		F945858C0F782330009A47BF /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F92C563B0ECD10B3009BE4BA /* breakpadUtilities */;
			targetProxy = F945858B0F782330009A47BF /* PBXContainerItemProxy */;
		};
		F945858E0F782333009A47BF /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F92C569F0ECE04A7009BE4BA /* crash_report_sender */;
			targetProxy = F945858D0F782333009A47BF /* PBXContainerItemProxy */;
		};
		F94585900F782336009A47BF /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F9C44DA40EF060A8003AEBAA /* BreakpadTest */;
			targetProxy = F945858F0F782336009A47BF /* PBXContainerItemProxy */;
		};
		F95BB8B3101F94D300AA053B /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = dump_syms;
			targetProxy = F95BB8B2101F94D300AA053B /* PBXContainerItemProxy */;
		};
		F95BB8B5101F94D300AA053B /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = symupload;
			targetProxy = F95BB8B4101F94D300AA053B /* PBXContainerItemProxy */;
		};
		F95BB8B7101F94D300AA053B /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = crash_report;
			targetProxy = F95BB8B6101F94D300AA053B /* PBXContainerItemProxy */;
		};
		F9C44E1A0EF0790F003AEBAA /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 8DC2EF4F0486A6940098B216 /* Breakpad */;
			targetProxy = F9C44E190EF0790F003AEBAA /* PBXContainerItemProxy */;
		};
		F9C44E970EF09F4B003AEBAA /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = F92C569F0ECE04A7009BE4BA /* crash_report_sender */;
			targetProxy = F9C44E960EF09F4B003AEBAA /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin PBXVariantGroup section */
		33880C7E0F9E097100817F82 /* InfoPlist.strings */ = {
			isa = PBXVariantGroup;
			children = (
				33880C7F0F9E097100817F82 /* English */,
				DE43468711C7295D004F095F /* da */,
				DE43468611C72958004F095F /* de */,
				DE43468811C7295F004F095F /* es */,
				DE43468911C72964004F095F /* fr */,
				DE43468A11C72967004F095F /* it */,
				DE43468B11C7296B004F095F /* ja */,
				DE43468C11C7296D004F095F /* nl */,
				DE43468D11C7296F004F095F /* no */,
				DE43468E11C72971004F095F /* sl */,
				DE43468F11C72973004F095F /* sv */,
				DE43469011C72976004F095F /* tr */,
			);
			name = InfoPlist.strings;
			sourceTree = "<group>";
		};
		F945849C0F280E3C009A47BF /* Localizable.strings */ = {
			isa = PBXVariantGroup;
			children = (
				F945849D0F280E3C009A47BF /* English */,
				DE43467411C72855004F095F /* da */,
				DE43467511C72857004F095F /* de */,
				DE43467611C7285B004F095F /* es */,
				DE43467711C72862004F095F /* fr */,
				DE43467811C72869004F095F /* it */,
				DE43467E11C728DC004F095F /* ja */,
				DE43467911C7286D004F095F /* nl */,
				DE43467A11C72873004F095F /* no */,
				DE43467B11C72877004F095F /* sl */,
				DE43467C11C7287A004F095F /* sv */,
				DE43467F11C728E1004F095F /* tr */,
			);
			name = Localizable.strings;
			sourceTree = "<group>";
		};
		F9C44DB80EF072A0003AEBAA /* InfoPlist.strings */ = {
			isa = PBXVariantGroup;
			children = (
				F9C44DB90EF072A0003AEBAA /* English */,
			);
			name = InfoPlist.strings;
			sourceTree = "<group>";
		};
		F9C44DBA0EF072A0003AEBAA /* MainMenu.xib */ = {
			isa = PBXVariantGroup;
			children = (
				F9C44DBB0EF072A0003AEBAA /* English */,
			);
			name = MainMenu.xib;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		1DEB91AE08733DA50010E9CD /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				FRAMEWORK_VERSION = A;
				GCC_PRECOMPILE_PREFIX_HEADER = YES;
				GCC_PREFIX_HEADER = Framework/Breakpad_Prefix.pch;
				HEADER_SEARCH_PATHS = ../..;
				INFOPLIST_FILE = Framework/Info.plist;
				INSTALL_PATH = "@executable_path/../Frameworks";
				PRODUCT_NAME = Breakpad;
				WRAPPER_EXTENSION = framework;
			};
			name = Debug;
		};
		1DEB91AF08733DA50010E9CD /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				FRAMEWORK_VERSION = A;
				GCC_PRECOMPILE_PREFIX_HEADER = YES;
				GCC_PREFIX_HEADER = Framework/Breakpad_Prefix.pch;
				HEADER_SEARCH_PATHS = ../..;
				INFOPLIST_FILE = Framework/Info.plist;
				INSTALL_PATH = "@executable_path/../Frameworks";
				PRODUCT_NAME = Breakpad;
				WRAPPER_EXTENSION = framework;
			};
			name = Release;
		};
		1DEB91B208733DA50010E9CD /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 8B31027711F0D3AF00FCF3E4 /* BreakpadDebug.xcconfig */;
			buildSettings = {
				GCC_TREAT_WARNINGS_AS_ERRORS = NO;
				SDKROOT = macosx10.5;
			};
			name = Debug;
		};
		1DEB91B308733DA50010E9CD /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 8B31027811F0D3AF00FCF3E4 /* BreakpadRelease.xcconfig */;
			buildSettings = {
				GCC_TREAT_WARNINGS_AS_ERRORS = NO;
			};
			name = Release;
		};
		D23F4BAD12A868A600686C8D /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				COPY_PHASE_STRIP = NO;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_ENABLE_FIX_AND_CONTINUE = YES;
				GCC_MODEL_TUNING = G5;
				GCC_OPTIMIZATION_LEVEL = 0;
				HEADER_SEARCH_PATHS = ../..;
				INSTALL_PATH = /usr/local/bin;
				PREBINDING = NO;
				PRODUCT_NAME = minidump_generator_test_helper;
			};
			name = Debug;
		};
		D23F4BAE12A868A600686C8D /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				GCC_ENABLE_FIX_AND_CONTINUE = YES;
				GCC_MODEL_TUNING = G5;
				HEADER_SEARCH_PATHS = ../..;
				INSTALL_PATH = /usr/local/bin;
				PREBINDING = NO;
				PRODUCT_NAME = minidump_generator_test_helper;
			};
			name = "Debug With Code Coverage";
		};
		D23F4BAF12A868A600686C8D /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				COPY_PHASE_STRIP = YES;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				GCC_ENABLE_FIX_AND_CONTINUE = NO;
				GCC_MODEL_TUNING = G5;
				HEADER_SEARCH_PATHS = ../..;
				INSTALL_PATH = /usr/local/bin;
				PREBINDING = NO;
				PRODUCT_NAME = minidump_generator_test_helper;
				ZERO_LINK = NO;
			};
			name = Release;
		};
		D2F9A41612131EF0002747C1 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				COPY_PHASE_STRIP = NO;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_OPTIMIZATION_LEVEL = 0;
				HEADER_SEARCH_PATHS = (
					"$(inherited)",
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				PREBINDING = NO;
				PRODUCT_NAME = gtest;
			};
			name = Debug;
		};
		D2F9A41712131EF0002747C1 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				HEADER_SEARCH_PATHS = (
					"$(inherited)",
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				PREBINDING = NO;
				PRODUCT_NAME = gtest;
			};
			name = "Debug With Code Coverage";
		};
		D2F9A41812131EF0002747C1 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ALWAYS_SEARCH_USER_PATHS = NO;
				COPY_PHASE_STRIP = YES;
				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
				GCC_ENABLE_FIX_AND_CONTINUE = NO;
				HEADER_SEARCH_PATHS = (
					"$(inherited)",
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				PREBINDING = NO;
				PRODUCT_NAME = gtest;
				ZERO_LINK = NO;
			};
			name = Release;
		};
		D2F9A543121383A1002747C1 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DEBUG_INFORMATION_FORMAT = dwarf;
				GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
				GCC_PREPROCESSOR_DEFINITIONS = "BP_LOGGING_INCLUDE=\\\"client/mac/tests/testlogging.h\\\"";
				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
				HEADER_SEARCH_PATHS = (
					../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"\"$(SRCROOT)/build/Debug\"",
				);
				PRODUCT_NAME = crash_generation_server_test;
			};
			name = Debug;
		};
		D2F9A544121383A1002747C1 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"\\\"$(SRCROOT)/build/Debug\\\"",
				);
				PRODUCT_NAME = crash_generation_server_test;
			};
			name = "Debug With Code Coverage";
		};
		D2F9A545121383A1002747C1 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"\\\"$(SRCROOT)/build/Debug\\\"",
				);
				PRODUCT_NAME = crash_generation_server_test;
			};
			name = Release;
		};
		F92C53560ECCE34A009BE4BA /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				PRODUCT_NAME = Inspector;
			};
			name = Debug;
		};
		F92C53570ECCE34A009BE4BA /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				PRODUCT_NAME = Inspector;
			};
			name = Release;
		};
		F92C563D0ECD10B3009BE4BA /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				HEADER_SEARCH_PATHS = ../..;
				LD_DYLIB_INSTALL_NAME = "@executable_path/../Resources/$(EXECUTABLE_PATH)";
				OTHER_LDFLAGS = (
					"$(inherited)",
					"-headerpad_max_install_names",
				);
				PRODUCT_NAME = breakpadUtilities;
			};
			name = Debug;
		};
		F92C563E0ECD10B3009BE4BA /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				HEADER_SEARCH_PATHS = ../..;
				LD_DYLIB_INSTALL_NAME = "@executable_path/../Resources/$(EXECUTABLE_PATH)";
				OTHER_LDFLAGS = (
					"$(inherited)",
					"-headerpad_max_install_names",
				);
				PRODUCT_NAME = breakpadUtilities;
			};
			name = Release;
		};
		F92C56A30ECE04A8009BE4BA /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				INFOPLIST_FILE = "sender/crash_report_sender-Info.plist";
				PRODUCT_NAME = crash_report_sender;
			};
			name = Debug;
		};
		F92C56A40ECE04A8009BE4BA /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				INFOPLIST_FILE = "sender/crash_report_sender-Info.plist";
				PRODUCT_NAME = crash_report_sender;
			};
			name = Release;
		};
		F93803C00F808210004D428B /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = "BP_LOGGING_INCLUDE=\\\"client/mac/tests/testlogging.h\\\"";
				HEADER_SEARCH_PATHS = (
					../..,
					../../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				PRODUCT_NAME = generator_test;
			};
			name = Debug;
		};
		F93803C10F808210004D428B /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					../..,
					../../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				PRODUCT_NAME = generator_test;
			};
			name = Release;
		};
		F93DE2D30F82A67400608B94 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				PRODUCT_NAME = minidump_file_writer_unittest;
			};
			name = Debug;
		};
		F93DE2D40F82A67400608B94 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				PRODUCT_NAME = minidump_file_writer_unittest;
			};
			name = Release;
		};
		F93DE32E0F82C55700608B94 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DEBUG_INFORMATION_FORMAT = dwarf;
				GCC_INLINES_ARE_PRIVATE_EXTERN = NO;
				GCC_PREPROCESSOR_DEFINITIONS = "BP_LOGGING_INCLUDE=\\\"client/mac/tests/testlogging.h\\\"";
				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
				HEADER_SEARCH_PATHS = (
					../../..,
					../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"\"$(SRCROOT)/build/Debug\"",
				);
				PRODUCT_NAME = handler_test;
			};
			name = Debug;
		};
		F93DE32F0F82C55700608B94 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					../../..,
					../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"\"$(SRCROOT)/build/Debug\"",
				);
				PRODUCT_NAME = handler_test;
			};
			name = Release;
		};
		F93DE3B90F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 8B31027711F0D3AF00FCF3E4 /* BreakpadDebug.xcconfig */;
			buildSettings = {
				GCC_TREAT_WARNINGS_AS_ERRORS = NO;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3BA0F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				FRAMEWORK_VERSION = A;
				GCC_PRECOMPILE_PREFIX_HEADER = YES;
				GCC_PREFIX_HEADER = Framework/Breakpad_Prefix.pch;
				HEADER_SEARCH_PATHS = ../..;
				INFOPLIST_FILE = Framework/Info.plist;
				INSTALL_PATH = "@executable_path/../Frameworks";
				PRODUCT_NAME = Breakpad;
				WRAPPER_EXTENSION = framework;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3BB0F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				PRODUCT_NAME = Inspector;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3BC0F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				DYLIB_COMPATIBILITY_VERSION = 1;
				DYLIB_CURRENT_VERSION = 1;
				HEADER_SEARCH_PATHS = ../..;
				LD_DYLIB_INSTALL_NAME = "@executable_path/../Resources/$(EXECUTABLE_PATH)";
				OTHER_LDFLAGS = (
					"$(inherited)",
					"-headerpad_max_install_names",
				);
				PRODUCT_NAME = breakpadUtilities;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3BD0F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				INFOPLIST_FILE = "sender/crash_report_sender-Info.plist";
				PRODUCT_NAME = crash_report_sender;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3BE0F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)/build/$(CONFIGURATION)";
				INFOPLIST_FILE = testapp/Info.plist;
				PRODUCT_NAME = BreakpadTest;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3BF0F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = All;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3C00F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				FRAMEWORK_SEARCH_PATHS = (
					"$(inherited)",
					"\"$(DEVELOPER_FRAMEWORKS_DIR)\"",
				);
				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
				HEADER_SEARCH_PATHS = ../..;
				INFOPLIST_FILE = "UnitTests-Info.plist";
				PRODUCT_NAME = UnitTests;
				WRAPPER_EXTENSION = octest;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3C10F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					../..,
					../../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				PRODUCT_NAME = generator_test;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3C20F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = ../..;
				PRODUCT_NAME = minidump_file_writer_unittest;
			};
			name = "Debug With Code Coverage";
		};
		F93DE3C30F830E7000608B94 /* Debug With Code Coverage */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					../../..,
					../..,
					../../testing,
					../../testing/include,
					../../testing/gtest,
					../../testing/gtest/include,
				);
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"\"$(SRCROOT)/build/Debug\"",
				);
				PRODUCT_NAME = handler_test;
			};
			name = "Debug With Code Coverage";
		};
		F94585850F782326009A47BF /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = All;
			};
			name = Debug;
		};
		F94585860F782326009A47BF /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = All;
			};
			name = Release;
		};
		F9C44DA80EF060A8003AEBAA /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)/build/$(CONFIGURATION)";
				INFOPLIST_FILE = testapp/Info.plist;
				PRODUCT_NAME = BreakpadTest;
			};
			name = Debug;
		};
		F9C44DA90EF060A8003AEBAA /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)/build/$(CONFIGURATION)";
				INFOPLIST_FILE = testapp/Info.plist;
				PRODUCT_NAME = BreakpadTest;
			};
			name = Release;
		};
		F9C77DDC0F7DD5D00045F7DB /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				FRAMEWORK_SEARCH_PATHS = (
					"$(inherited)",
					"\"$(DEVELOPER_FRAMEWORKS_DIR)\"",
				);
				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
				INFOPLIST_FILE = "UnitTests-Info.plist";
				PRODUCT_NAME = UnitTests;
				WRAPPER_EXTENSION = octest;
			};
			name = Debug;
		};
		F9C77DDD0F7DD5D00045F7DB /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				FRAMEWORK_SEARCH_PATHS = (
					"$(inherited)",
					"\"$(DEVELOPER_FRAMEWORKS_DIR)\"",
				);
				GCC_ENABLE_OBJC_EXCEPTIONS = YES;
				INFOPLIST_FILE = "UnitTests-Info.plist";
				PRODUCT_NAME = UnitTests;
				WRAPPER_EXTENSION = octest;
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "Breakpad" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1DEB91AE08733DA50010E9CD /* Debug */,
				F93DE3BA0F830E7000608B94 /* Debug With Code Coverage */,
				1DEB91AF08733DA50010E9CD /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "Breakpad" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1DEB91B208733DA50010E9CD /* Debug */,
				F93DE3B90F830E7000608B94 /* Debug With Code Coverage */,
				1DEB91B308733DA50010E9CD /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		D23F4BB012A868C400686C8D /* Build configuration list for PBXNativeTarget "minidump_generator_test_helper" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				D23F4BAD12A868A600686C8D /* Debug */,
				D23F4BAE12A868A600686C8D /* Debug With Code Coverage */,
				D23F4BAF12A868A600686C8D /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		D2F9A42D12131F0E002747C1 /* Build configuration list for PBXNativeTarget "gtest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				D2F9A41612131EF0002747C1 /* Debug */,
				D2F9A41712131EF0002747C1 /* Debug With Code Coverage */,
				D2F9A41812131EF0002747C1 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		D2F9A542121383A1002747C1 /* Build configuration list for PBXNativeTarget "crash_generation_server_test" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				D2F9A543121383A1002747C1 /* Debug */,
				D2F9A544121383A1002747C1 /* Debug With Code Coverage */,
				D2F9A545121383A1002747C1 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F92C53580ECCE36D009BE4BA /* Build configuration list for PBXNativeTarget "Inspector" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F92C53560ECCE34A009BE4BA /* Debug */,
				F93DE3BB0F830E7000608B94 /* Debug With Code Coverage */,
				F92C53570ECCE34A009BE4BA /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F92C56670ECD11A3009BE4BA /* Build configuration list for PBXNativeTarget "breakpadUtilities" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F92C563D0ECD10B3009BE4BA /* Debug */,
				F93DE3BC0F830E7000608B94 /* Debug With Code Coverage */,
				F92C563E0ECD10B3009BE4BA /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F92C56A50ECE04A8009BE4BA /* Build configuration list for PBXNativeTarget "crash_report_sender" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F92C56A30ECE04A8009BE4BA /* Debug */,
				F93DE3BD0F830E7000608B94 /* Debug With Code Coverage */,
				F92C56A40ECE04A8009BE4BA /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F93803C40F80822E004D428B /* Build configuration list for PBXNativeTarget "generator_test" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F93803C00F808210004D428B /* Debug */,
				F93DE3C10F830E7000608B94 /* Debug With Code Coverage */,
				F93803C10F808210004D428B /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F93DE2D60F82A67700608B94 /* Build configuration list for PBXNativeTarget "minidump_file_writer_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F93DE2D30F82A67400608B94 /* Debug */,
				F93DE3C20F830E7000608B94 /* Debug With Code Coverage */,
				F93DE2D40F82A67400608B94 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F93DE3320F82C5D800608B94 /* Build configuration list for PBXNativeTarget "handler_test" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F93DE32E0F82C55700608B94 /* Debug */,
				F93DE3C30F830E7000608B94 /* Debug With Code Coverage */,
				F93DE32F0F82C55700608B94 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F94585930F78235C009A47BF /* Build configuration list for PBXAggregateTarget "All" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F94585850F782326009A47BF /* Debug */,
				F93DE3BF0F830E7000608B94 /* Debug With Code Coverage */,
				F94585860F782326009A47BF /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F9C44DAA0EF060A9003AEBAA /* Build configuration list for PBXNativeTarget "BreakpadTest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F9C44DA80EF060A8003AEBAA /* Debug */,
				F93DE3BE0F830E7000608B94 /* Debug With Code Coverage */,
				F9C44DA90EF060A8003AEBAA /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		F9C77DDE0F7DD5D00045F7DB /* Build configuration list for PBXNativeTarget "UnitTests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				F9C77DDC0F7DD5D00045F7DB /* Debug */,
				F93DE3C00F830E7000608B94 /* Debug With Code Coverage */,
				F9C77DDD0F7DD5D00045F7DB /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
}
