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

/* Begin PBXAggregateTarget section */
		B88FAFC9116BDCAD00407530 /* all_unittests */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = B88FAFCC116BDCCC00407530 /* Build configuration list for PBXAggregateTarget "all_unittests" */;
			buildPhases = (
				B88FB094116CE73E00407530 /* ShellScript */,
			);
			dependencies = (
				B88FB15B116CF53E00407530 /* PBXTargetDependency */,
				B88FAFCF116BDD7000407530 /* PBXTargetDependency */,
				B88FB01D116BDF9800407530 /* PBXTargetDependency */,
				B88FB167116CF54B00407530 /* PBXTargetDependency */,
				B88FAFD1116BDD7000407530 /* PBXTargetDependency */,
				B88FB165116CF54B00407530 /* PBXTargetDependency */,
				B88FB161116CF54B00407530 /* PBXTargetDependency */,
				B88FB15F116CF54B00407530 /* PBXTargetDependency */,
				B88FB15D116CF54B00407530 /* PBXTargetDependency */,
				B84A9201116CF7D2006C210E /* PBXTargetDependency */,
				B88FB0C8116CEB4A00407530 /* PBXTargetDependency */,
				8B31051511F100CF00FCF3E4 /* PBXTargetDependency */,
			);
			name = all_unittests;
			productName = all_unittests;
		};
/* End PBXAggregateTarget section */

/* Begin PBXBuildFile section */
		162F64FA161C591500CD68D5 /* arch_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F8161C591500CD68D5 /* arch_utilities.cc */; };
		162F6500161C5F2200CD68D5 /* arch_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F8161C591500CD68D5 /* arch_utilities.cc */; };
		4D72CAF513DFBAC2006CABE3 /* md5.cc in Sources */ = {isa = PBXBuildFile; fileRef = 4D72CAF413DFBAC2006CABE3 /* md5.cc */; };
		8BCAAA4C1CE3A7980046090B /* elf_reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = 8BCAAA4A1CE3A7980046090B /* elf_reader.cc */; };
		8BCAAA4D1CE3B1260046090B /* elf_reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = 8BCAAA4A1CE3A7980046090B /* elf_reader.cc */; };
		B84A91F8116CF78F006C210E /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B84A91FB116CF7AF006C210E /* module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE241166603300407530 /* module.cc */; };
		B84A91FC116CF7AF006C210E /* stabs_to_module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE3C11666C8900407530 /* stabs_to_module.cc */; };
		B84A91FD116CF7AF006C210E /* stabs_to_module_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0D8116CEC0600407530 /* stabs_to_module_unittest.cc */; };
		B88FAE1911665FE400407530 /* dwarf2diehandler.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE1711665FE400407530 /* dwarf2diehandler.cc */; };
		B88FAE261166603300407530 /* dwarf_cu_to_module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE1E1166603300407530 /* dwarf_cu_to_module.cc */; };
		B88FAE271166603300407530 /* dwarf_line_to_module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE201166603300407530 /* dwarf_line_to_module.cc */; };
		B88FAE281166603300407530 /* language.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE221166603300407530 /* language.cc */; };
		B88FAE291166603300407530 /* module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE241166603300407530 /* module.cc */; };
		B88FAE2C1166606200407530 /* macho_reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = B89E0E6E1166571D00DD08C9 /* macho_reader.cc */; };
		B88FAE351166673E00407530 /* dwarf_cfi_to_module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE331166673E00407530 /* dwarf_cfi_to_module.cc */; };
		B88FAE3B11666C6F00407530 /* stabs_reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE3911666C6F00407530 /* stabs_reader.cc */; };
		B88FAE3E11666C8900407530 /* stabs_to_module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE3C11666C8900407530 /* stabs_to_module.cc */; };
		B88FAF37116A595400407530 /* cfi_assembler.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAF34116A595400407530 /* cfi_assembler.cc */; };
		B88FAF38116A595400407530 /* dwarf2reader_cfi_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAF36116A595400407530 /* dwarf2reader_cfi_unittest.cc */; };
		B88FAF3F116A5A2E00407530 /* dwarf2reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = F95B422F0E0E22D100DBDE83 /* dwarf2reader.cc */; };
		B88FAF40116A5A2E00407530 /* bytereader.cc in Sources */ = {isa = PBXBuildFile; fileRef = F95B422C0E0E22D100DBDE83 /* bytereader.cc */; };
		B88FB00F116BDEA700407530 /* stabs_reader_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB003116BDE7200407530 /* stabs_reader_unittest.cc */; };
		B88FB010116BDEA700407530 /* stabs_reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE3911666C6F00407530 /* stabs_reader.cc */; };
		B88FB028116BE03100407530 /* test_assembler.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE0911665B5700407530 /* test_assembler.cc */; };
		B88FB029116BE03100407530 /* gmock-all.cc in Sources */ = {isa = PBXBuildFile; fileRef = B89E0EA311665AEA00DD08C9 /* gmock-all.cc */; };
		B88FB02A116BE03100407530 /* gtest_main.cc in Sources */ = {isa = PBXBuildFile; fileRef = B89E0E9F11665AC300DD08C9 /* gtest_main.cc */; };
		B88FB02B116BE03100407530 /* gtest-all.cc in Sources */ = {isa = PBXBuildFile; fileRef = B89E0EA011665AC300DD08C9 /* gtest-all.cc */; };
		B88FB03F116BE24200407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB042116BE3C400407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB057116C0CDE00407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB0BD116CEAE000407530 /* module_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0B5116CEA8A00407530 /* module_unittest.cc */; };
		B88FB0C1116CEB0600407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB0C4116CEB4100407530 /* module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE241166603300407530 /* module.cc */; };
		B88FB0E3116CEEB000407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB0E5116CEED300407530 /* dwarf2diehandler.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE1711665FE400407530 /* dwarf2diehandler.cc */; };
		B88FB0E6116CEED300407530 /* dwarf2diehandler_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0DB116CEC5800407530 /* dwarf2diehandler_unittest.cc */; };
		B88FB0F6116CEF2000407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB0FA116CF00E00407530 /* dwarf_line_to_module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE201166603300407530 /* dwarf_line_to_module.cc */; };
		B88FB0FB116CF00E00407530 /* dwarf_line_to_module_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0D7116CEC0600407530 /* dwarf_line_to_module_unittest.cc */; };
		B88FB0FE116CF02400407530 /* module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE241166603300407530 /* module.cc */; };
		B88FB10E116CF08100407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB112116CF1F000407530 /* dwarf_cu_to_module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE1E1166603300407530 /* dwarf_cu_to_module.cc */; };
		B88FB113116CF1F000407530 /* dwarf_cu_to_module_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0D6116CEC0600407530 /* dwarf_cu_to_module_unittest.cc */; };
		B88FB114116CF1F000407530 /* language.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE221166603300407530 /* language.cc */; };
		B88FB115116CF1F000407530 /* module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE241166603300407530 /* module.cc */; };
		B88FB123116CF28500407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB129116CF2DD00407530 /* module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE241166603300407530 /* module.cc */; };
		B88FB12A116CF2DD00407530 /* dwarf_cfi_to_module.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE331166673E00407530 /* dwarf_cfi_to_module.cc */; };
		B88FB12B116CF2DD00407530 /* dwarf_cfi_to_module_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0D5116CEC0600407530 /* dwarf_cfi_to_module_unittest.cc */; };
		B88FB139116CF31600407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB13D116CF38300407530 /* cfi_assembler.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAF34116A595400407530 /* cfi_assembler.cc */; };
		B88FB13E116CF38300407530 /* bytereader.cc in Sources */ = {isa = PBXBuildFile; fileRef = F95B422C0E0E22D100DBDE83 /* bytereader.cc */; };
		B88FB13F116CF38300407530 /* bytereader_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0DA116CEC5800407530 /* bytereader_unittest.cc */; };
		B88FB14F116CF4AE00407530 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		B88FB152116CF4D300407530 /* byte_cursor_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0D4116CEC0600407530 /* byte_cursor_unittest.cc */; };
		B89E0E781166576C00DD08C9 /* macho_reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = B89E0E6E1166571D00DD08C9 /* macho_reader.cc */; };
		B89E0E7A1166576C00DD08C9 /* macho_dump.cc in Sources */ = {isa = PBXBuildFile; fileRef = B89E0E701166573700DD08C9 /* macho_dump.cc */; };
		B89E0E9911665A7200DD08C9 /* macho_reader_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B89E0E6D1166571D00DD08C9 /* macho_reader_unittest.cc */; };
		B89E0E9A11665A7200DD08C9 /* macho_reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = B89E0E6E1166571D00DD08C9 /* macho_reader.cc */; };
		B8C5B5171166534700D34F4E /* dwarf2reader.cc in Sources */ = {isa = PBXBuildFile; fileRef = F95B422F0E0E22D100DBDE83 /* dwarf2reader.cc */; };
		B8C5B5181166534700D34F4E /* bytereader.cc in Sources */ = {isa = PBXBuildFile; fileRef = F95B422C0E0E22D100DBDE83 /* bytereader.cc */; };
		B8C5B5191166534700D34F4E /* macho_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 557800890BE1F3AB00EC23E0 /* macho_utilities.cc */; };
		B8C5B51A1166534700D34F4E /* file_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = 9BE650410B52F6D800611104 /* file_id.cc */; };
		B8C5B51B1166534700D34F4E /* macho_id.cc in Sources */ = {isa = PBXBuildFile; fileRef = 9BE650430B52F6D800611104 /* macho_id.cc */; };
		B8C5B51C1166534700D34F4E /* macho_walker.cc in Sources */ = {isa = PBXBuildFile; fileRef = 9BE650450B52F6D800611104 /* macho_walker.cc */; };
		B8C5B51D1166534700D34F4E /* dump_syms.cc in Sources */ = {isa = PBXBuildFile; fileRef = 08FB7796FE84155DC02AAC07 /* dump_syms.cc */; };
		B8C5B51E1166534700D34F4E /* dump_syms_tool.cc in Sources */ = {isa = PBXBuildFile; fileRef = 9BDF186E0B1BB43700F8391B /* dump_syms_tool.cc */; };
		B8C5B523116653BA00D34F4E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08FB779EFE84155DC02AAC07 /* Foundation.framework */; };
		D21F97D711CBA12300239E38 /* test_assembler_unittest.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FB0D9116CEC0600407530 /* test_assembler_unittest.cc */; };
		D21F97D811CBA13D00239E38 /* libgtestmockall.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B88FB024116BDFFF00407530 /* libgtestmockall.a */; };
		D21F97E911CBA1FF00239E38 /* test_assembler.cc in Sources */ = {isa = PBXBuildFile; fileRef = B88FAE0911665B5700407530 /* test_assembler.cc */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		8B31051411F100CF00FCF3E4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = D21F97D111CBA0F200239E38;
			remoteInfo = test_assembler_unittest;
		};
		B84A91F9116CF796006C210E /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B84A9200116CF7D2006C210E /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B84A91F3116CF784006C210E;
			remoteInfo = stabs_to_module_unittest;
		};
		B88FAFCE116BDD7000407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B89E0E9411665A6400DD08C9;
			remoteInfo = macho_reader_unittest;
		};
		B88FAFD0116BDD7000407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FAF2E116A591D00407530;
			remoteInfo = dwarf2reader_cfi_unittest;
		};
		B88FB01C116BDF9800407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB006116BDE8300407530;
			remoteInfo = stabs_reader_unittest;
		};
		B88FB039116BE17E00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB087116CE6D800407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB08F116CE71000407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB0BF116CEAFE00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB0C7116CEB4A00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB0B8116CEABF00407530;
			remoteInfo = module_unittest;
		};
		B88FB0E7116CEEDA00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB0F7116CEF2E00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB10F116CF08A00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB124116CF29E00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB13B116CF35C00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB150116CF4C100407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB023116BDFFF00407530;
			remoteInfo = gtestmockall;
		};
		B88FB15A116CF53E00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB14A116CF4A700407530;
			remoteInfo = byte_cursor_unittest;
		};
		B88FB15C116CF54B00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB11E116CF27F00407530;
			remoteInfo = dwarf_cfi_to_module_unittest;
		};
		B88FB15E116CF54B00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB0F1116CEF1900407530;
			remoteInfo = dwarf_line_to_module_unittest;
		};
		B88FB160116CF54B00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB109116CF07900407530;
			remoteInfo = dwarf_cu_to_module_unittest;
		};
		B88FB164116CF54B00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB0DE116CEEA800407530;
			remoteInfo = dwarf2diehandler_unittest;
		};
		B88FB166116CF54B00407530 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = B88FB134116CF30F00407530;
			remoteInfo = bytereader_unittest;
		};
/* End PBXContainerItemProxy section */

/* Begin PBXFileReference section */
		08FB7796FE84155DC02AAC07 /* dump_syms.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = dump_syms.cc; path = ../../../common/mac/dump_syms.cc; sourceTree = "<group>"; };
		08FB779EFE84155DC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
		162F64F8161C591500CD68D5 /* arch_utilities.cc */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = arch_utilities.cc; path = ../../../common/mac/arch_utilities.cc; sourceTree = "<group>"; };
		162F64F9161C591500CD68D5 /* arch_utilities.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = arch_utilities.h; path = ../../../common/mac/arch_utilities.h; sourceTree = "<group>"; };
		4D72CAF413DFBAC2006CABE3 /* md5.cc */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 4; name = md5.cc; path = ../../../common/md5.cc; sourceTree = SOURCE_ROOT; };
		557800890BE1F3AB00EC23E0 /* macho_utilities.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = macho_utilities.cc; path = ../../../common/mac/macho_utilities.cc; sourceTree = SOURCE_ROOT; };
		5578008A0BE1F3AB00EC23E0 /* macho_utilities.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = macho_utilities.h; path = ../../../common/mac/macho_utilities.h; sourceTree = SOURCE_ROOT; };
		8B31023E11F0CF1C00FCF3E4 /* Breakpad.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Breakpad.xcconfig; path = ../../../common/mac/Breakpad.xcconfig; sourceTree = SOURCE_ROOT; };
		8B3102D411F0D60300FCF3E4 /* BreakpadDebug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = BreakpadDebug.xcconfig; path = ../../../common/mac/BreakpadDebug.xcconfig; sourceTree = SOURCE_ROOT; };
		8B3102D511F0D60300FCF3E4 /* BreakpadRelease.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = BreakpadRelease.xcconfig; path = ../../../common/mac/BreakpadRelease.xcconfig; sourceTree = SOURCE_ROOT; };
		8BCAAA4A1CE3A7980046090B /* elf_reader.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = elf_reader.cc; path = ../../../common/dwarf/elf_reader.cc; sourceTree = "<group>"; };
		8BCAAA4B1CE3A7980046090B /* elf_reader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = elf_reader.h; path = ../../../common/dwarf/elf_reader.h; sourceTree = "<group>"; };
		9BDF186D0B1BB43700F8391B /* dump_syms.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dump_syms.h; path = ../../../common/mac/dump_syms.h; sourceTree = "<group>"; };
		9BDF186E0B1BB43700F8391B /* dump_syms_tool.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = dump_syms_tool.cc; sourceTree = "<group>"; };
		9BE650410B52F6D800611104 /* file_id.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = file_id.cc; path = ../../../common/mac/file_id.cc; sourceTree = SOURCE_ROOT; };
		9BE650420B52F6D800611104 /* file_id.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = file_id.h; path = ../../../common/mac/file_id.h; sourceTree = SOURCE_ROOT; };
		9BE650430B52F6D800611104 /* macho_id.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = macho_id.cc; path = ../../../common/mac/macho_id.cc; sourceTree = SOURCE_ROOT; };
		9BE650440B52F6D800611104 /* macho_id.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = macho_id.h; path = ../../../common/mac/macho_id.h; sourceTree = SOURCE_ROOT; };
		9BE650450B52F6D800611104 /* macho_walker.cc */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = macho_walker.cc; path = ../../../common/mac/macho_walker.cc; sourceTree = SOURCE_ROOT; };
		9BE650460B52F6D800611104 /* macho_walker.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = macho_walker.h; path = ../../../common/mac/macho_walker.h; sourceTree = SOURCE_ROOT; };
		B84A91F4116CF784006C210E /* stabs_to_module_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = stabs_to_module_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FAE0911665B5700407530 /* test_assembler.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = test_assembler.cc; path = ../../../common/test_assembler.cc; sourceTree = SOURCE_ROOT; };
		B88FAE0A11665B5700407530 /* test_assembler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = test_assembler.h; path = ../../../common/test_assembler.h; sourceTree = SOURCE_ROOT; };
		B88FAE1711665FE400407530 /* dwarf2diehandler.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf2diehandler.cc; path = ../../../common/dwarf/dwarf2diehandler.cc; sourceTree = SOURCE_ROOT; };
		B88FAE1811665FE400407530 /* dwarf2diehandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dwarf2diehandler.h; path = ../../../common/dwarf/dwarf2diehandler.h; sourceTree = SOURCE_ROOT; };
		B88FAE1D1166603300407530 /* byte_cursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = byte_cursor.h; path = ../../../common/byte_cursor.h; sourceTree = SOURCE_ROOT; };
		B88FAE1E1166603300407530 /* dwarf_cu_to_module.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf_cu_to_module.cc; path = ../../../common/dwarf_cu_to_module.cc; sourceTree = SOURCE_ROOT; };
		B88FAE1F1166603300407530 /* dwarf_cu_to_module.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dwarf_cu_to_module.h; path = ../../../common/dwarf_cu_to_module.h; sourceTree = SOURCE_ROOT; };
		B88FAE201166603300407530 /* dwarf_line_to_module.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf_line_to_module.cc; path = ../../../common/dwarf_line_to_module.cc; sourceTree = SOURCE_ROOT; };
		B88FAE211166603300407530 /* dwarf_line_to_module.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dwarf_line_to_module.h; path = ../../../common/dwarf_line_to_module.h; sourceTree = SOURCE_ROOT; };
		B88FAE221166603300407530 /* language.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = language.cc; path = ../../../common/language.cc; sourceTree = SOURCE_ROOT; };
		B88FAE231166603300407530 /* language.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = language.h; path = ../../../common/language.h; sourceTree = SOURCE_ROOT; };
		B88FAE241166603300407530 /* module.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = module.cc; path = ../../../common/module.cc; sourceTree = SOURCE_ROOT; };
		B88FAE251166603300407530 /* module.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = module.h; path = ../../../common/module.h; sourceTree = SOURCE_ROOT; };
		B88FAE331166673E00407530 /* dwarf_cfi_to_module.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf_cfi_to_module.cc; path = ../../../common/dwarf_cfi_to_module.cc; sourceTree = SOURCE_ROOT; };
		B88FAE341166673E00407530 /* dwarf_cfi_to_module.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dwarf_cfi_to_module.h; path = ../../../common/dwarf_cfi_to_module.h; sourceTree = SOURCE_ROOT; };
		B88FAE3911666C6F00407530 /* stabs_reader.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = stabs_reader.cc; path = ../../../common/stabs_reader.cc; sourceTree = SOURCE_ROOT; };
		B88FAE3A11666C6F00407530 /* stabs_reader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = stabs_reader.h; path = ../../../common/stabs_reader.h; sourceTree = SOURCE_ROOT; };
		B88FAE3C11666C8900407530 /* stabs_to_module.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = stabs_to_module.cc; path = ../../../common/stabs_to_module.cc; sourceTree = SOURCE_ROOT; };
		B88FAE3D11666C8900407530 /* stabs_to_module.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = stabs_to_module.h; path = ../../../common/stabs_to_module.h; sourceTree = SOURCE_ROOT; };
		B88FAF2F116A591E00407530 /* dwarf2reader_cfi_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dwarf2reader_cfi_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FAF34116A595400407530 /* cfi_assembler.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = cfi_assembler.cc; path = ../../../common/dwarf/cfi_assembler.cc; sourceTree = SOURCE_ROOT; };
		B88FAF35116A595400407530 /* cfi_assembler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = cfi_assembler.h; path = ../../../common/dwarf/cfi_assembler.h; sourceTree = SOURCE_ROOT; };
		B88FAF36116A595400407530 /* dwarf2reader_cfi_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf2reader_cfi_unittest.cc; path = ../../../common/dwarf/dwarf2reader_cfi_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB003116BDE7200407530 /* stabs_reader_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = stabs_reader_unittest.cc; path = ../../../common/stabs_reader_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB007116BDE8300407530 /* stabs_reader_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = stabs_reader_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FB024116BDFFF00407530 /* libgtestmockall.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libgtestmockall.a; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FB0B5116CEA8A00407530 /* module_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = module_unittest.cc; path = ../../../common/module_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0B9116CEABF00407530 /* module_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = module_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FB0D4116CEC0600407530 /* byte_cursor_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = byte_cursor_unittest.cc; path = ../../../common/byte_cursor_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0D5116CEC0600407530 /* dwarf_cfi_to_module_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf_cfi_to_module_unittest.cc; path = ../../../common/dwarf_cfi_to_module_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0D6116CEC0600407530 /* dwarf_cu_to_module_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf_cu_to_module_unittest.cc; path = ../../../common/dwarf_cu_to_module_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0D7116CEC0600407530 /* dwarf_line_to_module_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf_line_to_module_unittest.cc; path = ../../../common/dwarf_line_to_module_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0D8116CEC0600407530 /* stabs_to_module_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = stabs_to_module_unittest.cc; path = ../../../common/stabs_to_module_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0D9116CEC0600407530 /* test_assembler_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = test_assembler_unittest.cc; path = ../../../common/test_assembler_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0DA116CEC5800407530 /* bytereader_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = bytereader_unittest.cc; path = ../../../common/dwarf/bytereader_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0DB116CEC5800407530 /* dwarf2diehandler_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf2diehandler_unittest.cc; path = ../../../common/dwarf/dwarf2diehandler_unittest.cc; sourceTree = SOURCE_ROOT; };
		B88FB0DF116CEEA800407530 /* dwarf2diehandler_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dwarf2diehandler_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FB0F2116CEF1900407530 /* dwarf_line_to_module_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dwarf_line_to_module_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FB10A116CF07900407530 /* dwarf_cu_to_module_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dwarf_cu_to_module_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FB11F116CF27F00407530 /* dwarf_cfi_to_module_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dwarf_cfi_to_module_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FB135116CF30F00407530 /* bytereader_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = bytereader_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B88FB14B116CF4A700407530 /* byte_cursor_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = byte_cursor_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B89E0E6D1166571D00DD08C9 /* macho_reader_unittest.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = macho_reader_unittest.cc; path = ../../../common/mac/macho_reader_unittest.cc; sourceTree = SOURCE_ROOT; };
		B89E0E6E1166571D00DD08C9 /* macho_reader.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = macho_reader.cc; path = ../../../common/mac/macho_reader.cc; sourceTree = SOURCE_ROOT; };
		B89E0E6F1166571D00DD08C9 /* macho_reader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = macho_reader.h; path = ../../../common/mac/macho_reader.h; sourceTree = SOURCE_ROOT; };
		B89E0E701166573700DD08C9 /* macho_dump.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = macho_dump.cc; sourceTree = "<group>"; };
		B89E0E741166575200DD08C9 /* macho_dump */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = macho_dump; sourceTree = BUILT_PRODUCTS_DIR; };
		B89E0E9511665A6400DD08C9 /* macho_reader_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = macho_reader_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		B89E0E9F11665AC300DD08C9 /* gtest_main.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = gtest_main.cc; path = ../../../testing/gtest/src/gtest_main.cc; sourceTree = SOURCE_ROOT; };
		B89E0EA011665AC300DD08C9 /* gtest-all.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "gtest-all.cc"; path = "../../../testing/gtest/src/gtest-all.cc"; sourceTree = SOURCE_ROOT; };
		B89E0EA311665AEA00DD08C9 /* gmock-all.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "gmock-all.cc"; path = "../../../testing/src/gmock-all.cc"; sourceTree = SOURCE_ROOT; };
		B8C5B5111166531A00D34F4E /* dump_syms */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dump_syms; sourceTree = BUILT_PRODUCTS_DIR; };
		B8E8CA0C1156C854009E61B2 /* byteswap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = byteswap.h; path = ../../../common/mac/byteswap.h; sourceTree = SOURCE_ROOT; };
		D21F97D211CBA0F200239E38 /* test_assembler_unittest */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = test_assembler_unittest; sourceTree = BUILT_PRODUCTS_DIR; };
		F95B422B0E0E22D100DBDE83 /* bytereader-inl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "bytereader-inl.h"; path = "../../../common/dwarf/bytereader-inl.h"; sourceTree = SOURCE_ROOT; };
		F95B422C0E0E22D100DBDE83 /* bytereader.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = bytereader.cc; path = ../../../common/dwarf/bytereader.cc; sourceTree = SOURCE_ROOT; };
		F95B422D0E0E22D100DBDE83 /* bytereader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = bytereader.h; path = ../../../common/dwarf/bytereader.h; sourceTree = SOURCE_ROOT; };
		F95B422E0E0E22D100DBDE83 /* dwarf2enums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dwarf2enums.h; path = ../../../common/dwarf/dwarf2enums.h; sourceTree = SOURCE_ROOT; };
		F95B422F0E0E22D100DBDE83 /* dwarf2reader.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = dwarf2reader.cc; path = ../../../common/dwarf/dwarf2reader.cc; sourceTree = SOURCE_ROOT; };
		F95B42300E0E22D100DBDE83 /* dwarf2reader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dwarf2reader.h; path = ../../../common/dwarf/dwarf2reader.h; sourceTree = SOURCE_ROOT; };
		F95B42310E0E22D100DBDE83 /* line_state_machine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = line_state_machine.h; path = ../../../common/dwarf/line_state_machine.h; sourceTree = SOURCE_ROOT; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		B84A91F2116CF784006C210E /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B84A91F8116CF78F006C210E /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FAF2D116A591D00407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB042116BE3C400407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB005116BDE8300407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB03F116BE24200407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB022116BDFFF00407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB0B7116CEABF00407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB0C1116CEB0600407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB0DD116CEEA800407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB0E3116CEEB000407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB0F0116CEF1900407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB0F6116CEF2000407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB108116CF07900407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB10E116CF08100407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB11D116CF27F00407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB123116CF28500407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB133116CF30F00407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB139116CF31600407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB149116CF4A700407530 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB14F116CF4AE00407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B89E0E721166575200DD08C9 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B89E0E9311665A6400DD08C9 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB057116C0CDE00407530 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B8C5B50F1166531A00D34F4E /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B8C5B523116653BA00D34F4E /* Foundation.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D21F97D011CBA0F200239E38 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D21F97D811CBA13D00239E38 /* libgtestmockall.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		08FB7794FE84155DC02AAC07 /* dump_syms */ = {
			isa = PBXGroup;
			children = (
				8B31023E11F0CF1C00FCF3E4 /* Breakpad.xcconfig */,
				8B3102D411F0D60300FCF3E4 /* BreakpadDebug.xcconfig */,
				8B3102D511F0D60300FCF3E4 /* BreakpadRelease.xcconfig */,
				B89E0E9D11665A9500DD08C9 /* TESTING */,
				F9F5344B0E7C8FFC0012363F /* DWARF */,
				B89E0E6C1166569700DD08C9 /* MACHO */,
				B88FAE3811666A1700407530 /* STABS */,
				B88FAE1C11665FFD00407530 /* MODULE */,
				162F64F8161C591500CD68D5 /* arch_utilities.cc */,
				162F64F9161C591500CD68D5 /* arch_utilities.h */,
				B88FAE1D1166603300407530 /* byte_cursor.h */,
				B88FB0D4116CEC0600407530 /* byte_cursor_unittest.cc */,
				B8E8CA0C1156C854009E61B2 /* byteswap.h */,
				9BE650410B52F6D800611104 /* file_id.cc */,
				9BE650420B52F6D800611104 /* file_id.h */,
				9BDF186D0B1BB43700F8391B /* dump_syms.h */,
				08FB7796FE84155DC02AAC07 /* dump_syms.cc */,
				9BDF186E0B1BB43700F8391B /* dump_syms_tool.cc */,
				B89E0E701166573700DD08C9 /* macho_dump.cc */,
				4D72CAF413DFBAC2006CABE3 /* md5.cc */,
				08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */,
				1AB674ADFE9D54B511CA2CBB /* Products */,
			);
			name = dump_syms;
			sourceTree = "<group>";
		};
		08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */ = {
			isa = PBXGroup;
			children = (
				08FB779EFE84155DC02AAC07 /* Foundation.framework */,
			);
			name = "External Frameworks and Libraries";
			sourceTree = "<group>";
		};
		1AB674ADFE9D54B511CA2CBB /* Products */ = {
			isa = PBXGroup;
			children = (
				B8C5B5111166531A00D34F4E /* dump_syms */,
				B89E0E741166575200DD08C9 /* macho_dump */,
				B89E0E9511665A6400DD08C9 /* macho_reader_unittest */,
				B88FAF2F116A591E00407530 /* dwarf2reader_cfi_unittest */,
				B88FB007116BDE8300407530 /* stabs_reader_unittest */,
				B88FB024116BDFFF00407530 /* libgtestmockall.a */,
				B88FB0B9116CEABF00407530 /* module_unittest */,
				B88FB0DF116CEEA800407530 /* dwarf2diehandler_unittest */,
				B88FB0F2116CEF1900407530 /* dwarf_line_to_module_unittest */,
				B88FB10A116CF07900407530 /* dwarf_cu_to_module_unittest */,
				B88FB11F116CF27F00407530 /* dwarf_cfi_to_module_unittest */,
				B88FB135116CF30F00407530 /* bytereader_unittest */,
				B88FB14B116CF4A700407530 /* byte_cursor_unittest */,
				B84A91F4116CF784006C210E /* stabs_to_module_unittest */,
				D21F97D211CBA0F200239E38 /* test_assembler_unittest */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		B88FAE1C11665FFD00407530 /* MODULE */ = {
			isa = PBXGroup;
			children = (
				B88FAE1E1166603300407530 /* dwarf_cu_to_module.cc */,
				B88FAE1F1166603300407530 /* dwarf_cu_to_module.h */,
				B88FB0D6116CEC0600407530 /* dwarf_cu_to_module_unittest.cc */,
				B88FAE201166603300407530 /* dwarf_line_to_module.cc */,
				B88FAE211166603300407530 /* dwarf_line_to_module.h */,
				B88FB0D7116CEC0600407530 /* dwarf_line_to_module_unittest.cc */,
				B88FAE221166603300407530 /* language.cc */,
				B88FAE231166603300407530 /* language.h */,
				B88FAE241166603300407530 /* module.cc */,
				B88FAE251166603300407530 /* module.h */,
				B88FB0B5116CEA8A00407530 /* module_unittest.cc */,
				B88FAE331166673E00407530 /* dwarf_cfi_to_module.cc */,
				B88FAE341166673E00407530 /* dwarf_cfi_to_module.h */,
				B88FB0D5116CEC0600407530 /* dwarf_cfi_to_module_unittest.cc */,
				B88FAE3C11666C8900407530 /* stabs_to_module.cc */,
				B88FAE3D11666C8900407530 /* stabs_to_module.h */,
				B88FB0D8116CEC0600407530 /* stabs_to_module_unittest.cc */,
			);
			name = MODULE;
			sourceTree = "<group>";
		};
		B88FAE3811666A1700407530 /* STABS */ = {
			isa = PBXGroup;
			children = (
				B88FB003116BDE7200407530 /* stabs_reader_unittest.cc */,
				B88FAE3911666C6F00407530 /* stabs_reader.cc */,
				B88FAE3A11666C6F00407530 /* stabs_reader.h */,
			);
			name = STABS;
			sourceTree = "<group>";
		};
		B89E0E6C1166569700DD08C9 /* MACHO */ = {
			isa = PBXGroup;
			children = (
				B89E0E6D1166571D00DD08C9 /* macho_reader_unittest.cc */,
				B89E0E6E1166571D00DD08C9 /* macho_reader.cc */,
				B89E0E6F1166571D00DD08C9 /* macho_reader.h */,
				557800890BE1F3AB00EC23E0 /* macho_utilities.cc */,
				5578008A0BE1F3AB00EC23E0 /* macho_utilities.h */,
				9BE650430B52F6D800611104 /* macho_id.cc */,
				9BE650440B52F6D800611104 /* macho_id.h */,
				9BE650450B52F6D800611104 /* macho_walker.cc */,
				9BE650460B52F6D800611104 /* macho_walker.h */,
			);
			name = MACHO;
			sourceTree = "<group>";
		};
		B89E0E9D11665A9500DD08C9 /* TESTING */ = {
			isa = PBXGroup;
			children = (
				B88FAE0911665B5700407530 /* test_assembler.cc */,
				B88FAE0A11665B5700407530 /* test_assembler.h */,
				B88FB0D9116CEC0600407530 /* test_assembler_unittest.cc */,
				B89E0EA311665AEA00DD08C9 /* gmock-all.cc */,
				B89E0E9F11665AC300DD08C9 /* gtest_main.cc */,
				B89E0EA011665AC300DD08C9 /* gtest-all.cc */,
			);
			name = TESTING;
			sourceTree = "<group>";
		};
		F9F5344B0E7C8FFC0012363F /* DWARF */ = {
			isa = PBXGroup;
			children = (
				B88FAF34116A595400407530 /* cfi_assembler.cc */,
				B88FAF35116A595400407530 /* cfi_assembler.h */,
				F95B422E0E0E22D100DBDE83 /* dwarf2enums.h */,
				F95B422F0E0E22D100DBDE83 /* dwarf2reader.cc */,
				F95B42300E0E22D100DBDE83 /* dwarf2reader.h */,
				B88FAF36116A595400407530 /* dwarf2reader_cfi_unittest.cc */,
				F95B422D0E0E22D100DBDE83 /* bytereader.h */,
				F95B422B0E0E22D100DBDE83 /* bytereader-inl.h */,
				F95B422C0E0E22D100DBDE83 /* bytereader.cc */,
				B88FB0DA116CEC5800407530 /* bytereader_unittest.cc */,
				F95B42310E0E22D100DBDE83 /* line_state_machine.h */,
				B88FAE1711665FE400407530 /* dwarf2diehandler.cc */,
				B88FAE1811665FE400407530 /* dwarf2diehandler.h */,
				B88FB0DB116CEC5800407530 /* dwarf2diehandler_unittest.cc */,
				8BCAAA4A1CE3A7980046090B /* elf_reader.cc */,
				8BCAAA4B1CE3A7980046090B /* elf_reader.h */,
			);
			name = DWARF;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		B88FB020116BDFFF00407530 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		B84A91F3116CF784006C210E /* stabs_to_module_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B84A9202116CF7F0006C210E /* Build configuration list for PBXNativeTarget "stabs_to_module_unittest" */;
			buildPhases = (
				B84A91F1116CF784006C210E /* Sources */,
				B84A91F2116CF784006C210E /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B84A91FA116CF796006C210E /* PBXTargetDependency */,
			);
			name = stabs_to_module_unittest;
			productName = stabs_to_module_unittest;
			productReference = B84A91F4116CF784006C210E /* stabs_to_module_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FAF2E116A591D00407530 /* dwarf2reader_cfi_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FAF33116A594800407530 /* Build configuration list for PBXNativeTarget "dwarf2reader_cfi_unittest" */;
			buildPhases = (
				B88FAF2C116A591D00407530 /* Sources */,
				B88FAF2D116A591D00407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB03A116BE17E00407530 /* PBXTargetDependency */,
			);
			name = dwarf2reader_cfi_unittest;
			productName = dwarf2reader_cfi_unittest;
			productReference = B88FAF2F116A591E00407530 /* dwarf2reader_cfi_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FB006116BDE8300407530 /* stabs_reader_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB013116BDEC800407530 /* Build configuration list for PBXNativeTarget "stabs_reader_unittest" */;
			buildPhases = (
				B88FB004116BDE8300407530 /* Sources */,
				B88FB005116BDE8300407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB088116CE6D800407530 /* PBXTargetDependency */,
			);
			name = stabs_reader_unittest;
			productName = stabs_reader_unittest;
			productReference = B88FB007116BDE8300407530 /* stabs_reader_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FB023116BDFFF00407530 /* gtestmockall */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB027116BE02900407530 /* Build configuration list for PBXNativeTarget "gtestmockall" */;
			buildPhases = (
				B88FB020116BDFFF00407530 /* Headers */,
				B88FB021116BDFFF00407530 /* Sources */,
				B88FB022116BDFFF00407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = gtestmockall;
			productName = gtestmockall;
			productReference = B88FB024116BDFFF00407530 /* libgtestmockall.a */;
			productType = "com.apple.product-type.library.static";
		};
		B88FB0B8116CEABF00407530 /* module_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB0BE116CEAFE00407530 /* Build configuration list for PBXNativeTarget "module_unittest" */;
			buildPhases = (
				B88FB0B6116CEABF00407530 /* Sources */,
				B88FB0B7116CEABF00407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB0C0116CEAFE00407530 /* PBXTargetDependency */,
			);
			name = module_unittest;
			productName = module_unittest;
			productReference = B88FB0B9116CEABF00407530 /* module_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FB0DE116CEEA800407530 /* dwarf2diehandler_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB0E4116CEECE00407530 /* Build configuration list for PBXNativeTarget "dwarf2diehandler_unittest" */;
			buildPhases = (
				B88FB0DC116CEEA800407530 /* Sources */,
				B88FB0DD116CEEA800407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB0E8116CEEDA00407530 /* PBXTargetDependency */,
			);
			name = dwarf2diehandler_unittest;
			productName = dwarf2diehandler_unittest;
			productReference = B88FB0DF116CEEA800407530 /* dwarf2diehandler_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FB0F1116CEF1900407530 /* dwarf_line_to_module_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB0F9116CEF9800407530 /* Build configuration list for PBXNativeTarget "dwarf_line_to_module_unittest" */;
			buildPhases = (
				B88FB0EF116CEF1900407530 /* Sources */,
				B88FB0F0116CEF1900407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB0F8116CEF2E00407530 /* PBXTargetDependency */,
			);
			name = dwarf_line_to_module_unittest;
			productName = dwarf_line_to_module_unittest;
			productReference = B88FB0F2116CEF1900407530 /* dwarf_line_to_module_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FB109116CF07900407530 /* dwarf_cu_to_module_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB111116CF0A800407530 /* Build configuration list for PBXNativeTarget "dwarf_cu_to_module_unittest" */;
			buildPhases = (
				B88FB107116CF07900407530 /* Sources */,
				B88FB108116CF07900407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB110116CF08A00407530 /* PBXTargetDependency */,
			);
			name = dwarf_cu_to_module_unittest;
			productName = dwarf_cu_to_module_unittest;
			productReference = B88FB10A116CF07900407530 /* dwarf_cu_to_module_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FB11E116CF27F00407530 /* dwarf_cfi_to_module_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB128116CF2C800407530 /* Build configuration list for PBXNativeTarget "dwarf_cfi_to_module_unittest" */;
			buildPhases = (
				B88FB11C116CF27F00407530 /* Sources */,
				B88FB11D116CF27F00407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB125116CF29E00407530 /* PBXTargetDependency */,
			);
			name = dwarf_cfi_to_module_unittest;
			productName = dwarf_cfi_to_module_unittest;
			productReference = B88FB11F116CF27F00407530 /* dwarf_cfi_to_module_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FB134116CF30F00407530 /* bytereader_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB13A116CF33400407530 /* Build configuration list for PBXNativeTarget "bytereader_unittest" */;
			buildPhases = (
				B88FB132116CF30F00407530 /* Sources */,
				B88FB133116CF30F00407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB13C116CF35C00407530 /* PBXTargetDependency */,
			);
			name = bytereader_unittest;
			productName = bytereader_unittest;
			productReference = B88FB135116CF30F00407530 /* bytereader_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B88FB14A116CF4A700407530 /* byte_cursor_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B88FB159116CF4F900407530 /* Build configuration list for PBXNativeTarget "byte_cursor_unittest" */;
			buildPhases = (
				B88FB148116CF4A700407530 /* Sources */,
				B88FB149116CF4A700407530 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB151116CF4C100407530 /* PBXTargetDependency */,
			);
			name = byte_cursor_unittest;
			productName = byte_cursor_unittest;
			productReference = B88FB14B116CF4A700407530 /* byte_cursor_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B89E0E731166575200DD08C9 /* macho_dump */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B89E0E7F116657A100DD08C9 /* Build configuration list for PBXNativeTarget "macho_dump" */;
			buildPhases = (
				B89E0E711166575200DD08C9 /* Sources */,
				B89E0E721166575200DD08C9 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = macho_dump;
			productName = macho_dump;
			productReference = B89E0E741166575200DD08C9 /* macho_dump */;
			productType = "com.apple.product-type.tool";
		};
		B89E0E9411665A6400DD08C9 /* macho_reader_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B89E0E9E11665A9600DD08C9 /* Build configuration list for PBXNativeTarget "macho_reader_unittest" */;
			buildPhases = (
				B89E0E9211665A6400DD08C9 /* Sources */,
				B89E0E9311665A6400DD08C9 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				B88FB090116CE71000407530 /* PBXTargetDependency */,
			);
			name = macho_reader_unittest;
			productName = macho_reader_unittest;
			productReference = B89E0E9511665A6400DD08C9 /* macho_reader_unittest */;
			productType = "com.apple.product-type.tool";
		};
		B8C5B5101166531A00D34F4E /* dump_syms */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = B8C5B5151166533900D34F4E /* Build configuration list for PBXNativeTarget "dump_syms" */;
			buildPhases = (
				B8C5B50E1166531A00D34F4E /* Sources */,
				B8C5B50F1166531A00D34F4E /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = dump_syms;
			productName = dump_syms;
			productReference = B8C5B5111166531A00D34F4E /* dump_syms */;
			productType = "com.apple.product-type.tool";
		};
		D21F97D111CBA0F200239E38 /* test_assembler_unittest */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = D21F97D611CBA11000239E38 /* Build configuration list for PBXNativeTarget "test_assembler_unittest" */;
			buildPhases = (
				D21F97CF11CBA0F200239E38 /* Sources */,
				D21F97D011CBA0F200239E38 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = test_assembler_unittest;
			productName = test_assembler_unittest;
			productReference = D21F97D211CBA0F200239E38 /* test_assembler_unittest */;
			productType = "com.apple.product-type.tool";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		08FB7793FE84155DC02AAC07 /* Project object */ = {
			isa = PBXProject;
			attributes = {
			};
			buildConfigurationList = 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "dump_syms" */;
			compatibilityVersion = "Xcode 3.1";
			developmentRegion = English;
			hasScannedForEncodings = 1;
			knownRegions = (
				English,
				Japanese,
				French,
				German,
			);
			mainGroup = 08FB7794FE84155DC02AAC07 /* dump_syms */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				B8C5B5101166531A00D34F4E /* dump_syms */,
				B89E0E731166575200DD08C9 /* macho_dump */,
				B88FB023116BDFFF00407530 /* gtestmockall */,
				B88FB14A116CF4A700407530 /* byte_cursor_unittest */,
				B89E0E9411665A6400DD08C9 /* macho_reader_unittest */,
				B88FB006116BDE8300407530 /* stabs_reader_unittest */,
				B88FB134116CF30F00407530 /* bytereader_unittest */,
				B88FAF2E116A591D00407530 /* dwarf2reader_cfi_unittest */,
				B88FB0DE116CEEA800407530 /* dwarf2diehandler_unittest */,
				B88FB109116CF07900407530 /* dwarf_cu_to_module_unittest */,
				B88FB0F1116CEF1900407530 /* dwarf_line_to_module_unittest */,
				B88FB11E116CF27F00407530 /* dwarf_cfi_to_module_unittest */,
				B84A91F3116CF784006C210E /* stabs_to_module_unittest */,
				B88FB0B8116CEABF00407530 /* module_unittest */,
				B88FAFC9116BDCAD00407530 /* all_unittests */,
				D21F97D111CBA0F200239E38 /* test_assembler_unittest */,
			);
		};
/* End PBXProject section */

/* Begin PBXShellScriptBuildPhase section */
		B88FB094116CE73E00407530 /* ShellScript */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "set -eu\n\ncd $BUILT_PRODUCTS_DIR\npwd\n\n./byte_cursor_unittest\n./macho_reader_unittest\n./stabs_reader_unittest\n./bytereader_unittest\n./dwarf2reader_cfi_unittest\n./dwarf2diehandler_unittest\n./dwarf_cu_to_module_unittest\n./dwarf_line_to_module_unittest\n./dwarf_cfi_to_module_unittest\n./stabs_to_module_unittest\n./module_unittest\n./test_assembler_unittest\n\necho \"Expect two warnings from the following tests:\"\necho \"   Errors.BadFileNumber\"\necho \"   Errors.BadDirectoryNumber\"\necho \"The proper behavior of these tests is to print text that XCode confuses with compiler warnings.\"\n";
		};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		B84A91F1116CF784006C210E /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B84A91FB116CF7AF006C210E /* module.cc in Sources */,
				B84A91FC116CF7AF006C210E /* stabs_to_module.cc in Sources */,
				B84A91FD116CF7AF006C210E /* stabs_to_module_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FAF2C116A591D00407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FAF38116A595400407530 /* dwarf2reader_cfi_unittest.cc in Sources */,
				B88FAF3F116A5A2E00407530 /* dwarf2reader.cc in Sources */,
				8BCAAA4D1CE3B1260046090B /* elf_reader.cc in Sources */,
				B88FAF40116A5A2E00407530 /* bytereader.cc in Sources */,
				B88FAF37116A595400407530 /* cfi_assembler.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB004116BDE8300407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB00F116BDEA700407530 /* stabs_reader_unittest.cc in Sources */,
				B88FB010116BDEA700407530 /* stabs_reader.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB021116BDFFF00407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB028116BE03100407530 /* test_assembler.cc in Sources */,
				B88FB029116BE03100407530 /* gmock-all.cc in Sources */,
				B88FB02A116BE03100407530 /* gtest_main.cc in Sources */,
				B88FB02B116BE03100407530 /* gtest-all.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB0B6116CEABF00407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB0BD116CEAE000407530 /* module_unittest.cc in Sources */,
				B88FB0C4116CEB4100407530 /* module.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB0DC116CEEA800407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB0E5116CEED300407530 /* dwarf2diehandler.cc in Sources */,
				B88FB0E6116CEED300407530 /* dwarf2diehandler_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB0EF116CEF1900407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB0FA116CF00E00407530 /* dwarf_line_to_module.cc in Sources */,
				B88FB0FE116CF02400407530 /* module.cc in Sources */,
				B88FB0FB116CF00E00407530 /* dwarf_line_to_module_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB107116CF07900407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB112116CF1F000407530 /* dwarf_cu_to_module.cc in Sources */,
				B88FB113116CF1F000407530 /* dwarf_cu_to_module_unittest.cc in Sources */,
				B88FB114116CF1F000407530 /* language.cc in Sources */,
				B88FB115116CF1F000407530 /* module.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB11C116CF27F00407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB129116CF2DD00407530 /* module.cc in Sources */,
				B88FB12A116CF2DD00407530 /* dwarf_cfi_to_module.cc in Sources */,
				B88FB12B116CF2DD00407530 /* dwarf_cfi_to_module_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB132116CF30F00407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB13D116CF38300407530 /* cfi_assembler.cc in Sources */,
				B88FB13E116CF38300407530 /* bytereader.cc in Sources */,
				B88FB13F116CF38300407530 /* bytereader_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B88FB148116CF4A700407530 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B88FB152116CF4D300407530 /* byte_cursor_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B89E0E711166575200DD08C9 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				162F6500161C5F2200CD68D5 /* arch_utilities.cc in Sources */,
				B89E0E781166576C00DD08C9 /* macho_reader.cc in Sources */,
				B89E0E7A1166576C00DD08C9 /* macho_dump.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B89E0E9211665A6400DD08C9 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				B89E0E9911665A7200DD08C9 /* macho_reader_unittest.cc in Sources */,
				B89E0E9A11665A7200DD08C9 /* macho_reader.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		B8C5B50E1166531A00D34F4E /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				162F64FA161C591500CD68D5 /* arch_utilities.cc in Sources */,
				B88FAE2C1166606200407530 /* macho_reader.cc in Sources */,
				8BCAAA4C1CE3A7980046090B /* elf_reader.cc in Sources */,
				B8C5B5171166534700D34F4E /* dwarf2reader.cc in Sources */,
				B8C5B5181166534700D34F4E /* bytereader.cc in Sources */,
				B8C5B5191166534700D34F4E /* macho_utilities.cc in Sources */,
				B8C5B51A1166534700D34F4E /* file_id.cc in Sources */,
				B8C5B51B1166534700D34F4E /* macho_id.cc in Sources */,
				B8C5B51C1166534700D34F4E /* macho_walker.cc in Sources */,
				B8C5B51D1166534700D34F4E /* dump_syms.cc in Sources */,
				B8C5B51E1166534700D34F4E /* dump_syms_tool.cc in Sources */,
				B88FAE1911665FE400407530 /* dwarf2diehandler.cc in Sources */,
				B88FAE261166603300407530 /* dwarf_cu_to_module.cc in Sources */,
				B88FAE271166603300407530 /* dwarf_line_to_module.cc in Sources */,
				B88FAE281166603300407530 /* language.cc in Sources */,
				B88FAE291166603300407530 /* module.cc in Sources */,
				B88FAE351166673E00407530 /* dwarf_cfi_to_module.cc in Sources */,
				B88FAE3B11666C6F00407530 /* stabs_reader.cc in Sources */,
				B88FAE3E11666C8900407530 /* stabs_to_module.cc in Sources */,
				4D72CAF513DFBAC2006CABE3 /* md5.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D21F97CF11CBA0F200239E38 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				D21F97E911CBA1FF00239E38 /* test_assembler.cc in Sources */,
				D21F97D711CBA12300239E38 /* test_assembler_unittest.cc in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		8B31051511F100CF00FCF3E4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = D21F97D111CBA0F200239E38 /* test_assembler_unittest */;
			targetProxy = 8B31051411F100CF00FCF3E4 /* PBXContainerItemProxy */;
		};
		B84A91FA116CF796006C210E /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B84A91F9116CF796006C210E /* PBXContainerItemProxy */;
		};
		B84A9201116CF7D2006C210E /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B84A91F3116CF784006C210E /* stabs_to_module_unittest */;
			targetProxy = B84A9200116CF7D2006C210E /* PBXContainerItemProxy */;
		};
		B88FAFCF116BDD7000407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B89E0E9411665A6400DD08C9 /* macho_reader_unittest */;
			targetProxy = B88FAFCE116BDD7000407530 /* PBXContainerItemProxy */;
		};
		B88FAFD1116BDD7000407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FAF2E116A591D00407530 /* dwarf2reader_cfi_unittest */;
			targetProxy = B88FAFD0116BDD7000407530 /* PBXContainerItemProxy */;
		};
		B88FB01D116BDF9800407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB006116BDE8300407530 /* stabs_reader_unittest */;
			targetProxy = B88FB01C116BDF9800407530 /* PBXContainerItemProxy */;
		};
		B88FB03A116BE17E00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB039116BE17E00407530 /* PBXContainerItemProxy */;
		};
		B88FB088116CE6D800407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB087116CE6D800407530 /* PBXContainerItemProxy */;
		};
		B88FB090116CE71000407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB08F116CE71000407530 /* PBXContainerItemProxy */;
		};
		B88FB0C0116CEAFE00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB0BF116CEAFE00407530 /* PBXContainerItemProxy */;
		};
		B88FB0C8116CEB4A00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB0B8116CEABF00407530 /* module_unittest */;
			targetProxy = B88FB0C7116CEB4A00407530 /* PBXContainerItemProxy */;
		};
		B88FB0E8116CEEDA00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB0E7116CEEDA00407530 /* PBXContainerItemProxy */;
		};
		B88FB0F8116CEF2E00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB0F7116CEF2E00407530 /* PBXContainerItemProxy */;
		};
		B88FB110116CF08A00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB10F116CF08A00407530 /* PBXContainerItemProxy */;
		};
		B88FB125116CF29E00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB124116CF29E00407530 /* PBXContainerItemProxy */;
		};
		B88FB13C116CF35C00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB13B116CF35C00407530 /* PBXContainerItemProxy */;
		};
		B88FB151116CF4C100407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB023116BDFFF00407530 /* gtestmockall */;
			targetProxy = B88FB150116CF4C100407530 /* PBXContainerItemProxy */;
		};
		B88FB15B116CF53E00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB14A116CF4A700407530 /* byte_cursor_unittest */;
			targetProxy = B88FB15A116CF53E00407530 /* PBXContainerItemProxy */;
		};
		B88FB15D116CF54B00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB11E116CF27F00407530 /* dwarf_cfi_to_module_unittest */;
			targetProxy = B88FB15C116CF54B00407530 /* PBXContainerItemProxy */;
		};
		B88FB15F116CF54B00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB0F1116CEF1900407530 /* dwarf_line_to_module_unittest */;
			targetProxy = B88FB15E116CF54B00407530 /* PBXContainerItemProxy */;
		};
		B88FB161116CF54B00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB109116CF07900407530 /* dwarf_cu_to_module_unittest */;
			targetProxy = B88FB160116CF54B00407530 /* PBXContainerItemProxy */;
		};
		B88FB165116CF54B00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB0DE116CEEA800407530 /* dwarf2diehandler_unittest */;
			targetProxy = B88FB164116CF54B00407530 /* PBXContainerItemProxy */;
		};
		B88FB167116CF54B00407530 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = B88FB134116CF30F00407530 /* bytereader_unittest */;
			targetProxy = B88FB166116CF54B00407530 /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		1DEB927908733DD40010E9CD /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 8B3102D411F0D60300FCF3E4 /* BreakpadDebug.xcconfig */;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					../../..,
					../../../common/mac/include/,
					../../../third_party/musl/include/,
				);
			};
			name = Debug;
		};
		1DEB927A08733DD40010E9CD /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 8B3102D511F0D60300FCF3E4 /* BreakpadRelease.xcconfig */;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					../../..,
					../../../common/mac/include/,
					../../../third_party/musl/include/,
				);
			};
			name = Release;
		};
		B84A91F6116CF784006C210E /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = stabs_to_module_unittest;
			};
			name = Debug;
		};
		B84A91F7116CF784006C210E /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = stabs_to_module_unittest;
			};
			name = Release;
		};
		B88FAF31116A591F00407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
				);
				LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/build/Debug\"";
				PRODUCT_NAME = dwarf2reader_cfi_unittest;
			};
			name = Debug;
		};
		B88FAF32116A591F00407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				LIBRARY_SEARCH_PATHS = (
					"$(inherited)",
					"$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
				);
				LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/build/Debug\"";
				PRODUCT_NAME = dwarf2reader_cfi_unittest;
			};
			name = Release;
		};
		B88FAFCA116BDCAD00407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = all_unittests;
			};
			name = Debug;
		};
		B88FAFCB116BDCAD00407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = all_unittests;
			};
			name = Release;
		};
		B88FB009116BDE8400407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = HAVE_MACH_O_NLIST_H;
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = stabs_reader_unittest;
			};
			name = Debug;
		};
		B88FB00A116BDE8400407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = HAVE_MACH_O_NLIST_H;
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = stabs_reader_unittest;
			};
			name = Release;
		};
		B88FB025116BE00100407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = gtestmockall;
			};
			name = Debug;
		};
		B88FB026116BE00100407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = gtestmockall;
			};
			name = Release;
		};
		B88FB0BB116CEAC000407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = module_unittest;
			};
			name = Debug;
		};
		B88FB0BC116CEAC000407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = module_unittest;
			};
			name = Release;
		};
		B88FB0E1116CEEA800407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = dwarf2diehandler_unittest;
			};
			name = Debug;
		};
		B88FB0E2116CEEA800407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = dwarf2diehandler_unittest;
			};
			name = Release;
		};
		B88FB0F4116CEF1900407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = dwarf_line_to_module_unittest;
			};
			name = Debug;
		};
		B88FB0F5116CEF1900407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = dwarf_line_to_module_unittest;
			};
			name = Release;
		};
		B88FB10C116CF07A00407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = dwarf_cu_to_module_unittest;
			};
			name = Debug;
		};
		B88FB10D116CF07A00407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = dwarf_cu_to_module_unittest;
			};
			name = Release;
		};
		B88FB121116CF28000407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = dwarf_cfi_to_module_unittest;
			};
			name = Debug;
		};
		B88FB122116CF28000407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = dwarf_cfi_to_module_unittest;
			};
			name = Release;
		};
		B88FB137116CF30F00407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = bytereader_unittest;
			};
			name = Debug;
		};
		B88FB138116CF30F00407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = bytereader_unittest;
			};
			name = Release;
		};
		B88FB14D116CF4A800407530 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = byte_cursor_unittest;
			};
			name = Debug;
		};
		B88FB14E116CF4A800407530 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = byte_cursor_unittest;
			};
			name = Release;
		};
		B89E0E761166575300DD08C9 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = macho_dump;
			};
			name = Debug;
		};
		B89E0E771166575300DD08C9 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = macho_dump;
			};
			name = Release;
		};
		B89E0E9711665A6400DD08C9 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = macho_reader_unittest;
			};
			name = Debug;
		};
		B89E0E9811665A6400DD08C9 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = macho_reader_unittest;
			};
			name = Release;
		};
		B8C5B5131166531B00D34F4E /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = HAVE_MACH_O_NLIST_H;
				GCC_VERSION = "";
				PRODUCT_NAME = dump_syms;
			};
			name = Debug;
		};
		B8C5B5141166531B00D34F4E /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_PREPROCESSOR_DEFINITIONS = HAVE_MACH_O_NLIST_H;
				GCC_VERSION = "";
				PRODUCT_NAME = dump_syms;
			};
			name = Release;
		};
		D21F97D411CBA0F200239E38 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = test_assembler_unittest;
			};
			name = Debug;
		};
		D21F97D511CBA0F200239E38 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				HEADER_SEARCH_PATHS = (
					$inherited,
					../../../testing,
					../../../testing/include,
					../../../testing/gtest,
					../../../testing/gtest/include,
				);
				PRODUCT_NAME = test_assembler_unittest;
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "dump_syms" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1DEB927908733DD40010E9CD /* Debug */,
				1DEB927A08733DD40010E9CD /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B84A9202116CF7F0006C210E /* Build configuration list for PBXNativeTarget "stabs_to_module_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B84A91F6116CF784006C210E /* Debug */,
				B84A91F7116CF784006C210E /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FAF33116A594800407530 /* Build configuration list for PBXNativeTarget "dwarf2reader_cfi_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FAF31116A591F00407530 /* Debug */,
				B88FAF32116A591F00407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FAFCC116BDCCC00407530 /* Build configuration list for PBXAggregateTarget "all_unittests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FAFCA116BDCAD00407530 /* Debug */,
				B88FAFCB116BDCAD00407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB013116BDEC800407530 /* Build configuration list for PBXNativeTarget "stabs_reader_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB009116BDE8400407530 /* Debug */,
				B88FB00A116BDE8400407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB027116BE02900407530 /* Build configuration list for PBXNativeTarget "gtestmockall" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB025116BE00100407530 /* Debug */,
				B88FB026116BE00100407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB0BE116CEAFE00407530 /* Build configuration list for PBXNativeTarget "module_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB0BB116CEAC000407530 /* Debug */,
				B88FB0BC116CEAC000407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB0E4116CEECE00407530 /* Build configuration list for PBXNativeTarget "dwarf2diehandler_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB0E1116CEEA800407530 /* Debug */,
				B88FB0E2116CEEA800407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB0F9116CEF9800407530 /* Build configuration list for PBXNativeTarget "dwarf_line_to_module_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB0F4116CEF1900407530 /* Debug */,
				B88FB0F5116CEF1900407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB111116CF0A800407530 /* Build configuration list for PBXNativeTarget "dwarf_cu_to_module_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB10C116CF07A00407530 /* Debug */,
				B88FB10D116CF07A00407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB128116CF2C800407530 /* Build configuration list for PBXNativeTarget "dwarf_cfi_to_module_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB121116CF28000407530 /* Debug */,
				B88FB122116CF28000407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB13A116CF33400407530 /* Build configuration list for PBXNativeTarget "bytereader_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB137116CF30F00407530 /* Debug */,
				B88FB138116CF30F00407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B88FB159116CF4F900407530 /* Build configuration list for PBXNativeTarget "byte_cursor_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B88FB14D116CF4A800407530 /* Debug */,
				B88FB14E116CF4A800407530 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B89E0E7F116657A100DD08C9 /* Build configuration list for PBXNativeTarget "macho_dump" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B89E0E761166575300DD08C9 /* Debug */,
				B89E0E771166575300DD08C9 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B89E0E9E11665A9600DD08C9 /* Build configuration list for PBXNativeTarget "macho_reader_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B89E0E9711665A6400DD08C9 /* Debug */,
				B89E0E9811665A6400DD08C9 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		B8C5B5151166533900D34F4E /* Build configuration list for PBXNativeTarget "dump_syms" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				B8C5B5131166531B00D34F4E /* Debug */,
				B8C5B5141166531B00D34F4E /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		D21F97D611CBA11000239E38 /* Build configuration list for PBXNativeTarget "test_assembler_unittest" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				D21F97D411CBA0F200239E38 /* Debug */,
				D21F97D511CBA0F200239E38 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 08FB7793FE84155DC02AAC07 /* Project object */;
}
