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

/* Begin PBXAggregateTarget section */
		0F7EB8501F95504B00F1ABCB /* All */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 0F7EB8511F95504B00F1ABCB /* Build configuration list for PBXAggregateTarget "All" */;
			buildPhases = (
			);
			dependencies = (
				0F7EB8561F95505400F1ABCB /* PBXTargetDependency */,
			);
			name = All;
			productName = All;
		};
/* End PBXAggregateTarget section */

/* Begin PBXBuildFile section */
		0F26A7A5205483130090A141 /* PerProcess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F26A7A42054830D0090A141 /* PerProcess.cpp */; };
		0F5167741FAD685C008236A8 /* bmalloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F5167731FAD6852008236A8 /* bmalloc.cpp */; };
		0F5549EF1FB54704007FF75A /* IsoPage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F5549EE1FB54701007FF75A /* IsoPage.cpp */; };
		0F5BF1471F22A8B10029D91D /* HeapKind.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5BF1461F22A8B10029D91D /* HeapKind.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F5BF1491F22A8D80029D91D /* PerHeapKind.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5BF1481F22A8D80029D91D /* PerHeapKind.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F5BF14D1F22B0C30029D91D /* Gigacage.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5BF14C1F22B0C30029D91D /* Gigacage.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F5BF14F1F22DEAF0029D91D /* Gigacage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F5BF14E1F22DEAF0029D91D /* Gigacage.cpp */; };
		0F5BF1521F22E1570029D91D /* Scavenger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F5BF1501F22E1570029D91D /* Scavenger.cpp */; };
		0F5BF1531F22E1570029D91D /* Scavenger.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5BF1511F22E1570029D91D /* Scavenger.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F5BF1731F23C5710029D91D /* BExport.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5BF1721F23C5710029D91D /* BExport.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F74B93E1F89713E00B935D3 /* CryptoRandom.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F74B93C1F89713E00B935D3 /* CryptoRandom.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F74B93F1F89713E00B935D3 /* CryptoRandom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F74B93D1F89713E00B935D3 /* CryptoRandom.cpp */; };
		0F7EB8231F9541B000F1ABCB /* EligibilityResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB7FC1F9541AD00F1ABCB /* EligibilityResult.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8241F9541B000F1ABCB /* IsoHeapImplInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB7FD1F9541AD00F1ABCB /* IsoHeapImplInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8251F9541B000F1ABCB /* DeferredTriggerInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB7FE1F9541AD00F1ABCB /* DeferredTriggerInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8261F9541B000F1ABCB /* IsoAllocatorInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB7FF1F9541AD00F1ABCB /* IsoAllocatorInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8271F9541B000F1ABCB /* IsoTLSDeallocatorEntryInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8001F9541AD00F1ABCB /* IsoTLSDeallocatorEntryInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8281F9541B000F1ABCB /* IsoDirectoryInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8011F9541AD00F1ABCB /* IsoDirectoryInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8291F9541B000F1ABCB /* FreeListInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8021F9541AD00F1ABCB /* FreeListInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB82A1F9541B000F1ABCB /* IsoDirectoryPageInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8031F9541AD00F1ABCB /* IsoDirectoryPageInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB82B1F9541B000F1ABCB /* IsoPageTrigger.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8041F9541AD00F1ABCB /* IsoPageTrigger.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB82C1F9541B000F1ABCB /* IsoHeap.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8051F9541AD00F1ABCB /* IsoHeap.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB82D1F9541B000F1ABCB /* IsoTLSEntry.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8061F9541AD00F1ABCB /* IsoTLSEntry.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB82E1F9541B000F1ABCB /* IsoPage.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8071F9541AD00F1ABCB /* IsoPage.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB82F1F9541B000F1ABCB /* AllIsoHeaps.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F7EB8081F9541AD00F1ABCB /* AllIsoHeaps.cpp */; };
		0F7EB8301F9541B000F1ABCB /* IsoHeapInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8091F9541AD00F1ABCB /* IsoHeapInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8311F9541B000F1ABCB /* IsoPageInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB80A1F9541AE00F1ABCB /* IsoPageInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8321F9541B000F1ABCB /* IsoTLSEntry.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F7EB80B1F9541AE00F1ABCB /* IsoTLSEntry.cpp */; };
		0F7EB8331F9541B000F1ABCB /* IsoTLSDeallocatorEntry.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB80C1F9541AE00F1ABCB /* IsoTLSDeallocatorEntry.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8341F9541B000F1ABCB /* AllIsoHeaps.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB80D1F9541AE00F1ABCB /* AllIsoHeaps.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8351F9541B000F1ABCB /* IsoTLSEntryInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB80E1F9541AE00F1ABCB /* IsoTLSEntryInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8361F9541B000F1ABCB /* IsoTLS.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F7EB80F1F9541AE00F1ABCB /* IsoTLS.cpp */; };
		0F7EB8371F9541B000F1ABCB /* IsoDirectory.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8101F9541AE00F1ABCB /* IsoDirectory.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8381F9541B000F1ABCB /* EligibilityResultInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8111F9541AE00F1ABCB /* EligibilityResultInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8391F9541B000F1ABCB /* DeferredTrigger.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8121F9541AE00F1ABCB /* DeferredTrigger.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB83A1F9541B000F1ABCB /* IsoDeallocatorInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8131F9541AE00F1ABCB /* IsoDeallocatorInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB83B1F9541B000F1ABCB /* IsoHeapImpl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F7EB8141F9541AE00F1ABCB /* IsoHeapImpl.cpp */; };
		0F7EB83C1F9541B000F1ABCB /* IsoAllocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8151F9541AF00F1ABCB /* IsoAllocator.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB83D1F9541B000F1ABCB /* DeferredDecommit.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8161F9541AF00F1ABCB /* DeferredDecommit.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB83E1F9541B000F1ABCB /* FreeList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F7EB8171F9541AF00F1ABCB /* FreeList.cpp */; };
		0F7EB83F1F9541B000F1ABCB /* IsoTLSLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F7EB8181F9541AF00F1ABCB /* IsoTLSLayout.cpp */; };
		0F7EB8401F9541B000F1ABCB /* IsoTLSLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8191F9541AF00F1ABCB /* IsoTLSLayout.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8411F9541B000F1ABCB /* IsoConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB81A1F9541AF00F1ABCB /* IsoConfig.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8421F9541B000F1ABCB /* IsoTLS.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB81B1F9541AF00F1ABCB /* IsoTLS.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8431F9541B000F1ABCB /* IsoTLSAllocatorEntry.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB81C1F9541AF00F1ABCB /* IsoTLSAllocatorEntry.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8441F9541B000F1ABCB /* FreeList.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB81D1F9541AF00F1ABCB /* FreeList.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8451F9541B000F1ABCB /* IsoHeapImpl.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB81E1F9541B000F1ABCB /* IsoHeapImpl.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8461F9541B000F1ABCB /* IsoTLSInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB81F1F9541B000F1ABCB /* IsoTLSInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8471F9541B000F1ABCB /* IsoDeallocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8201F9541B000F1ABCB /* IsoDeallocator.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8481F9541B000F1ABCB /* IsoTLSAllocatorEntryInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8211F9541B000F1ABCB /* IsoTLSAllocatorEntryInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB8491F9541B000F1ABCB /* IsoDirectoryPage.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8221F9541B000F1ABCB /* IsoDirectoryPage.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB84C1F9541C700F1ABCB /* Bits.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB84A1F9541C600F1ABCB /* Bits.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB84D1F9541C700F1ABCB /* BMalloced.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB84B1F9541C600F1ABCB /* BMalloced.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB84F1F954D4E00F1ABCB /* AllIsoHeapsInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB84E1F954D4E00F1ABCB /* AllIsoHeapsInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0F7EB85A1F955A1100F1ABCB /* DeferredDecommitInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F7EB8591F955A0F00F1ABCB /* DeferredDecommitInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		0FD557331F7EDB7B00B1F0A3 /* HeapKind.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FD557321F7EDB7B00B1F0A3 /* HeapKind.cpp */; };
		1400274918F89C1300115C97 /* Heap.h in Headers */ = {isa = PBXBuildFile; fileRef = 14DA320C18875B09007269E0 /* Heap.h */; settings = {ATTRIBUTES = (Private, ); }; };
		1400274A18F89C2300115C97 /* VMHeap.h in Headers */ = {isa = PBXBuildFile; fileRef = 144F7BFC18BFC517003537F3 /* VMHeap.h */; settings = {ATTRIBUTES = (Private, ); }; };
		140FA00319CE429C00FFD3C8 /* BumpRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 140FA00219CE429C00FFD3C8 /* BumpRange.h */; settings = {ATTRIBUTES = (Private, ); }; };
		140FA00519CE4B6800FFD3C8 /* LineMetadata.h in Headers */ = {isa = PBXBuildFile; fileRef = 140FA00419CE4B6800FFD3C8 /* LineMetadata.h */; settings = {ATTRIBUTES = (Private, ); }; };
		141D9B001C8E51C0000ABBA0 /* List.h in Headers */ = {isa = PBXBuildFile; fileRef = 141D9AFF1C8E51C0000ABBA0 /* List.h */; settings = {ATTRIBUTES = (Private, ); }; };
		142B44361E2839E7001DA6E9 /* DebugHeap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 142B44341E2839E7001DA6E9 /* DebugHeap.cpp */; };
		142B44371E2839E7001DA6E9 /* DebugHeap.h in Headers */ = {isa = PBXBuildFile; fileRef = 142B44351E2839E7001DA6E9 /* DebugHeap.h */; };
		142FC6222096409E00A99362 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 142FC6212096409E00A99362 /* Foundation.framework */; };
		143CB81C19022BC900B16A45 /* Mutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 143CB81A19022BC900B16A45 /* Mutex.cpp */; };
		143CB81D19022BC900B16A45 /* Mutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 143CB81B19022BC900B16A45 /* Mutex.h */; settings = {ATTRIBUTES = (Private, ); }; };
		1440AFCB1A95261100837FAA /* Zone.h in Headers */ = {isa = PBXBuildFile; fileRef = 1440AFCA1A95261100837FAA /* Zone.h */; settings = {ATTRIBUTES = (Private, ); }; };
		1440AFCD1A9527AF00837FAA /* Zone.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1440AFCC1A9527AF00837FAA /* Zone.cpp */; };
		1448C30018F3754600502839 /* mbmalloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1448C2FF18F3754300502839 /* mbmalloc.cpp */; };
		1448C30118F3754C00502839 /* bmalloc.h in Headers */ = {isa = PBXBuildFile; fileRef = 1448C2FE18F3754300502839 /* bmalloc.h */; settings = {ATTRIBUTES = (Private, ); }; };
		144BE11F1CA346520099C8C0 /* Object.h in Headers */ = {isa = PBXBuildFile; fileRef = 144BE11E1CA346520099C8C0 /* Object.h */; settings = {ATTRIBUTES = (Private, ); }; };
		144C07F41C7B70260051BB6A /* LargeMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 144C07F21C7B70260051BB6A /* LargeMap.cpp */; };
		144C07F51C7B70260051BB6A /* LargeMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 144C07F31C7B70260051BB6A /* LargeMap.h */; settings = {ATTRIBUTES = (Private, ); }; };
		147DC6E31CA5B70B00724E8D /* Chunk.h in Headers */ = {isa = PBXBuildFile; fileRef = 147DC6E21CA5B70B00724E8D /* Chunk.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14895D911A3A319C0006235D /* Environment.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14895D8F1A3A319C0006235D /* Environment.cpp */; };
		14895D921A3A319C0006235D /* Environment.h in Headers */ = {isa = PBXBuildFile; fileRef = 14895D901A3A319C0006235D /* Environment.h */; settings = {ATTRIBUTES = (Private, ); }; };
		148EFAE81D6B953B008E721E /* ScopeExit.h in Headers */ = {isa = PBXBuildFile; fileRef = 148EFAE61D6B953B008E721E /* ScopeExit.h */; };
		14C8992B1CC485E70027A057 /* Map.h in Headers */ = {isa = PBXBuildFile; fileRef = 14C8992A1CC485E70027A057 /* Map.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14C8992D1CC578330027A057 /* LargeRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 14C8992C1CC578330027A057 /* LargeRange.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14C919C918FCC59F0028DB43 /* BPlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 14C919C818FCC59F0028DB43 /* BPlatform.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14CC394C18EA8858004AFE34 /* libbmalloc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 14F271BE18EA3963008C152F /* libbmalloc.a */; };
		14DD789018F48CEB00950702 /* Sizes.h in Headers */ = {isa = PBXBuildFile; fileRef = 145F6874179DF84100D65598 /* Sizes.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD789318F48D0F00950702 /* ObjectType.h in Headers */ = {isa = PBXBuildFile; fileRef = 1485656018A43DBA00ED6942 /* ObjectType.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD789818F48D4A00950702 /* Allocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 145F6856179DC8CA00D65598 /* Allocator.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD789918F48D4A00950702 /* Cache.h in Headers */ = {isa = PBXBuildFile; fileRef = 144469E517A46BFE00F9EA1D /* Cache.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD789A18F48D4A00950702 /* Deallocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 145F685A179DC90200D65598 /* Deallocator.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD789C18F48D4A00950702 /* BumpAllocator.h in Headers */ = {isa = PBXBuildFile; fileRef = 1413E462189DE1CD00546D68 /* BumpAllocator.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78BC18F48D6B00950702 /* SmallLine.h in Headers */ = {isa = PBXBuildFile; fileRef = 1452478618BC757C00F80098 /* SmallLine.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78BD18F48D6B00950702 /* SmallPage.h in Headers */ = {isa = PBXBuildFile; fileRef = 143E29ED18CAE90500FE8A0F /* SmallPage.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78C518F48D7500950702 /* Algorithm.h in Headers */ = {isa = PBXBuildFile; fileRef = 1421A87718EE462A00B4DD68 /* Algorithm.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78C718F48D7500950702 /* BAssert.h in Headers */ = {isa = PBXBuildFile; fileRef = 1413E468189EEDE400546D68 /* BAssert.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78C818F48D7500950702 /* FixedVector.h in Headers */ = {isa = PBXBuildFile; fileRef = 14D9DB4517F2447100EAAB79 /* FixedVector.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78C918F48D7500950702 /* BInline.h in Headers */ = {isa = PBXBuildFile; fileRef = 1413E460189DCE1E00546D68 /* BInline.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78CB18F48D7500950702 /* PerProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = 14446A0717A61FA400F9EA1D /* PerProcess.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78CC18F48D7500950702 /* PerThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 144469FD17A61F1F00F9EA1D /* PerThread.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78CD18F48D7500950702 /* Range.h in Headers */ = {isa = PBXBuildFile; fileRef = 145F6878179E3A4400D65598 /* Range.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78CE18F48D7500950702 /* Syscall.h in Headers */ = {isa = PBXBuildFile; fileRef = 1417F64F18B7280C0076FA3F /* Syscall.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78CF18F48D7500950702 /* Vector.h in Headers */ = {isa = PBXBuildFile; fileRef = 1479E21217A1A255006D4E9D /* Vector.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14DD78D018F48D7500950702 /* VMAllocate.h in Headers */ = {isa = PBXBuildFile; fileRef = 1479E21417A1A63E006D4E9D /* VMAllocate.h */; settings = {ATTRIBUTES = (Private, ); }; };
		14F271C318EA3978008C152F /* Allocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 145F6855179DC8CA00D65598 /* Allocator.cpp */; };
		14F271C418EA397B008C152F /* Cache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 144469E417A46BFE00F9EA1D /* Cache.cpp */; };
		14F271C518EA397E008C152F /* Deallocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 145F6859179DC90200D65598 /* Deallocator.cpp */; };
		14F271C718EA3990008C152F /* Heap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14DA320E18875D9F007269E0 /* Heap.cpp */; };
		14F271C818EA3990008C152F /* ObjectType.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 14105E8318E14374003A106E /* ObjectType.cpp */; };
		14F271C918EA3990008C152F /* VMHeap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 144F7BFB18BFC517003537F3 /* VMHeap.cpp */; };
		4426E2801C838EE0008EB042 /* Logging.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4426E27E1C838EE0008EB042 /* Logging.cpp */; };
		4426E2811C838EE0008EB042 /* Logging.h in Headers */ = {isa = PBXBuildFile; fileRef = 4426E27F1C838EE0008EB042 /* Logging.h */; settings = {ATTRIBUTES = (Private, ); }; };
		4426E2831C839547008EB042 /* BSoftLinking.h in Headers */ = {isa = PBXBuildFile; fileRef = 4426E2821C839547008EB042 /* BSoftLinking.h */; };
		52F47249210BA30200B730BB /* MemoryStatusSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 52F47248210BA2F500B730BB /* MemoryStatusSPI.h */; settings = {ATTRIBUTES = (Private, ); }; };
		6599C5CC1EC3F15900A2F7BB /* AvailableMemory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6599C5CA1EC3F15900A2F7BB /* AvailableMemory.cpp */; };
		6599C5CD1EC3F15900A2F7BB /* AvailableMemory.h in Headers */ = {isa = PBXBuildFile; fileRef = 6599C5CB1EC3F15900A2F7BB /* AvailableMemory.h */; settings = {ATTRIBUTES = (Private, ); }; };
		7939885B2076EEB60074A2E7 /* BulkDecommit.h in Headers */ = {isa = PBXBuildFile; fileRef = 7939885A2076EEB50074A2E7 /* BulkDecommit.h */; settings = {ATTRIBUTES = (Private, ); }; };
		795AB3C7206E0D340074FE76 /* PhysicalPageMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 795AB3C6206E0D250074FE76 /* PhysicalPageMap.h */; settings = {ATTRIBUTES = (Private, ); }; };
		7C571F0122388B840077A3C7 /* StdLibExtras.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C571F0022388B840077A3C7 /* StdLibExtras.h */; settings = {ATTRIBUTES = (Private, ); }; };
		AD0934331FCF406D00E85EB5 /* BCompiler.h in Headers */ = {isa = PBXBuildFile; fileRef = AD0934321FCF405000E85EB5 /* BCompiler.h */; settings = {ATTRIBUTES = (Private, ); }; };
		AD14AD29202529C400890E3B /* ProcessCheck.h in Headers */ = {isa = PBXBuildFile; fileRef = AD14AD27202529A600890E3B /* ProcessCheck.h */; };
		AD14AD2A202529C700890E3B /* ProcessCheck.mm in Sources */ = {isa = PBXBuildFile; fileRef = AD14AD28202529B000890E3B /* ProcessCheck.mm */; };
		DE8B13B321CC5D9F00A63FCD /* BVMTags.h in Headers */ = {isa = PBXBuildFile; fileRef = DE8B13B221CC5D9F00A63FCD /* BVMTags.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E31E74802238CA5C005D084A /* StaticPerProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = E31E747F2238CA5B005D084A /* StaticPerProcess.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E3A413C9226061140037F470 /* IsoSharedPageInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = E3A413C8226061140037F470 /* IsoSharedPageInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E3F24402225D2C0100A0E0C3 /* IsoSharedPage.h in Headers */ = {isa = PBXBuildFile; fileRef = E3F24401225D2C0100A0E0C3 /* IsoSharedPage.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E3F24404225D2C7600A0E0C3 /* IsoSharedPage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3F24403225D2C7600A0E0C3 /* IsoSharedPage.cpp */; };
		E3FBB5A0225EADB000DB6FBD /* IsoSharedConfig.h in Headers */ = {isa = PBXBuildFile; fileRef = E3FBB59D225EADB000DB6FBD /* IsoSharedConfig.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E3FBB5A1225EADB000DB6FBD /* IsoSharedHeap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E3FBB59E225EADB000DB6FBD /* IsoSharedHeap.cpp */; };
		E3FBB5A2225EADB000DB6FBD /* IsoSharedHeap.h in Headers */ = {isa = PBXBuildFile; fileRef = E3FBB59F225EADB000DB6FBD /* IsoSharedHeap.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E3FBB5A4225ECAD200DB6FBD /* IsoSharedHeapInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = E3FBB5A3225ECAD200DB6FBD /* IsoSharedHeapInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
		FE48BD3B2321E8D700F136D0 /* FailureAction.h in Headers */ = {isa = PBXBuildFile; fileRef = FE48BD3A2321E8CC00F136D0 /* FailureAction.h */; settings = {ATTRIBUTES = (Private, ); }; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		0F7EB8551F95505400F1ABCB /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 145F6837179DC45F00D65598 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 14F271BD18EA3963008C152F;
			remoteInfo = bmalloc;
		};
		14CC394D18EA8861004AFE34 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 145F6837179DC45F00D65598 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 14F271BD18EA3963008C152F;
			remoteInfo = bmalloc;
		};
/* End PBXContainerItemProxy section */

/* Begin PBXFileReference section */
		0F26A7A42054830D0090A141 /* PerProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PerProcess.cpp; path = bmalloc/PerProcess.cpp; sourceTree = "<group>"; };
		0F5167731FAD6852008236A8 /* bmalloc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = bmalloc.cpp; path = bmalloc/bmalloc.cpp; sourceTree = "<group>"; };
		0F5549EE1FB54701007FF75A /* IsoPage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IsoPage.cpp; path = bmalloc/IsoPage.cpp; sourceTree = "<group>"; };
		0F5BF1461F22A8B10029D91D /* HeapKind.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = HeapKind.h; path = bmalloc/HeapKind.h; sourceTree = "<group>"; };
		0F5BF1481F22A8D80029D91D /* PerHeapKind.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PerHeapKind.h; path = bmalloc/PerHeapKind.h; sourceTree = "<group>"; };
		0F5BF14C1F22B0C30029D91D /* Gigacage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Gigacage.h; path = bmalloc/Gigacage.h; sourceTree = "<group>"; };
		0F5BF14E1F22DEAF0029D91D /* Gigacage.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Gigacage.cpp; path = bmalloc/Gigacage.cpp; sourceTree = "<group>"; };
		0F5BF1501F22E1570029D91D /* Scavenger.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = Scavenger.cpp; path = bmalloc/Scavenger.cpp; sourceTree = "<group>"; };
		0F5BF1511F22E1570029D91D /* Scavenger.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Scavenger.h; path = bmalloc/Scavenger.h; sourceTree = "<group>"; };
		0F5BF1721F23C5710029D91D /* BExport.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BExport.h; path = bmalloc/BExport.h; sourceTree = "<group>"; };
		0F74B93C1F89713E00B935D3 /* CryptoRandom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CryptoRandom.h; path = bmalloc/CryptoRandom.h; sourceTree = "<group>"; };
		0F74B93D1F89713E00B935D3 /* CryptoRandom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CryptoRandom.cpp; path = bmalloc/CryptoRandom.cpp; sourceTree = "<group>"; };
		0F7EB7FC1F9541AD00F1ABCB /* EligibilityResult.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EligibilityResult.h; path = bmalloc/EligibilityResult.h; sourceTree = SOURCE_ROOT; };
		0F7EB7FD1F9541AD00F1ABCB /* IsoHeapImplInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoHeapImplInlines.h; path = bmalloc/IsoHeapImplInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB7FE1F9541AD00F1ABCB /* DeferredTriggerInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeferredTriggerInlines.h; path = bmalloc/DeferredTriggerInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB7FF1F9541AD00F1ABCB /* IsoAllocatorInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoAllocatorInlines.h; path = bmalloc/IsoAllocatorInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8001F9541AD00F1ABCB /* IsoTLSDeallocatorEntryInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLSDeallocatorEntryInlines.h; path = bmalloc/IsoTLSDeallocatorEntryInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8011F9541AD00F1ABCB /* IsoDirectoryInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoDirectoryInlines.h; path = bmalloc/IsoDirectoryInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8021F9541AD00F1ABCB /* FreeListInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FreeListInlines.h; path = bmalloc/FreeListInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8031F9541AD00F1ABCB /* IsoDirectoryPageInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoDirectoryPageInlines.h; path = bmalloc/IsoDirectoryPageInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8041F9541AD00F1ABCB /* IsoPageTrigger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoPageTrigger.h; path = bmalloc/IsoPageTrigger.h; sourceTree = SOURCE_ROOT; };
		0F7EB8051F9541AD00F1ABCB /* IsoHeap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoHeap.h; path = bmalloc/IsoHeap.h; sourceTree = SOURCE_ROOT; };
		0F7EB8061F9541AD00F1ABCB /* IsoTLSEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLSEntry.h; path = bmalloc/IsoTLSEntry.h; sourceTree = SOURCE_ROOT; };
		0F7EB8071F9541AD00F1ABCB /* IsoPage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoPage.h; path = bmalloc/IsoPage.h; sourceTree = SOURCE_ROOT; };
		0F7EB8081F9541AD00F1ABCB /* AllIsoHeaps.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AllIsoHeaps.cpp; path = bmalloc/AllIsoHeaps.cpp; sourceTree = SOURCE_ROOT; };
		0F7EB8091F9541AD00F1ABCB /* IsoHeapInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoHeapInlines.h; path = bmalloc/IsoHeapInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB80A1F9541AE00F1ABCB /* IsoPageInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoPageInlines.h; path = bmalloc/IsoPageInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB80B1F9541AE00F1ABCB /* IsoTLSEntry.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IsoTLSEntry.cpp; path = bmalloc/IsoTLSEntry.cpp; sourceTree = SOURCE_ROOT; };
		0F7EB80C1F9541AE00F1ABCB /* IsoTLSDeallocatorEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLSDeallocatorEntry.h; path = bmalloc/IsoTLSDeallocatorEntry.h; sourceTree = SOURCE_ROOT; };
		0F7EB80D1F9541AE00F1ABCB /* AllIsoHeaps.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AllIsoHeaps.h; path = bmalloc/AllIsoHeaps.h; sourceTree = SOURCE_ROOT; };
		0F7EB80E1F9541AE00F1ABCB /* IsoTLSEntryInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLSEntryInlines.h; path = bmalloc/IsoTLSEntryInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB80F1F9541AE00F1ABCB /* IsoTLS.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IsoTLS.cpp; path = bmalloc/IsoTLS.cpp; sourceTree = SOURCE_ROOT; };
		0F7EB8101F9541AE00F1ABCB /* IsoDirectory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoDirectory.h; path = bmalloc/IsoDirectory.h; sourceTree = SOURCE_ROOT; };
		0F7EB8111F9541AE00F1ABCB /* EligibilityResultInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EligibilityResultInlines.h; path = bmalloc/EligibilityResultInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8121F9541AE00F1ABCB /* DeferredTrigger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeferredTrigger.h; path = bmalloc/DeferredTrigger.h; sourceTree = SOURCE_ROOT; };
		0F7EB8131F9541AE00F1ABCB /* IsoDeallocatorInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoDeallocatorInlines.h; path = bmalloc/IsoDeallocatorInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8141F9541AE00F1ABCB /* IsoHeapImpl.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IsoHeapImpl.cpp; path = bmalloc/IsoHeapImpl.cpp; sourceTree = SOURCE_ROOT; };
		0F7EB8151F9541AF00F1ABCB /* IsoAllocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoAllocator.h; path = bmalloc/IsoAllocator.h; sourceTree = SOURCE_ROOT; };
		0F7EB8161F9541AF00F1ABCB /* DeferredDecommit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeferredDecommit.h; path = bmalloc/DeferredDecommit.h; sourceTree = SOURCE_ROOT; };
		0F7EB8171F9541AF00F1ABCB /* FreeList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FreeList.cpp; path = bmalloc/FreeList.cpp; sourceTree = SOURCE_ROOT; };
		0F7EB8181F9541AF00F1ABCB /* IsoTLSLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IsoTLSLayout.cpp; path = bmalloc/IsoTLSLayout.cpp; sourceTree = SOURCE_ROOT; };
		0F7EB8191F9541AF00F1ABCB /* IsoTLSLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLSLayout.h; path = bmalloc/IsoTLSLayout.h; sourceTree = SOURCE_ROOT; };
		0F7EB81A1F9541AF00F1ABCB /* IsoConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoConfig.h; path = bmalloc/IsoConfig.h; sourceTree = SOURCE_ROOT; };
		0F7EB81B1F9541AF00F1ABCB /* IsoTLS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLS.h; path = bmalloc/IsoTLS.h; sourceTree = SOURCE_ROOT; };
		0F7EB81C1F9541AF00F1ABCB /* IsoTLSAllocatorEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLSAllocatorEntry.h; path = bmalloc/IsoTLSAllocatorEntry.h; sourceTree = SOURCE_ROOT; };
		0F7EB81D1F9541AF00F1ABCB /* FreeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FreeList.h; path = bmalloc/FreeList.h; sourceTree = SOURCE_ROOT; };
		0F7EB81E1F9541B000F1ABCB /* IsoHeapImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoHeapImpl.h; path = bmalloc/IsoHeapImpl.h; sourceTree = SOURCE_ROOT; };
		0F7EB81F1F9541B000F1ABCB /* IsoTLSInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLSInlines.h; path = bmalloc/IsoTLSInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8201F9541B000F1ABCB /* IsoDeallocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoDeallocator.h; path = bmalloc/IsoDeallocator.h; sourceTree = SOURCE_ROOT; };
		0F7EB8211F9541B000F1ABCB /* IsoTLSAllocatorEntryInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoTLSAllocatorEntryInlines.h; path = bmalloc/IsoTLSAllocatorEntryInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8221F9541B000F1ABCB /* IsoDirectoryPage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoDirectoryPage.h; path = bmalloc/IsoDirectoryPage.h; sourceTree = SOURCE_ROOT; };
		0F7EB84A1F9541C600F1ABCB /* Bits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Bits.h; path = bmalloc/Bits.h; sourceTree = "<group>"; };
		0F7EB84B1F9541C600F1ABCB /* BMalloced.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BMalloced.h; path = bmalloc/BMalloced.h; sourceTree = "<group>"; };
		0F7EB84E1F954D4E00F1ABCB /* AllIsoHeapsInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AllIsoHeapsInlines.h; path = bmalloc/AllIsoHeapsInlines.h; sourceTree = SOURCE_ROOT; };
		0F7EB8591F955A0F00F1ABCB /* DeferredDecommitInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DeferredDecommitInlines.h; path = bmalloc/DeferredDecommitInlines.h; sourceTree = "<group>"; };
		0FD557321F7EDB7B00B1F0A3 /* HeapKind.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = HeapKind.cpp; path = bmalloc/HeapKind.cpp; sourceTree = "<group>"; };
		140FA00219CE429C00FFD3C8 /* BumpRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BumpRange.h; path = bmalloc/BumpRange.h; sourceTree = "<group>"; };
		140FA00419CE4B6800FFD3C8 /* LineMetadata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LineMetadata.h; path = bmalloc/LineMetadata.h; sourceTree = "<group>"; };
		14105E8318E14374003A106E /* ObjectType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ObjectType.cpp; path = bmalloc/ObjectType.cpp; sourceTree = "<group>"; };
		1413E460189DCE1E00546D68 /* BInline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BInline.h; path = bmalloc/BInline.h; sourceTree = "<group>"; };
		1413E462189DE1CD00546D68 /* BumpAllocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = BumpAllocator.h; path = bmalloc/BumpAllocator.h; sourceTree = "<group>"; };
		1413E468189EEDE400546D68 /* BAssert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BAssert.h; path = bmalloc/BAssert.h; sourceTree = "<group>"; };
		1417F64F18B7280C0076FA3F /* Syscall.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Syscall.h; path = bmalloc/Syscall.h; sourceTree = "<group>"; };
		141D9AFF1C8E51C0000ABBA0 /* List.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = List.h; path = bmalloc/List.h; sourceTree = "<group>"; };
		1421A87718EE462A00B4DD68 /* Algorithm.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = Algorithm.h; path = bmalloc/Algorithm.h; sourceTree = "<group>"; };
		142B44341E2839E7001DA6E9 /* DebugHeap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DebugHeap.cpp; path = bmalloc/DebugHeap.cpp; sourceTree = "<group>"; };
		142B44351E2839E7001DA6E9 /* DebugHeap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DebugHeap.h; path = bmalloc/DebugHeap.h; sourceTree = "<group>"; };
		142FC6212096409E00A99362 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
		143CB81A19022BC900B16A45 /* Mutex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Mutex.cpp; path = bmalloc/Mutex.cpp; sourceTree = "<group>"; };
		143CB81B19022BC900B16A45 /* Mutex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Mutex.h; path = bmalloc/Mutex.h; sourceTree = "<group>"; };
		143E29ED18CAE90500FE8A0F /* SmallPage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SmallPage.h; path = bmalloc/SmallPage.h; sourceTree = "<group>"; };
		1440AFCA1A95261100837FAA /* Zone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Zone.h; path = bmalloc/Zone.h; sourceTree = "<group>"; };
		1440AFCC1A9527AF00837FAA /* Zone.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Zone.cpp; path = bmalloc/Zone.cpp; sourceTree = "<group>"; };
		144469E417A46BFE00F9EA1D /* Cache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; lineEnding = 0; name = Cache.cpp; path = bmalloc/Cache.cpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; };
		144469E517A46BFE00F9EA1D /* Cache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = Cache.h; path = bmalloc/Cache.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		144469FD17A61F1F00F9EA1D /* PerThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = PerThread.h; path = bmalloc/PerThread.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		14446A0717A61FA400F9EA1D /* PerProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PerProcess.h; path = bmalloc/PerProcess.h; sourceTree = "<group>"; };
		1448C2FE18F3754300502839 /* bmalloc.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = bmalloc.h; path = bmalloc/bmalloc.h; sourceTree = "<group>"; };
		1448C2FF18F3754300502839 /* mbmalloc.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = mbmalloc.cpp; path = bmalloc/mbmalloc.cpp; sourceTree = "<group>"; };
		144BE11E1CA346520099C8C0 /* Object.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Object.h; path = bmalloc/Object.h; sourceTree = "<group>"; };
		144C07F21C7B70260051BB6A /* LargeMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LargeMap.cpp; path = bmalloc/LargeMap.cpp; sourceTree = "<group>"; };
		144C07F31C7B70260051BB6A /* LargeMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LargeMap.h; path = bmalloc/LargeMap.h; sourceTree = "<group>"; };
		144F7BFB18BFC517003537F3 /* VMHeap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = VMHeap.cpp; path = bmalloc/VMHeap.cpp; sourceTree = "<group>"; };
		144F7BFC18BFC517003537F3 /* VMHeap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = VMHeap.h; path = bmalloc/VMHeap.h; sourceTree = "<group>"; };
		1452478618BC757C00F80098 /* SmallLine.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SmallLine.h; path = bmalloc/SmallLine.h; sourceTree = "<group>"; };
		145F6855179DC8CA00D65598 /* Allocator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; lineEnding = 0; name = Allocator.cpp; path = bmalloc/Allocator.cpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; };
		145F6856179DC8CA00D65598 /* Allocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = Allocator.h; path = bmalloc/Allocator.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		145F6859179DC90200D65598 /* Deallocator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; lineEnding = 0; name = Deallocator.cpp; path = bmalloc/Deallocator.cpp; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; };
		145F685A179DC90200D65598 /* Deallocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = Deallocator.h; path = bmalloc/Deallocator.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		145F6874179DF84100D65598 /* Sizes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Sizes.h; path = bmalloc/Sizes.h; sourceTree = "<group>"; };
		145F6878179E3A4400D65598 /* Range.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = Range.h; path = bmalloc/Range.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		1479E21217A1A255006D4E9D /* Vector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = Vector.h; path = bmalloc/Vector.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		1479E21417A1A63E006D4E9D /* VMAllocate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = VMAllocate.h; path = bmalloc/VMAllocate.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		147DC6E21CA5B70B00724E8D /* Chunk.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Chunk.h; path = bmalloc/Chunk.h; sourceTree = "<group>"; };
		1485656018A43DBA00ED6942 /* ObjectType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ObjectType.h; path = bmalloc/ObjectType.h; sourceTree = "<group>"; };
		14895D8F1A3A319C0006235D /* Environment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Environment.cpp; path = bmalloc/Environment.cpp; sourceTree = "<group>"; };
		14895D901A3A319C0006235D /* Environment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Environment.h; path = bmalloc/Environment.h; sourceTree = "<group>"; };
		148EFAE61D6B953B008E721E /* ScopeExit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ScopeExit.h; path = bmalloc/ScopeExit.h; sourceTree = "<group>"; };
		14B650C518F39F4800751968 /* Base.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Base.xcconfig; sourceTree = "<group>"; };
		14B650C618F39F4800751968 /* bmalloc.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = bmalloc.xcconfig; sourceTree = "<group>"; };
		14B650C718F39F4800751968 /* DebugRelease.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = DebugRelease.xcconfig; sourceTree = "<group>"; };
		14B650C918F3A04200751968 /* mbmalloc.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = mbmalloc.xcconfig; sourceTree = "<group>"; };
		14C8992A1CC485E70027A057 /* Map.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Map.h; path = bmalloc/Map.h; sourceTree = "<group>"; };
		14C8992C1CC578330027A057 /* LargeRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LargeRange.h; path = bmalloc/LargeRange.h; sourceTree = "<group>"; };
		14C919C818FCC59F0028DB43 /* BPlatform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BPlatform.h; path = bmalloc/BPlatform.h; sourceTree = "<group>"; };
		14CC394418EA8743004AFE34 /* libmbmalloc.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libmbmalloc.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
		14D9DB4517F2447100EAAB79 /* FixedVector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = FixedVector.h; path = bmalloc/FixedVector.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		14DA320C18875B09007269E0 /* Heap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Heap.h; path = bmalloc/Heap.h; sourceTree = "<group>"; };
		14DA320E18875D9F007269E0 /* Heap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Heap.cpp; path = bmalloc/Heap.cpp; sourceTree = "<group>"; };
		14F271BE18EA3963008C152F /* libbmalloc.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libbmalloc.a; sourceTree = BUILT_PRODUCTS_DIR; };
		4426E27E1C838EE0008EB042 /* Logging.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Logging.cpp; path = bmalloc/Logging.cpp; sourceTree = "<group>"; };
		4426E27F1C838EE0008EB042 /* Logging.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Logging.h; path = bmalloc/Logging.h; sourceTree = "<group>"; };
		4426E2821C839547008EB042 /* BSoftLinking.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BSoftLinking.h; path = bmalloc/darwin/BSoftLinking.h; sourceTree = "<group>"; };
		52F47248210BA2F500B730BB /* MemoryStatusSPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MemoryStatusSPI.h; path = bmalloc/darwin/MemoryStatusSPI.h; sourceTree = "<group>"; };
		6599C5CA1EC3F15900A2F7BB /* AvailableMemory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AvailableMemory.cpp; path = bmalloc/AvailableMemory.cpp; sourceTree = "<group>"; };
		6599C5CB1EC3F15900A2F7BB /* AvailableMemory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AvailableMemory.h; path = bmalloc/AvailableMemory.h; sourceTree = "<group>"; };
		7939885A2076EEB50074A2E7 /* BulkDecommit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BulkDecommit.h; path = bmalloc/BulkDecommit.h; sourceTree = "<group>"; };
		795AB3C6206E0D250074FE76 /* PhysicalPageMap.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PhysicalPageMap.h; path = bmalloc/PhysicalPageMap.h; sourceTree = "<group>"; };
		7C571F0022388B840077A3C7 /* StdLibExtras.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = StdLibExtras.h; path = bmalloc/StdLibExtras.h; sourceTree = "<group>"; };
		A1B89B86221DFFEE00EB4CEA /* SDKVariant.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = SDKVariant.xcconfig; sourceTree = "<group>"; };
		AD0934321FCF405000E85EB5 /* BCompiler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BCompiler.h; path = bmalloc/BCompiler.h; sourceTree = "<group>"; };
		AD14AD27202529A600890E3B /* ProcessCheck.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ProcessCheck.h; path = bmalloc/ProcessCheck.h; sourceTree = "<group>"; };
		AD14AD28202529B000890E3B /* ProcessCheck.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ProcessCheck.mm; path = bmalloc/ProcessCheck.mm; sourceTree = "<group>"; };
		DE8B13B221CC5D9F00A63FCD /* BVMTags.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BVMTags.h; path = bmalloc/BVMTags.h; sourceTree = "<group>"; };
		E31E747F2238CA5B005D084A /* StaticPerProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = StaticPerProcess.h; path = bmalloc/StaticPerProcess.h; sourceTree = "<group>"; };
		E3A413C8226061140037F470 /* IsoSharedPageInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoSharedPageInlines.h; path = bmalloc/IsoSharedPageInlines.h; sourceTree = "<group>"; };
		E3F24401225D2C0100A0E0C3 /* IsoSharedPage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoSharedPage.h; path = bmalloc/IsoSharedPage.h; sourceTree = "<group>"; };
		E3F24403225D2C7600A0E0C3 /* IsoSharedPage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IsoSharedPage.cpp; path = bmalloc/IsoSharedPage.cpp; sourceTree = "<group>"; };
		E3FBB59D225EADB000DB6FBD /* IsoSharedConfig.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoSharedConfig.h; path = bmalloc/IsoSharedConfig.h; sourceTree = "<group>"; };
		E3FBB59E225EADB000DB6FBD /* IsoSharedHeap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IsoSharedHeap.cpp; path = bmalloc/IsoSharedHeap.cpp; sourceTree = "<group>"; };
		E3FBB59F225EADB000DB6FBD /* IsoSharedHeap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoSharedHeap.h; path = bmalloc/IsoSharedHeap.h; sourceTree = "<group>"; };
		E3FBB5A3225ECAD200DB6FBD /* IsoSharedHeapInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IsoSharedHeapInlines.h; path = bmalloc/IsoSharedHeapInlines.h; sourceTree = "<group>"; };
		FE48BD3A2321E8CC00F136D0 /* FailureAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FailureAction.h; path = bmalloc/FailureAction.h; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		14CC394118EA8743004AFE34 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				142FC6222096409E00A99362 /* Foundation.framework in Frameworks */,
				14CC394C18EA8858004AFE34 /* libbmalloc.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		14F271BB18EA3963008C152F /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		0F7EB7F91F95414C00F1ABCB /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				142FC6212096409E00A99362 /* Foundation.framework */,
			);
			name = Frameworks;
			sourceTree = "<group>";
		};
		0F7EB7FB1F95416900F1ABCB /* iso */ = {
			isa = PBXGroup;
			children = (
				0F7EB8081F9541AD00F1ABCB /* AllIsoHeaps.cpp */,
				0F7EB80D1F9541AE00F1ABCB /* AllIsoHeaps.h */,
				0F7EB84E1F954D4E00F1ABCB /* AllIsoHeapsInlines.h */,
				0F7EB8161F9541AF00F1ABCB /* DeferredDecommit.h */,
				0F7EB8591F955A0F00F1ABCB /* DeferredDecommitInlines.h */,
				0F7EB8121F9541AE00F1ABCB /* DeferredTrigger.h */,
				0F7EB7FE1F9541AD00F1ABCB /* DeferredTriggerInlines.h */,
				0F7EB7FC1F9541AD00F1ABCB /* EligibilityResult.h */,
				0F7EB8111F9541AE00F1ABCB /* EligibilityResultInlines.h */,
				0F7EB8171F9541AF00F1ABCB /* FreeList.cpp */,
				0F7EB81D1F9541AF00F1ABCB /* FreeList.h */,
				0F7EB8021F9541AD00F1ABCB /* FreeListInlines.h */,
				0F7EB8151F9541AF00F1ABCB /* IsoAllocator.h */,
				0F7EB7FF1F9541AD00F1ABCB /* IsoAllocatorInlines.h */,
				0F7EB81A1F9541AF00F1ABCB /* IsoConfig.h */,
				0F7EB8201F9541B000F1ABCB /* IsoDeallocator.h */,
				0F7EB8131F9541AE00F1ABCB /* IsoDeallocatorInlines.h */,
				0F7EB8101F9541AE00F1ABCB /* IsoDirectory.h */,
				0F7EB8011F9541AD00F1ABCB /* IsoDirectoryInlines.h */,
				0F7EB8221F9541B000F1ABCB /* IsoDirectoryPage.h */,
				0F7EB8031F9541AD00F1ABCB /* IsoDirectoryPageInlines.h */,
				0F7EB8051F9541AD00F1ABCB /* IsoHeap.h */,
				0F7EB8141F9541AE00F1ABCB /* IsoHeapImpl.cpp */,
				0F7EB81E1F9541B000F1ABCB /* IsoHeapImpl.h */,
				0F7EB7FD1F9541AD00F1ABCB /* IsoHeapImplInlines.h */,
				0F7EB8091F9541AD00F1ABCB /* IsoHeapInlines.h */,
				0F5549EE1FB54701007FF75A /* IsoPage.cpp */,
				0F7EB8071F9541AD00F1ABCB /* IsoPage.h */,
				0F7EB80A1F9541AE00F1ABCB /* IsoPageInlines.h */,
				0F7EB8041F9541AD00F1ABCB /* IsoPageTrigger.h */,
				E3FBB59D225EADB000DB6FBD /* IsoSharedConfig.h */,
				E3FBB59E225EADB000DB6FBD /* IsoSharedHeap.cpp */,
				E3FBB59F225EADB000DB6FBD /* IsoSharedHeap.h */,
				E3FBB5A3225ECAD200DB6FBD /* IsoSharedHeapInlines.h */,
				E3F24403225D2C7600A0E0C3 /* IsoSharedPage.cpp */,
				E3F24401225D2C0100A0E0C3 /* IsoSharedPage.h */,
				E3A413C8226061140037F470 /* IsoSharedPageInlines.h */,
				0F7EB80F1F9541AE00F1ABCB /* IsoTLS.cpp */,
				0F7EB81B1F9541AF00F1ABCB /* IsoTLS.h */,
				0F7EB81C1F9541AF00F1ABCB /* IsoTLSAllocatorEntry.h */,
				0F7EB8211F9541B000F1ABCB /* IsoTLSAllocatorEntryInlines.h */,
				0F7EB80C1F9541AE00F1ABCB /* IsoTLSDeallocatorEntry.h */,
				0F7EB8001F9541AD00F1ABCB /* IsoTLSDeallocatorEntryInlines.h */,
				0F7EB80B1F9541AE00F1ABCB /* IsoTLSEntry.cpp */,
				0F7EB8061F9541AD00F1ABCB /* IsoTLSEntry.h */,
				0F7EB80E1F9541AE00F1ABCB /* IsoTLSEntryInlines.h */,
				0F7EB81F1F9541B000F1ABCB /* IsoTLSInlines.h */,
				0F7EB8181F9541AF00F1ABCB /* IsoTLSLayout.cpp */,
				0F7EB8191F9541AF00F1ABCB /* IsoTLSLayout.h */,
			);
			name = iso;
			sourceTree = "<group>";
		};
		1448C2FD18F3752B00502839 /* api */ = {
			isa = PBXGroup;
			children = (
				0F5167731FAD6852008236A8 /* bmalloc.cpp */,
				1448C2FE18F3754300502839 /* bmalloc.h */,
				1448C2FF18F3754300502839 /* mbmalloc.cpp */,
			);
			name = api;
			sourceTree = "<group>";
		};
		145F6836179DC45F00D65598 = {
			isa = PBXGroup;
			children = (
				1448C2FD18F3752B00502839 /* api */,
				14D9DB4D17F2865C00EAAB79 /* cache */,
				14B650C418F39F4800751968 /* Configurations */,
				0F7EB7F91F95414C00F1ABCB /* Frameworks */,
				14D9DB4E17F2866E00EAAB79 /* heap */,
				147AAA9C18CE6010002201E4 /* heap: large */,
				147AAA9A18CE5FD3002201E4 /* heap: small */,
				0F7EB7FB1F95416900F1ABCB /* iso */,
				145F6840179DC45F00D65598 /* Products */,
				14D9DB4F17F2868900EAAB79 /* stdlib */,
			);
			sourceTree = "<group>";
		};
		145F6840179DC45F00D65598 /* Products */ = {
			isa = PBXGroup;
			children = (
				14F271BE18EA3963008C152F /* libbmalloc.a */,
				14CC394418EA8743004AFE34 /* libmbmalloc.dylib */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		147AAA9A18CE5FD3002201E4 /* heap: small */ = {
			isa = PBXGroup;
			children = (
				1452478618BC757C00F80098 /* SmallLine.h */,
				143E29ED18CAE90500FE8A0F /* SmallPage.h */,
			);
			name = "heap: small";
			sourceTree = "<group>";
		};
		147AAA9C18CE6010002201E4 /* heap: large */ = {
			isa = PBXGroup;
			children = (
				144C07F21C7B70260051BB6A /* LargeMap.cpp */,
				144C07F31C7B70260051BB6A /* LargeMap.h */,
				14C8992C1CC578330027A057 /* LargeRange.h */,
			);
			name = "heap: large";
			sourceTree = "<group>";
		};
		14B650C418F39F4800751968 /* Configurations */ = {
			isa = PBXGroup;
			children = (
				14B650C518F39F4800751968 /* Base.xcconfig */,
				14B650C618F39F4800751968 /* bmalloc.xcconfig */,
				14B650C718F39F4800751968 /* DebugRelease.xcconfig */,
				14B650C918F3A04200751968 /* mbmalloc.xcconfig */,
				A1B89B86221DFFEE00EB4CEA /* SDKVariant.xcconfig */,
			);
			path = Configurations;
			sourceTree = "<group>";
		};
		14D9DB4D17F2865C00EAAB79 /* cache */ = {
			isa = PBXGroup;
			children = (
				145F6855179DC8CA00D65598 /* Allocator.cpp */,
				145F6856179DC8CA00D65598 /* Allocator.h */,
				1413E462189DE1CD00546D68 /* BumpAllocator.h */,
				144469E417A46BFE00F9EA1D /* Cache.cpp */,
				144469E517A46BFE00F9EA1D /* Cache.h */,
				145F6859179DC90200D65598 /* Deallocator.cpp */,
				145F685A179DC90200D65598 /* Deallocator.h */,
			);
			name = cache;
			sourceTree = "<group>";
		};
		14D9DB4E17F2866E00EAAB79 /* heap */ = {
			isa = PBXGroup;
			children = (
				7939885A2076EEB50074A2E7 /* BulkDecommit.h */,
				140FA00219CE429C00FFD3C8 /* BumpRange.h */,
				147DC6E21CA5B70B00724E8D /* Chunk.h */,
				142B44341E2839E7001DA6E9 /* DebugHeap.cpp */,
				142B44351E2839E7001DA6E9 /* DebugHeap.h */,
				14895D8F1A3A319C0006235D /* Environment.cpp */,
				14895D901A3A319C0006235D /* Environment.h */,
				FE48BD3A2321E8CC00F136D0 /* FailureAction.h */,
				0F5BF14E1F22DEAF0029D91D /* Gigacage.cpp */,
				0F5BF14C1F22B0C30029D91D /* Gigacage.h */,
				14DA320E18875D9F007269E0 /* Heap.cpp */,
				14DA320C18875B09007269E0 /* Heap.h */,
				140FA00419CE4B6800FFD3C8 /* LineMetadata.h */,
				144BE11E1CA346520099C8C0 /* Object.h */,
				14105E8318E14374003A106E /* ObjectType.cpp */,
				1485656018A43DBA00ED6942 /* ObjectType.h */,
				795AB3C6206E0D250074FE76 /* PhysicalPageMap.h */,
				AD14AD27202529A600890E3B /* ProcessCheck.h */,
				AD14AD28202529B000890E3B /* ProcessCheck.mm */,
				0F5BF1501F22E1570029D91D /* Scavenger.cpp */,
				0F5BF1511F22E1570029D91D /* Scavenger.h */,
				145F6874179DF84100D65598 /* Sizes.h */,
				144F7BFB18BFC517003537F3 /* VMHeap.cpp */,
				144F7BFC18BFC517003537F3 /* VMHeap.h */,
				1440AFCC1A9527AF00837FAA /* Zone.cpp */,
				1440AFCA1A95261100837FAA /* Zone.h */,
			);
			name = heap;
			sourceTree = "<group>";
		};
		14D9DB4F17F2868900EAAB79 /* stdlib */ = {
			isa = PBXGroup;
			children = (
				4408F2961C9896C40012EC64 /* darwin */,
				1421A87718EE462A00B4DD68 /* Algorithm.h */,
				6599C5CA1EC3F15900A2F7BB /* AvailableMemory.cpp */,
				6599C5CB1EC3F15900A2F7BB /* AvailableMemory.h */,
				1413E468189EEDE400546D68 /* BAssert.h */,
				AD0934321FCF405000E85EB5 /* BCompiler.h */,
				0F5BF1721F23C5710029D91D /* BExport.h */,
				1413E460189DCE1E00546D68 /* BInline.h */,
				0F7EB84A1F9541C600F1ABCB /* Bits.h */,
				0F7EB84B1F9541C600F1ABCB /* BMalloced.h */,
				14C919C818FCC59F0028DB43 /* BPlatform.h */,
				DE8B13B221CC5D9F00A63FCD /* BVMTags.h */,
				0F74B93D1F89713E00B935D3 /* CryptoRandom.cpp */,
				0F74B93C1F89713E00B935D3 /* CryptoRandom.h */,
				14D9DB4517F2447100EAAB79 /* FixedVector.h */,
				0FD557321F7EDB7B00B1F0A3 /* HeapKind.cpp */,
				0F5BF1461F22A8B10029D91D /* HeapKind.h */,
				141D9AFF1C8E51C0000ABBA0 /* List.h */,
				4426E27E1C838EE0008EB042 /* Logging.cpp */,
				4426E27F1C838EE0008EB042 /* Logging.h */,
				14C8992A1CC485E70027A057 /* Map.h */,
				143CB81A19022BC900B16A45 /* Mutex.cpp */,
				143CB81B19022BC900B16A45 /* Mutex.h */,
				0F5BF1481F22A8D80029D91D /* PerHeapKind.h */,
				0F26A7A42054830D0090A141 /* PerProcess.cpp */,
				14446A0717A61FA400F9EA1D /* PerProcess.h */,
				144469FD17A61F1F00F9EA1D /* PerThread.h */,
				145F6878179E3A4400D65598 /* Range.h */,
				148EFAE61D6B953B008E721E /* ScopeExit.h */,
				E31E747F2238CA5B005D084A /* StaticPerProcess.h */,
				7C571F0022388B840077A3C7 /* StdLibExtras.h */,
				1417F64F18B7280C0076FA3F /* Syscall.h */,
				1479E21217A1A255006D4E9D /* Vector.h */,
				1479E21417A1A63E006D4E9D /* VMAllocate.h */,
			);
			name = stdlib;
			sourceTree = "<group>";
		};
		4408F2961C9896C40012EC64 /* darwin */ = {
			isa = PBXGroup;
			children = (
				4426E2821C839547008EB042 /* BSoftLinking.h */,
				52F47248210BA2F500B730BB /* MemoryStatusSPI.h */,
			);
			name = darwin;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		14CC394218EA8743004AFE34 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		14F271BC18EA3963008C152F /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				14DD78C518F48D7500950702 /* Algorithm.h in Headers */,
				0F7EB8341F9541B000F1ABCB /* AllIsoHeaps.h in Headers */,
				0F7EB84F1F954D4E00F1ABCB /* AllIsoHeapsInlines.h in Headers */,
				14DD789818F48D4A00950702 /* Allocator.h in Headers */,
				6599C5CD1EC3F15900A2F7BB /* AvailableMemory.h in Headers */,
				14DD78C718F48D7500950702 /* BAssert.h in Headers */,
				AD0934331FCF406D00E85EB5 /* BCompiler.h in Headers */,
				0F5BF1731F23C5710029D91D /* BExport.h in Headers */,
				14DD78C918F48D7500950702 /* BInline.h in Headers */,
				0F7EB84C1F9541C700F1ABCB /* Bits.h in Headers */,
				1448C30118F3754C00502839 /* bmalloc.h in Headers */,
				0F7EB84D1F9541C700F1ABCB /* BMalloced.h in Headers */,
				14C919C918FCC59F0028DB43 /* BPlatform.h in Headers */,
				4426E2831C839547008EB042 /* BSoftLinking.h in Headers */,
				7939885B2076EEB60074A2E7 /* BulkDecommit.h in Headers */,
				14DD789C18F48D4A00950702 /* BumpAllocator.h in Headers */,
				140FA00319CE429C00FFD3C8 /* BumpRange.h in Headers */,
				DE8B13B321CC5D9F00A63FCD /* BVMTags.h in Headers */,
				14DD789918F48D4A00950702 /* Cache.h in Headers */,
				147DC6E31CA5B70B00724E8D /* Chunk.h in Headers */,
				0F74B93E1F89713E00B935D3 /* CryptoRandom.h in Headers */,
				14DD789A18F48D4A00950702 /* Deallocator.h in Headers */,
				142B44371E2839E7001DA6E9 /* DebugHeap.h in Headers */,
				0F7EB83D1F9541B000F1ABCB /* DeferredDecommit.h in Headers */,
				0F7EB85A1F955A1100F1ABCB /* DeferredDecommitInlines.h in Headers */,
				0F7EB8391F9541B000F1ABCB /* DeferredTrigger.h in Headers */,
				0F7EB8251F9541B000F1ABCB /* DeferredTriggerInlines.h in Headers */,
				0F7EB8231F9541B000F1ABCB /* EligibilityResult.h in Headers */,
				0F7EB8381F9541B000F1ABCB /* EligibilityResultInlines.h in Headers */,
				14895D921A3A319C0006235D /* Environment.h in Headers */,
				14DD78C818F48D7500950702 /* FixedVector.h in Headers */,
				0F7EB8441F9541B000F1ABCB /* FreeList.h in Headers */,
				0F7EB8291F9541B000F1ABCB /* FreeListInlines.h in Headers */,
				0F5BF14D1F22B0C30029D91D /* Gigacage.h in Headers */,
				1400274918F89C1300115C97 /* Heap.h in Headers */,
				0F5BF1471F22A8B10029D91D /* HeapKind.h in Headers */,
				0F7EB83C1F9541B000F1ABCB /* IsoAllocator.h in Headers */,
				0F7EB8261F9541B000F1ABCB /* IsoAllocatorInlines.h in Headers */,
				0F7EB8411F9541B000F1ABCB /* IsoConfig.h in Headers */,
				0F7EB8471F9541B000F1ABCB /* IsoDeallocator.h in Headers */,
				0F7EB83A1F9541B000F1ABCB /* IsoDeallocatorInlines.h in Headers */,
				0F7EB8371F9541B000F1ABCB /* IsoDirectory.h in Headers */,
				0F7EB8281F9541B000F1ABCB /* IsoDirectoryInlines.h in Headers */,
				0F7EB8491F9541B000F1ABCB /* IsoDirectoryPage.h in Headers */,
				0F7EB82A1F9541B000F1ABCB /* IsoDirectoryPageInlines.h in Headers */,
				0F7EB82C1F9541B000F1ABCB /* IsoHeap.h in Headers */,
				0F7EB8451F9541B000F1ABCB /* IsoHeapImpl.h in Headers */,
				0F7EB8241F9541B000F1ABCB /* IsoHeapImplInlines.h in Headers */,
				0F7EB8301F9541B000F1ABCB /* IsoHeapInlines.h in Headers */,
				0F7EB82E1F9541B000F1ABCB /* IsoPage.h in Headers */,
				0F7EB8311F9541B000F1ABCB /* IsoPageInlines.h in Headers */,
				0F7EB82B1F9541B000F1ABCB /* IsoPageTrigger.h in Headers */,
				FE48BD3B2321E8D700F136D0 /* FailureAction.h in Headers */,
				E3FBB5A0225EADB000DB6FBD /* IsoSharedConfig.h in Headers */,
				E3FBB5A2225EADB000DB6FBD /* IsoSharedHeap.h in Headers */,
				E3FBB5A4225ECAD200DB6FBD /* IsoSharedHeapInlines.h in Headers */,
				E3F24402225D2C0100A0E0C3 /* IsoSharedPage.h in Headers */,
				E3A413C9226061140037F470 /* IsoSharedPageInlines.h in Headers */,
				0F7EB8421F9541B000F1ABCB /* IsoTLS.h in Headers */,
				0F7EB8431F9541B000F1ABCB /* IsoTLSAllocatorEntry.h in Headers */,
				0F7EB8481F9541B000F1ABCB /* IsoTLSAllocatorEntryInlines.h in Headers */,
				0F7EB8331F9541B000F1ABCB /* IsoTLSDeallocatorEntry.h in Headers */,
				0F7EB8271F9541B000F1ABCB /* IsoTLSDeallocatorEntryInlines.h in Headers */,
				0F7EB82D1F9541B000F1ABCB /* IsoTLSEntry.h in Headers */,
				0F7EB8351F9541B000F1ABCB /* IsoTLSEntryInlines.h in Headers */,
				0F7EB8461F9541B000F1ABCB /* IsoTLSInlines.h in Headers */,
				0F7EB8401F9541B000F1ABCB /* IsoTLSLayout.h in Headers */,
				144C07F51C7B70260051BB6A /* LargeMap.h in Headers */,
				14C8992D1CC578330027A057 /* LargeRange.h in Headers */,
				140FA00519CE4B6800FFD3C8 /* LineMetadata.h in Headers */,
				141D9B001C8E51C0000ABBA0 /* List.h in Headers */,
				4426E2811C838EE0008EB042 /* Logging.h in Headers */,
				14C8992B1CC485E70027A057 /* Map.h in Headers */,
				52F47249210BA30200B730BB /* MemoryStatusSPI.h in Headers */,
				143CB81D19022BC900B16A45 /* Mutex.h in Headers */,
				144BE11F1CA346520099C8C0 /* Object.h in Headers */,
				14DD789318F48D0F00950702 /* ObjectType.h in Headers */,
				0F5BF1491F22A8D80029D91D /* PerHeapKind.h in Headers */,
				14DD78CB18F48D7500950702 /* PerProcess.h in Headers */,
				14DD78CC18F48D7500950702 /* PerThread.h in Headers */,
				795AB3C7206E0D340074FE76 /* PhysicalPageMap.h in Headers */,
				AD14AD29202529C400890E3B /* ProcessCheck.h in Headers */,
				14DD78CD18F48D7500950702 /* Range.h in Headers */,
				0F5BF1531F22E1570029D91D /* Scavenger.h in Headers */,
				148EFAE81D6B953B008E721E /* ScopeExit.h in Headers */,
				14DD789018F48CEB00950702 /* Sizes.h in Headers */,
				14DD78BC18F48D6B00950702 /* SmallLine.h in Headers */,
				14DD78BD18F48D6B00950702 /* SmallPage.h in Headers */,
				E31E74802238CA5C005D084A /* StaticPerProcess.h in Headers */,
				7C571F0122388B840077A3C7 /* StdLibExtras.h in Headers */,
				14DD78CE18F48D7500950702 /* Syscall.h in Headers */,
				14DD78CF18F48D7500950702 /* Vector.h in Headers */,
				14DD78D018F48D7500950702 /* VMAllocate.h in Headers */,
				1400274A18F89C2300115C97 /* VMHeap.h in Headers */,
				1440AFCB1A95261100837FAA /* Zone.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		14CC394318EA8743004AFE34 /* mbmalloc */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 14CC394518EA8743004AFE34 /* Build configuration list for PBXNativeTarget "mbmalloc" */;
			buildPhases = (
				14CC394018EA8743004AFE34 /* Sources */,
				14CC394118EA8743004AFE34 /* Frameworks */,
				14CC394218EA8743004AFE34 /* Headers */,
			);
			buildRules = (
			);
			dependencies = (
				14CC394E18EA8861004AFE34 /* PBXTargetDependency */,
			);
			name = mbmalloc;
			productName = mbmalloc;
			productReference = 14CC394418EA8743004AFE34 /* libmbmalloc.dylib */;
			productType = "com.apple.product-type.library.dynamic";
		};
		14F271BD18EA3963008C152F /* bmalloc */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 14F271BF18EA3963008C152F /* Build configuration list for PBXNativeTarget "bmalloc" */;
			buildPhases = (
				14F271BA18EA3963008C152F /* Sources */,
				14F271BB18EA3963008C152F /* Frameworks */,
				14F271BC18EA3963008C152F /* Headers */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = bmalloc;
			productName = bmalloc;
			productReference = 14F271BE18EA3963008C152F /* libbmalloc.a */;
			productType = "com.apple.product-type.library.static";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		145F6837179DC45F00D65598 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				LastSwiftUpdateCheck = 0700;
				LastUpgradeCheck = 1000;
				TargetAttributes = {
					0F7EB8501F95504B00F1ABCB = {
						CreatedOnToolsVersion = 9.0;
						ProvisioningStyle = Automatic;
					};
				};
			};
			buildConfigurationList = 145F683A179DC45F00D65598 /* Build configuration list for PBXProject "bmalloc" */;
			compatibilityVersion = "Xcode 3.2";
			developmentRegion = en;
			hasScannedForEncodings = 0;
			knownRegions = (
				en,
			);
			mainGroup = 145F6836179DC45F00D65598;
			productRefGroup = 145F6840179DC45F00D65598 /* Products */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				0F7EB8501F95504B00F1ABCB /* All */,
				14F271BD18EA3963008C152F /* bmalloc */,
				14CC394318EA8743004AFE34 /* mbmalloc */,
			);
		};
/* End PBXProject section */

/* Begin PBXSourcesBuildPhase section */
		14CC394018EA8743004AFE34 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				1448C30018F3754600502839 /* mbmalloc.cpp in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		14F271BA18EA3963008C152F /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				0F7EB82F1F9541B000F1ABCB /* AllIsoHeaps.cpp in Sources */,
				14F271C318EA3978008C152F /* Allocator.cpp in Sources */,
				6599C5CC1EC3F15900A2F7BB /* AvailableMemory.cpp in Sources */,
				0F5167741FAD685C008236A8 /* bmalloc.cpp in Sources */,
				14F271C418EA397B008C152F /* Cache.cpp in Sources */,
				0F74B93F1F89713E00B935D3 /* CryptoRandom.cpp in Sources */,
				14F271C518EA397E008C152F /* Deallocator.cpp in Sources */,
				142B44361E2839E7001DA6E9 /* DebugHeap.cpp in Sources */,
				14895D911A3A319C0006235D /* Environment.cpp in Sources */,
				0F7EB83E1F9541B000F1ABCB /* FreeList.cpp in Sources */,
				0F5BF14F1F22DEAF0029D91D /* Gigacage.cpp in Sources */,
				14F271C718EA3990008C152F /* Heap.cpp in Sources */,
				0FD557331F7EDB7B00B1F0A3 /* HeapKind.cpp in Sources */,
				0F7EB83B1F9541B000F1ABCB /* IsoHeapImpl.cpp in Sources */,
				0F5549EF1FB54704007FF75A /* IsoPage.cpp in Sources */,
				E3FBB5A1225EADB000DB6FBD /* IsoSharedHeap.cpp in Sources */,
				E3F24404225D2C7600A0E0C3 /* IsoSharedPage.cpp in Sources */,
				0F7EB8361F9541B000F1ABCB /* IsoTLS.cpp in Sources */,
				0F7EB8321F9541B000F1ABCB /* IsoTLSEntry.cpp in Sources */,
				0F7EB83F1F9541B000F1ABCB /* IsoTLSLayout.cpp in Sources */,
				144C07F41C7B70260051BB6A /* LargeMap.cpp in Sources */,
				4426E2801C838EE0008EB042 /* Logging.cpp in Sources */,
				143CB81C19022BC900B16A45 /* Mutex.cpp in Sources */,
				14F271C818EA3990008C152F /* ObjectType.cpp in Sources */,
				0F26A7A5205483130090A141 /* PerProcess.cpp in Sources */,
				AD14AD2A202529C700890E3B /* ProcessCheck.mm in Sources */,
				0F5BF1521F22E1570029D91D /* Scavenger.cpp in Sources */,
				14F271C918EA3990008C152F /* VMHeap.cpp in Sources */,
				1440AFCD1A9527AF00837FAA /* Zone.cpp in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		0F7EB8561F95505400F1ABCB /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 14F271BD18EA3963008C152F /* bmalloc */;
			targetProxy = 0F7EB8551F95505400F1ABCB /* PBXContainerItemProxy */;
		};
		14CC394E18EA8861004AFE34 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 14F271BD18EA3963008C152F /* bmalloc */;
			targetProxy = 14CC394D18EA8861004AFE34 /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		0F7EB8521F95504B00F1ABCB /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		0F7EB8531F95504B00F1ABCB /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		0F7EB8541F95504B00F1ABCB /* Production */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Production;
		};
		14202F0F18F37C15006C37DB /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C518F39F4800751968 /* Base.xcconfig */;
			buildSettings = {
			};
			name = Production;
		};
		14202F1018F37C15006C37DB /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C618F39F4800751968 /* bmalloc.xcconfig */;
			buildSettings = {
			};
			name = Production;
		};
		14202F1118F37C15006C37DB /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C918F3A04200751968 /* mbmalloc.xcconfig */;
			buildSettings = {
			};
			name = Production;
		};
		145F684A179DC45F00D65598 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C718F39F4800751968 /* DebugRelease.xcconfig */;
			buildSettings = {
				DEAD_CODE_STRIPPING = "$(DEAD_CODE_STRIPPING_debug)";
				DEBUG_DEFINES = "$(DEBUG_DEFINES_debug)";
				GCC_OPTIMIZATION_LEVEL = "$(GCC_OPTIMIZATION_LEVEL_debug)";
				STRIP_INSTALLED_PRODUCT = "$(STRIP_INSTALLED_PRODUCT_debug)";
			};
			name = Debug;
		};
		145F684B179DC45F00D65598 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C718F39F4800751968 /* DebugRelease.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		14CC394618EA8743004AFE34 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C918F3A04200751968 /* mbmalloc.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		14CC394718EA8743004AFE34 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C918F3A04200751968 /* mbmalloc.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		14F271C018EA3963008C152F /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C618F39F4800751968 /* bmalloc.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		14F271C118EA3963008C152F /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 14B650C618F39F4800751968 /* bmalloc.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		0F7EB8511F95504B00F1ABCB /* Build configuration list for PBXAggregateTarget "All" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				0F7EB8521F95504B00F1ABCB /* Debug */,
				0F7EB8531F95504B00F1ABCB /* Release */,
				0F7EB8541F95504B00F1ABCB /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		145F683A179DC45F00D65598 /* Build configuration list for PBXProject "bmalloc" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				145F684A179DC45F00D65598 /* Debug */,
				145F684B179DC45F00D65598 /* Release */,
				14202F0F18F37C15006C37DB /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		14CC394518EA8743004AFE34 /* Build configuration list for PBXNativeTarget "mbmalloc" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				14CC394618EA8743004AFE34 /* Debug */,
				14CC394718EA8743004AFE34 /* Release */,
				14202F1118F37C15006C37DB /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		14F271BF18EA3963008C152F /* Build configuration list for PBXNativeTarget "bmalloc" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				14F271C018EA3963008C152F /* Debug */,
				14F271C118EA3963008C152F /* Release */,
				14202F1018F37C15006C37DB /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
/* End XCConfigurationList section */
	};
	rootObject = 145F6837179DC45F00D65598 /* Project object */;
}
