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

/* Begin PBXAggregateTarget section */
		3F3C9326128E637B0042B1F7 /* libdispatch_Sim */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 3F3C9356128E637B0042B1F7 /* Build configuration list for PBXAggregateTarget "libdispatch_Sim" */;
			buildPhases = (
			);
			dependencies = (
				E4128E4A13B94BCE00ABB2CB /* PBXTargetDependency */,
			);
			name = libdispatch_Sim;
			productName = libdispatch_Sim;
		};
		4552540A19B1389700B88766 /* libdispatch_tests */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 4552540B19B1389700B88766 /* Build configuration list for PBXAggregateTarget "libdispatch_tests" */;
			buildPhases = (
			);
			dependencies = (
				92F3FECF1BEC6F1000025962 /* PBXTargetDependency */,
			);
			name = libdispatch_tests;
			productName = libdispatch_tests;
		};
		6E2ECAFD1C49C2FF00A30A32 /* libdispatch_kernel */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 6E2ECAFE1C49C30000A30A32 /* Build configuration list for PBXAggregateTarget "libdispatch_kernel" */;
			buildPhases = (
			);
			dependencies = (
				6E2ECB021C49C31200A30A32 /* PBXTargetDependency */,
			);
			name = libdispatch_kernel;
			productName = libdispatch_kernel;
		};
		92CBD7201BED924F006E0892 /* libdispatch_tests_legacy */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 92CBD7231BED924F006E0892 /* Build configuration list for PBXAggregateTarget "libdispatch_tests_legacy" */;
			buildPhases = (
			);
			dependencies = (
				92CBD75A1BED926C006E0892 /* PBXTargetDependency */,
			);
			name = libdispatch_tests_legacy;
			productName = libdispatch_tests;
		};
		C927F35A10FD7F0600C5AB8B /* libdispatch_tools */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = C927F35E10FD7F0B00C5AB8B /* Build configuration list for PBXAggregateTarget "libdispatch_tools" */;
			buildPhases = (
			);
			dependencies = (
				C927F36910FD7F1A00C5AB8B /* PBXTargetDependency */,
			);
			name = libdispatch_tools;
			productName = ddt;
		};
/* End PBXAggregateTarget section */

/* Begin PBXBuildFile section */
		2BBF5A60154B64D8002B20F9 /* allocator_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BBF5A5F154B64D8002B20F9 /* allocator_internal.h */; };
		2BBF5A61154B64D8002B20F9 /* allocator_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BBF5A5F154B64D8002B20F9 /* allocator_internal.h */; };
		2BBF5A63154B64F5002B20F9 /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		2BBF5A64154B64F5002B20F9 /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		2BBF5A65154B64F5002B20F9 /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		2BBF5A66154B64F5002B20F9 /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		2BBF5A67154B64F5002B20F9 /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		2BE17C6418EA305E002CA4E8 /* layout_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BE17C6318EA305E002CA4E8 /* layout_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		2BE17C6518EA305E002CA4E8 /* layout_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BE17C6318EA305E002CA4E8 /* layout_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		5A0095A210F274B0000E2A31 /* io_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A0095A110F274B0000E2A31 /* io_internal.h */; };
		5A27262610F26F1900751FBC /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		5A5D13AC0F6B280500197CC3 /* semaphore_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A5D13AB0F6B280500197CC3 /* semaphore_internal.h */; };
		5AAB45C010D30B79004407EA /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		5AAB45C410D30CC7004407EA /* io.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AAB45C310D30CC7004407EA /* io.h */; settings = {ATTRIBUTES = (Public, ); }; };
		5AAB45C610D30D0C004407EA /* data.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AAB45C510D30D0C004407EA /* data.h */; settings = {ATTRIBUTES = (Public, ); }; };
		6E040C731C499C6500411A2E /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		6E040C751C499CE600411A2E /* firehose_buffer_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EDF10831BBB487E007F14BF /* firehose_buffer_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		6E21F2E81BBB23FA0000C6A5 /* firehose_server_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E21F2E41BBB23F00000C6A5 /* firehose_server_internal.h */; };
		6E21F2E91BBB240E0000C6A5 /* firehose_server.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E21F2E51BBB23F00000C6A5 /* firehose_server.c */; };
		6E393F981BD60F8D005A551E /* firehose_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EF0B26A1BA8C4AE007FA4F6 /* firehose_internal.h */; };
		6E4BACBD1D48A41500B562AE /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		6E4BACC21D48A42000B562AE /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		6E4BACC31D48A42100B562AE /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		6E4BACC41D48A42200B562AE /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		6E4BACC51D48A42200B562AE /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		6E4BACC61D48A42300B562AE /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		6E4BACC71D48A42300B562AE /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		6E4BACC81D48A42400B562AE /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		6E4BACCA1D48A89500B562AE /* mach_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E4BACC91D48A89500B562AE /* mach_internal.h */; };
		6E4BACF51D49A04600B562AE /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		6E4BACF61D49A04700B562AE /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		6E4BACF71D49A04700B562AE /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		6E4BACF81D49A04800B562AE /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		6E4BACF91D49A04800B562AE /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		6E4BACFA1D49A04900B562AE /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		6E4BACFB1D49A04A00B562AE /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		6E4BACFC1D49A04A00B562AE /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		6E5ACCBA1D3C4D0B007DA2B4 /* event_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E5ACCB91D3C4D0B007DA2B4 /* event_internal.h */; };
		6E5ACCBB1D3C4D0E007DA2B4 /* event_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E5ACCB91D3C4D0B007DA2B4 /* event_internal.h */; };
		6E5ACCBC1D3C4D0F007DA2B4 /* event_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E5ACCB91D3C4D0B007DA2B4 /* event_internal.h */; };
		6E90269C1BB9BD50004DC3AD /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		6E9955581C3AF7710071D40C /* venture_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9955571C3AF7710071D40C /* venture_private.h */; };
		6E99558A1C3AF7900071D40C /* venture_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9955571C3AF7710071D40C /* venture_private.h */; };
		6E9955CF1C3B218E0071D40C /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		6E9956011C3B21980071D40C /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		6E9956021C3B21990071D40C /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		6E9956031C3B219A0071D40C /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		6E9956041C3B219B0071D40C /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		6E9956051C3B219B0071D40C /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		6E9956071C3B21AA0071D40C /* venture_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9956061C3B21AA0071D40C /* venture_internal.h */; };
		6E9956081C3B21B30071D40C /* venture_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9956061C3B21AA0071D40C /* venture_internal.h */; };
		6E9956091C3B21B40071D40C /* venture_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9956061C3B21AA0071D40C /* venture_internal.h */; };
		6E9B6B5F1BB4F3C8009E324D /* firehose_buffer_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9B6B201BB4CC73009E324D /* firehose_buffer_internal.h */; };
		6EA283D71CAB93920041B2E0 /* libdispatch.codes in Copy Trace Definitions */ = {isa = PBXBuildFile; fileRef = 6EA283D01CAB93270041B2E0 /* libdispatch.codes */; };
		6EA793891D458A5800929B1B /* event_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EA793881D458A5800929B1B /* event_config.h */; };
		6EA7938E1D458A5C00929B1B /* event_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EA793881D458A5800929B1B /* event_config.h */; };
		6EA7938F1D458A5E00929B1B /* event_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EA793881D458A5800929B1B /* event_config.h */; };
		6EA962971D48622600759D53 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		6EA962981D48622700759D53 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		6EA962991D48622800759D53 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		6EA9629A1D48622900759D53 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		6EA9629B1D48622900759D53 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		6EA9629C1D48622A00759D53 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		6EA9629D1D48622B00759D53 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		6EA9629E1D48622C00759D53 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		6EA9629F1D48625000759D53 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		6EA962A01D48625100759D53 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		6EA962A11D48625100759D53 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		6EA962A21D48625200759D53 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		6EA962A31D48625300759D53 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		6EA962A41D48625300759D53 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		6EA962A51D48625400759D53 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		6EA962A61D48625500759D53 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		6EB60D2C1BBB197B0092FA94 /* firehose_inline_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EB60D291BBB19640092FA94 /* firehose_inline_internal.h */; };
		6EBEC7E51BBDD30C009B1596 /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		6EBEC7E61BBDD30D009B1596 /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		6EBEC7E71BBDD30F009B1596 /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		6EBEC7E81BBDD324009B1596 /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		6EBEC7E91BBDD325009B1596 /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		6EBEC7EA1BBDD326009B1596 /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		6ED64B401BBD898300C35F4D /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		6ED64B411BBD898400C35F4D /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		6ED64B421BBD898500C35F4D /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		6ED64B431BBD898600C35F4D /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		6ED64B441BBD898700C35F4D /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		6ED64B461BBD89AF00C35F4D /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		6ED64B471BBD89AF00C35F4D /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		6ED64B481BBD89B100C35F4D /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		6ED64B491BBD89BC00C35F4D /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		6ED64B4A1BBD89BD00C35F4D /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		6ED64B4B1BBD89BE00C35F4D /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		6ED64B4F1BBD8A1400C35F4D /* firehose_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EF0B26A1BA8C4AE007FA4F6 /* firehose_internal.h */; };
		6ED64B501BBD8A1400C35F4D /* firehose_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EF0B26A1BA8C4AE007FA4F6 /* firehose_internal.h */; };
		6ED64B511BBD8A2100C35F4D /* firehose_buffer_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9B6B201BB4CC73009E324D /* firehose_buffer_internal.h */; };
		6ED64B521BBD8A2100C35F4D /* firehose_buffer_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9B6B201BB4CC73009E324D /* firehose_buffer_internal.h */; };
		6ED64B531BBD8A2300C35F4D /* firehose_buffer_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E9B6B201BB4CC73009E324D /* firehose_buffer_internal.h */; };
		6ED64B571BBD8A3B00C35F4D /* firehose_inline_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EB60D291BBB19640092FA94 /* firehose_inline_internal.h */; };
		6ED64B581BBD8A3E00C35F4D /* firehose_inline_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EB60D291BBB19640092FA94 /* firehose_inline_internal.h */; };
		6ED64B591BBD8A3F00C35F4D /* firehose_inline_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EB60D291BBB19640092FA94 /* firehose_inline_internal.h */; };
		6EDF10B81BBB488A007F14BF /* firehose_buffer_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EDF10831BBB487E007F14BF /* firehose_buffer_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		6EE664271BE2FD5C00ED7B1C /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		6EF0B26D1BA8C527007FA4F6 /* firehose_server_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 72EA3FBA1AF41EA400BBA227 /* firehose_server_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		6EF0B2711BA8C540007FA4F6 /* firehose_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EF0B26A1BA8C4AE007FA4F6 /* firehose_internal.h */; };
		6EF0B2781BA8C56E007FA4F6 /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Client, ); }; };
		6EF0B27A1BA8C57D007FA4F6 /* firehose_server_object.m in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9D1AE1BB7300289540 /* firehose_server_object.m */; };
		6EF2CAA51C88998A001ABE83 /* lock.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EF2CAA41C88998A001ABE83 /* lock.h */; };
		6EF2CAAC1C8899D5001ABE83 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		6EF2CAAD1C8899E9001ABE83 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		6EF2CAAE1C8899EA001ABE83 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		6EF2CAAF1C8899EB001ABE83 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		6EF2CAB01C8899EB001ABE83 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		6EF2CAB11C8899EC001ABE83 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		6EF2CAB21C8899EC001ABE83 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		6EF2CAB31C8899ED001ABE83 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		6EF2CAB41C889D65001ABE83 /* lock.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EF2CAA41C88998A001ABE83 /* lock.h */; };
		6EF2CAB51C889D67001ABE83 /* lock.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EF2CAA41C88998A001ABE83 /* lock.h */; };
		6EFBDA4B1D61A0D600282887 /* priority.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EFBDA4A1D61A0D600282887 /* priority.h */; };
		721F5C5D0F15520500FF03A6 /* semaphore.h in Headers */ = {isa = PBXBuildFile; fileRef = 721F5C5C0F15520500FF03A6 /* semaphore.h */; settings = {ATTRIBUTES = (Public, ); }; };
		721F5CCF0F15553500FF03A6 /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		72CC94300ECCD8750031B751 /* base.h in Headers */ = {isa = PBXBuildFile; fileRef = 72CC942F0ECCD8750031B751 /* base.h */; settings = {ATTRIBUTES = (Public, ); }; };
		96032E4B0F5CC8C700241C5F /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		96032E4D0F5CC8D100241C5F /* time.h in Headers */ = {isa = PBXBuildFile; fileRef = 96032E4C0F5CC8D100241C5F /* time.h */; settings = {ATTRIBUTES = (Public, ); }; };
		961B99360F3E83980006BC96 /* benchmark.h in Headers */ = {isa = PBXBuildFile; fileRef = 961B99350F3E83980006BC96 /* benchmark.h */; settings = {ATTRIBUTES = (Private, ); }; };
		961B99500F3E85C30006BC96 /* object.h in Headers */ = {isa = PBXBuildFile; fileRef = 961B994F0F3E85C30006BC96 /* object.h */; settings = {ATTRIBUTES = (Public, ); }; };
		965CD6350F3E806200D4E28D /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		965ECC210F3EAB71004DDD89 /* object_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 965ECC200F3EAB71004DDD89 /* object_internal.h */; };
		9661E56B0F3E7DDF00749F3E /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		9676A0E10F3E755D00713ADB /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		96929D840F3EA1020041FF5D /* atomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D820F3EA1020041FF5D /* atomic.h */; };
		96929D850F3EA1020041FF5D /* shims.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D830F3EA1020041FF5D /* shims.h */; };
		96929D960F3EA2170041FF5D /* queue_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D950F3EA2170041FF5D /* queue_internal.h */; };
		96A8AA870F41E7A400CD570B /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		96BC39BD0F3EBAB100C59689 /* queue_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 96BC39BC0F3EBAB100C59689 /* queue_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		96C9553B0F3EAEDD000D2CA4 /* once.h in Headers */ = {isa = PBXBuildFile; fileRef = 96C9553A0F3EAEDD000D2CA4 /* once.h */; settings = {ATTRIBUTES = (Public, ); }; };
		96DF70BE0F38FE3C0074BD99 /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		C00B0DF21C5AEBBE000330B3 /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		C00B0DF31C5AEBBE000330B3 /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		C00B0DF41C5AEBBE000330B3 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		C00B0DF51C5AEBBE000330B3 /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		C00B0DF61C5AEBBE000330B3 /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		C00B0DF71C5AEBBE000330B3 /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		C00B0DF81C5AEBBE000330B3 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		C00B0DF91C5AEBBE000330B3 /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		C00B0DFA1C5AEBBE000330B3 /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		C00B0DFB1C5AEBBE000330B3 /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		C00B0DFC1C5AEBBE000330B3 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		C00B0DFD1C5AEBBE000330B3 /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		C00B0DFE1C5AEBBE000330B3 /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		C00B0DFF1C5AEBBE000330B3 /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		C00B0E001C5AEBBE000330B3 /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		C00B0E011C5AEBBE000330B3 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		C00B0E021C5AEBBE000330B3 /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		C00B0E031C5AEBBE000330B3 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		C00B0E041C5AEBBE000330B3 /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		C00B0E051C5AEBBE000330B3 /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		C01866A61C5973210040FC07 /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		C01866A71C5973210040FC07 /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		C01866A81C5973210040FC07 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		C01866A91C5973210040FC07 /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		C01866AA1C5973210040FC07 /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		C01866AB1C5973210040FC07 /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		C01866AC1C5973210040FC07 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		C01866AD1C5973210040FC07 /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		C01866AE1C5973210040FC07 /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		C01866AF1C5973210040FC07 /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		C01866B01C5973210040FC07 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		C01866B11C5973210040FC07 /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		C01866B21C5973210040FC07 /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		C01866B31C5973210040FC07 /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		C01866B41C5973210040FC07 /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		C01866B51C5973210040FC07 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		C01866B61C5973210040FC07 /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		C01866B71C5973210040FC07 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		C01866B81C5973210040FC07 /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		C01866B91C5973210040FC07 /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		C90144651C73A8A3002638FC /* module.modulemap in Headers */ = {isa = PBXBuildFile; fileRef = C901445E1C73A7FE002638FC /* module.modulemap */; settings = {ATTRIBUTES = (Public, ); }; };
		C90144661C73A9F6002638FC /* module.modulemap in Headers */ = {isa = PBXBuildFile; fileRef = C90144641C73A845002638FC /* module.modulemap */; settings = {ATTRIBUTES = (Private, ); }; };
		C913AC0F143BD34800B78976 /* data_private.h in Headers */ = {isa = PBXBuildFile; fileRef = C913AC0E143BD34800B78976 /* data_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		C93D6165143E190E00EB9023 /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		C93D6166143E190F00EB9023 /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		C93D6167143E190F00EB9023 /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		C9C5F80E143C1771006DC718 /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		E4128ED613BA9A1700ABB2CB /* hw_config.h in Headers */ = {isa = PBXBuildFile; fileRef = E4128ED513BA9A1700ABB2CB /* hw_config.h */; };
		E4128ED713BA9A1700ABB2CB /* hw_config.h in Headers */ = {isa = PBXBuildFile; fileRef = E4128ED513BA9A1700ABB2CB /* hw_config.h */; };
		E417A38412A472C4004D659D /* provider.d in Sources */ = {isa = PBXBuildFile; fileRef = E43570B8126E93380097AB9F /* provider.d */; };
		E417A38512A472C5004D659D /* provider.d in Sources */ = {isa = PBXBuildFile; fileRef = E43570B8126E93380097AB9F /* provider.d */; };
		E420867016027AE500EEE210 /* data.m in Sources */ = {isa = PBXBuildFile; fileRef = E420866F16027AE500EEE210 /* data.m */; };
		E420867116027AE500EEE210 /* data.m in Sources */ = {isa = PBXBuildFile; fileRef = E420866F16027AE500EEE210 /* data.m */; };
		E420867216027AE500EEE210 /* data.m in Sources */ = {isa = PBXBuildFile; fileRef = E420866F16027AE500EEE210 /* data.m */; };
		E420867316027AE500EEE210 /* data.m in Sources */ = {isa = PBXBuildFile; fileRef = E420866F16027AE500EEE210 /* data.m */; };
		E421E5F91716ADA10090DC9B /* introspection.h in Headers */ = {isa = PBXBuildFile; fileRef = E421E5F81716ADA10090DC9B /* introspection.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E422A0D512A557B5005E5BDB /* trace.h in Headers */ = {isa = PBXBuildFile; fileRef = E422A0D412A557B5005E5BDB /* trace.h */; };
		E422A0D612A557B5005E5BDB /* trace.h in Headers */ = {isa = PBXBuildFile; fileRef = E422A0D412A557B5005E5BDB /* trace.h */; };
		E43570B9126E93380097AB9F /* provider.d in Sources */ = {isa = PBXBuildFile; fileRef = E43570B8126E93380097AB9F /* provider.d */; };
		E43570BA126E93380097AB9F /* provider.d in Sources */ = {isa = PBXBuildFile; fileRef = E43570B8126E93380097AB9F /* provider.d */; };
		E43A710615783F7E0012D38D /* data_private.h in Headers */ = {isa = PBXBuildFile; fileRef = C913AC0E143BD34800B78976 /* data_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E43A72501AF85BBC00BAA921 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		E43A72841AF85BCB00BAA921 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		E43A72851AF85BCC00BAA921 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		E43A72861AF85BCC00BAA921 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		E43A72871AF85BCD00BAA921 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		E43A72881AF85BE900BAA921 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		E44757DA17F4572600B82CA1 /* inline_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44757D917F4572600B82CA1 /* inline_internal.h */; };
		E44757DB17F4573500B82CA1 /* inline_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44757D917F4572600B82CA1 /* inline_internal.h */; };
		E44757DC17F4573600B82CA1 /* inline_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44757D917F4572600B82CA1 /* inline_internal.h */; };
		E44A8E6B1805C3E0009FFDB6 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		E44A8E6C1805C3E0009FFDB6 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		E44A8E6D1805C3E0009FFDB6 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		E44A8E6E1805C3E0009FFDB6 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		E44A8E6F1805C3E0009FFDB6 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		E44A8E701805C3E0009FFDB6 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		E44A8E721805C473009FFDB6 /* voucher_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E44A8E711805C473009FFDB6 /* voucher_private.h */; };
		E44A8E731805C473009FFDB6 /* voucher_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E44A8E711805C473009FFDB6 /* voucher_private.h */; };
		E44A8E7518066276009FFDB6 /* voucher_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44A8E7418066276009FFDB6 /* voucher_internal.h */; };
		E44A8E7618066276009FFDB6 /* voucher_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44A8E7418066276009FFDB6 /* voucher_internal.h */; };
		E44A8E7718066276009FFDB6 /* voucher_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44A8E7418066276009FFDB6 /* voucher_internal.h */; };
		E44EBE3E1251659900645D88 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		E44EBE5412517EBE00645D88 /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		E44EBE5512517EBE00645D88 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		E44EBE5612517EBE00645D88 /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		E44EBE5712517EBE00645D88 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		E44F9DAB16543F94001DCD38 /* introspection_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44F9DA816543F79001DCD38 /* introspection_internal.h */; };
		E44F9DAC1654400D001DCD38 /* introspection_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44F9DA816543F79001DCD38 /* introspection_internal.h */; };
		E44F9DAD1654400E001DCD38 /* introspection_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E44F9DA816543F79001DCD38 /* introspection_internal.h */; };
		E44F9DAE16544022001DCD38 /* allocator_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BBF5A5F154B64D8002B20F9 /* allocator_internal.h */; };
		E44F9DAF16544026001DCD38 /* internal.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED8F0E8361E600161930 /* internal.h */; };
		E44F9DB01654402B001DCD38 /* data_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C1ED6E1263E714000D3C8B /* data_internal.h */; };
		E44F9DB11654402E001DCD38 /* io_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A0095A110F274B0000E2A31 /* io_internal.h */; };
		E44F9DB216544032001DCD38 /* object_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 965ECC200F3EAB71004DDD89 /* object_internal.h */; };
		E44F9DB316544037001DCD38 /* queue_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D950F3EA2170041FF5D /* queue_internal.h */; };
		E44F9DB41654403B001DCD38 /* semaphore_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A5D13AB0F6B280500197CC3 /* semaphore_internal.h */; };
		E44F9DB51654403F001DCD38 /* source_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = FC0B34780FA2851C0080FFA0 /* source_internal.h */; };
		E44F9DB616544043001DCD38 /* trace.h in Headers */ = {isa = PBXBuildFile; fileRef = E422A0D412A557B5005E5BDB /* trace.h */; };
		E44F9DB71654404F001DCD38 /* shims.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D830F3EA1020041FF5D /* shims.h */; };
		E44F9DB816544053001DCD38 /* atomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D820F3EA1020041FF5D /* atomic.h */; };
		E44F9DB916544056001DCD38 /* getprogname.h in Headers */ = {isa = PBXBuildFile; fileRef = E4BA743913A8911B0095BDF1 /* getprogname.h */; };
		E44F9DBA1654405B001DCD38 /* hw_config.h in Headers */ = {isa = PBXBuildFile; fileRef = E4128ED513BA9A1700ABB2CB /* hw_config.h */; };
		E44F9DBC1654405B001DCD38 /* perfmon.h in Headers */ = {isa = PBXBuildFile; fileRef = FC1832A2109923C7003403D5 /* perfmon.h */; };
		E44F9DBE1654405B001DCD38 /* tsd.h in Headers */ = {isa = PBXBuildFile; fileRef = FC1832A4109923C7003403D5 /* tsd.h */; };
		E44F9DBF165440EF001DCD38 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = FC9C70E7105EC9620074F9CA /* config.h */; };
		E44F9DC016544115001DCD38 /* object.h in Headers */ = {isa = PBXBuildFile; fileRef = E4EB4A2614C35ECE00AA0FA9 /* object.h */; };
		E44F9DC116544115001DCD38 /* object_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E454569214746F1B00106147 /* object_private.h */; };
		E454569314746F1B00106147 /* object_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E454569214746F1B00106147 /* object_private.h */; settings = {ATTRIBUTES = (); }; };
		E454569414746F1B00106147 /* object_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E454569214746F1B00106147 /* object_private.h */; settings = {ATTRIBUTES = (); }; };
		E4630251176162D200E11F4C /* atomic_sfb.h in Headers */ = {isa = PBXBuildFile; fileRef = E463024F1761603C00E11F4C /* atomic_sfb.h */; };
		E4630252176162D300E11F4C /* atomic_sfb.h in Headers */ = {isa = PBXBuildFile; fileRef = E463024F1761603C00E11F4C /* atomic_sfb.h */; };
		E4630253176162D400E11F4C /* atomic_sfb.h in Headers */ = {isa = PBXBuildFile; fileRef = E463024F1761603C00E11F4C /* atomic_sfb.h */; };
		E46DBC4014EE10C80001F9F6 /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		E46DBC4114EE10C80001F9F6 /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		E46DBC4214EE10C80001F9F6 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		E46DBC4314EE10C80001F9F6 /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		E46DBC4414EE10C80001F9F6 /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		E46DBC4514EE10C80001F9F6 /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		E46DBC4614EE10C80001F9F6 /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		E46DBC4714EE10C80001F9F6 /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		E46DBC4814EE10C80001F9F6 /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		E46DBC4914EE10C80001F9F6 /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		E46DBC4A14EE10C80001F9F6 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		E46DBC4B14EE10C80001F9F6 /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		E46DBC4C14EE10C80001F9F6 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		E46DBC4D14EE10C80001F9F6 /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		E48AF55A16E70FD9004105FF /* io_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E48AF55916E70FD9004105FF /* io_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E48AF55B16E72D44004105FF /* io_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E48AF55916E70FD9004105FF /* io_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E48EC97C1835BADD00EAC4F1 /* yield.h in Headers */ = {isa = PBXBuildFile; fileRef = E48EC97B1835BADD00EAC4F1 /* yield.h */; };
		E48EC97D1835BADD00EAC4F1 /* yield.h in Headers */ = {isa = PBXBuildFile; fileRef = E48EC97B1835BADD00EAC4F1 /* yield.h */; };
		E48EC97E1835BADD00EAC4F1 /* yield.h in Headers */ = {isa = PBXBuildFile; fileRef = E48EC97B1835BADD00EAC4F1 /* yield.h */; };
		E49BB6D11E70748100868613 /* provider.d in Sources */ = {isa = PBXBuildFile; fileRef = E43570B8126E93380097AB9F /* provider.d */; };
		E49BB6D21E70748100868613 /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		E49BB6D31E70748100868613 /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		E49BB6D41E70748100868613 /* firehose.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA9B1AE1B0BD00289540 /* firehose.defs */; };
		E49BB6D51E70748100868613 /* firehose_buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 72DEAA971AE181D300289540 /* firehose_buffer.c */; };
		E49BB6D61E70748100868613 /* event_kevent.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */; };
		E49BB6D71E70748100868613 /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		E49BB6D81E70748100868613 /* mach.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E4BACBC1D48A41500B562AE /* mach.c */; };
		E49BB6D91E70748100868613 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		E49BB6DA1E70748100868613 /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		E49BB6DB1E70748100868613 /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		E49BB6DC1E70748100868613 /* lock.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EF2CAAB1C8899D5001ABE83 /* lock.c */; };
		E49BB6DD1E70748100868613 /* firehose_reply.defs in Sources */ = {isa = PBXBuildFile; fileRef = 72406A031AF95DF800DF4E2B /* firehose_reply.defs */; settings = {ATTRIBUTES = (Server, ); }; };
		E49BB6DE1E70748100868613 /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		E49BB6DF1E70748100868613 /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		E49BB6E01E70748100868613 /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		E49BB6E11E70748100868613 /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		E49BB6E21E70748100868613 /* event_epoll.c in Sources */ = {isa = PBXBuildFile; fileRef = 6EA7937D1D456D1300929B1B /* event_epoll.c */; };
		E49BB6E31E70748100868613 /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		E49BB6E41E70748100868613 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		E49BB6E51E70748100868613 /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		E49BB6E61E70748100868613 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		E49BB6E71E70748100868613 /* block.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E43A724F1AF85BBC00BAA921 /* block.cpp */; };
		E49BB6E81E70748100868613 /* event.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E5ACCBD1D3C6719007DA2B4 /* event.c */; };
		E49BB6E91E70748100868613 /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		E49BB6EA1E70748100868613 /* object.m in Sources */ = {isa = PBXBuildFile; fileRef = E4FC3263145F46C9002FBDDB /* object.m */; };
		E49BB6EB1E70748100868613 /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		E49BB6EC1E70748100868613 /* data.m in Sources */ = {isa = PBXBuildFile; fileRef = E420866F16027AE500EEE210 /* data.m */; };
		E49BB6ED1E70748100868613 /* voucher.c in Sources */ = {isa = PBXBuildFile; fileRef = E44A8E6A1805C3E0009FFDB6 /* voucher.c */; };
		E49BB7091E70A39700868613 /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		E49BB70A1E70A3B000868613 /* venture.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9955CE1C3B218E0071D40C /* venture.c */; };
		E49F2423125D3C960057C971 /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		E49F2424125D3C970057C971 /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		E49F2499125D48D80057C971 /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		E49F24AB125D57FA0057C971 /* dispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED960E8361E600161930 /* dispatch.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24AC125D57FA0057C971 /* base.h in Headers */ = {isa = PBXBuildFile; fileRef = 72CC942F0ECCD8750031B751 /* base.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24AD125D57FA0057C971 /* object.h in Headers */ = {isa = PBXBuildFile; fileRef = 961B994F0F3E85C30006BC96 /* object.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24AE125D57FA0057C971 /* queue.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED8B0E8361E600161930 /* queue.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24AF125D57FA0057C971 /* source.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED8D0E8361E600161930 /* source.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24B0125D57FA0057C971 /* semaphore.h in Headers */ = {isa = PBXBuildFile; fileRef = 721F5C5C0F15520500FF03A6 /* semaphore.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24B1125D57FA0057C971 /* group.h in Headers */ = {isa = PBXBuildFile; fileRef = FC5C9C1D0EADABE3006E462D /* group.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24B2125D57FA0057C971 /* once.h in Headers */ = {isa = PBXBuildFile; fileRef = 96C9553A0F3EAEDD000D2CA4 /* once.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24B3125D57FA0057C971 /* io.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AAB45C310D30CC7004407EA /* io.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24B4125D57FA0057C971 /* data.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AAB45C510D30D0C004407EA /* data.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24B5125D57FA0057C971 /* time.h in Headers */ = {isa = PBXBuildFile; fileRef = 96032E4C0F5CC8D100241C5F /* time.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E49F24B6125D57FA0057C971 /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED930E8361E600161930 /* private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E49F24B7125D57FA0057C971 /* queue_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 96BC39BC0F3EBAB100C59689 /* queue_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E49F24B8125D57FA0057C971 /* source_private.h in Headers */ = {isa = PBXBuildFile; fileRef = FCEF047F0F5661960067401F /* source_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E49F24B9125D57FA0057C971 /* benchmark.h in Headers */ = {isa = PBXBuildFile; fileRef = 961B99350F3E83980006BC96 /* benchmark.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E49F24BA125D57FA0057C971 /* internal.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED8F0E8361E600161930 /* internal.h */; settings = {ATTRIBUTES = (); }; };
		E49F24BB125D57FA0057C971 /* queue_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D950F3EA2170041FF5D /* queue_internal.h */; };
		E49F24BC125D57FA0057C971 /* object_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 965ECC200F3EAB71004DDD89 /* object_internal.h */; };
		E49F24BD125D57FA0057C971 /* semaphore_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A5D13AB0F6B280500197CC3 /* semaphore_internal.h */; };
		E49F24BE125D57FA0057C971 /* source_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = FC0B34780FA2851C0080FFA0 /* source_internal.h */; };
		E49F24BF125D57FA0057C971 /* io_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 5A0095A110F274B0000E2A31 /* io_internal.h */; };
		E49F24C1125D57FA0057C971 /* tsd.h in Headers */ = {isa = PBXBuildFile; fileRef = FC1832A4109923C7003403D5 /* tsd.h */; };
		E49F24C2125D57FA0057C971 /* atomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D820F3EA1020041FF5D /* atomic.h */; };
		E49F24C3125D57FA0057C971 /* shims.h in Headers */ = {isa = PBXBuildFile; fileRef = 96929D830F3EA1020041FF5D /* shims.h */; };
		E49F24C4125D57FA0057C971 /* time.h in Headers */ = {isa = PBXBuildFile; fileRef = FC1832A3109923C7003403D5 /* time.h */; };
		E49F24C5125D57FA0057C971 /* perfmon.h in Headers */ = {isa = PBXBuildFile; fileRef = FC1832A2109923C7003403D5 /* perfmon.h */; };
		E49F24C6125D57FA0057C971 /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = FC9C70E7105EC9620074F9CA /* config.h */; };
		E49F24C8125D57FA0057C971 /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		E49F24C9125D57FA0057C971 /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		E49F24CA125D57FA0057C971 /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		E49F24CB125D57FA0057C971 /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		E49F24CC125D57FA0057C971 /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		E49F24CD125D57FA0057C971 /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		E49F24CE125D57FA0057C971 /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		E49F24CF125D57FA0057C971 /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		E49F24D0125D57FA0057C971 /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		E49F24D1125D57FA0057C971 /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		E49F24D2125D57FA0057C971 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		E49F24D3125D57FA0057C971 /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		E49F24D4125D57FA0057C971 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		E4B3C3FE18C50D000039F49F /* voucher_activity_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E4B3C3FD18C50D000039F49F /* voucher_activity_private.h */; };
		E4B3C3FF18C50D0E0039F49F /* voucher_activity_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E4B3C3FD18C50D000039F49F /* voucher_activity_private.h */; };
		E4B515BD164B2DA300E003AF /* provider.d in Sources */ = {isa = PBXBuildFile; fileRef = E43570B8126E93380097AB9F /* provider.d */; };
		E4B515BE164B2DA300E003AF /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		E4B515BF164B2DA300E003AF /* resolver.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE371251656400645D88 /* resolver.c */; };
		E4B515C0164B2DA300E003AF /* init.c in Sources */ = {isa = PBXBuildFile; fileRef = E44EBE3B1251659900645D88 /* init.c */; };
		E4B515C1164B2DA300E003AF /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		E4B515C2164B2DA300E003AF /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		E4B515C3164B2DA300E003AF /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		E4B515C4164B2DA300E003AF /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		E4B515C5164B2DA300E003AF /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		E4B515C6164B2DA300E003AF /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		E4B515C7164B2DA300E003AF /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		E4B515C8164B2DA300E003AF /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		E4B515C9164B2DA300E003AF /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		E4B515CA164B2DA300E003AF /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		E4B515CB164B2DA300E003AF /* transform.c in Sources */ = {isa = PBXBuildFile; fileRef = C9C5F80D143C1771006DC718 /* transform.c */; };
		E4B515CC164B2DA300E003AF /* object.m in Sources */ = {isa = PBXBuildFile; fileRef = E4FC3263145F46C9002FBDDB /* object.m */; };
		E4B515CD164B2DA300E003AF /* allocator.c in Sources */ = {isa = PBXBuildFile; fileRef = 2BBF5A62154B64F5002B20F9 /* allocator.c */; };
		E4B515CE164B2DA300E003AF /* data.m in Sources */ = {isa = PBXBuildFile; fileRef = E420866F16027AE500EEE210 /* data.m */; };
		E4B515D8164B2DFB00E003AF /* introspection_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E4B515D7164B2DFB00E003AF /* introspection_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E4B515DD164B32E000E003AF /* introspection.c in Sources */ = {isa = PBXBuildFile; fileRef = E4B515DC164B32E000E003AF /* introspection.c */; };
		E4BA743B13A8911B0095BDF1 /* getprogname.h in Headers */ = {isa = PBXBuildFile; fileRef = E4BA743913A8911B0095BDF1 /* getprogname.h */; };
		E4BA743C13A8911B0095BDF1 /* getprogname.h in Headers */ = {isa = PBXBuildFile; fileRef = E4BA743913A8911B0095BDF1 /* getprogname.h */; };
		E4C1ED6F1263E714000D3C8B /* data_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C1ED6E1263E714000D3C8B /* data_internal.h */; };
		E4C1ED701263E714000D3C8B /* data_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = E4C1ED6E1263E714000D3C8B /* data_internal.h */; };
		E4D76A9318E325D200B1F98B /* block.h in Headers */ = {isa = PBXBuildFile; fileRef = E4D76A9218E325D200B1F98B /* block.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E4D76A9418E325D200B1F98B /* block.h in Headers */ = {isa = PBXBuildFile; fileRef = E4D76A9218E325D200B1F98B /* block.h */; settings = {ATTRIBUTES = (Public, ); }; };
		E4EB4A2714C35ECE00AA0FA9 /* object.h in Headers */ = {isa = PBXBuildFile; fileRef = E4EB4A2614C35ECE00AA0FA9 /* object.h */; };
		E4EB4A2814C35ECE00AA0FA9 /* object.h in Headers */ = {isa = PBXBuildFile; fileRef = E4EB4A2614C35ECE00AA0FA9 /* object.h */; };
		E4EC11AE12514302000DDBD1 /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		E4EC11AF12514302000DDBD1 /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		E4EC11B012514302000DDBD1 /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		E4EC11B112514302000DDBD1 /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		E4EC11B212514302000DDBD1 /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		E4EC11B312514302000DDBD1 /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		E4EC11B412514302000DDBD1 /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		E4EC11B512514302000DDBD1 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		E4EC11B712514302000DDBD1 /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		E4EC11B812514302000DDBD1 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		E4EC121A12514715000DDBD1 /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		E4EC121B12514715000DDBD1 /* semaphore.c in Sources */ = {isa = PBXBuildFile; fileRef = 721F5CCE0F15553500FF03A6 /* semaphore.c */; };
		E4EC121C12514715000DDBD1 /* once.c in Sources */ = {isa = PBXBuildFile; fileRef = 96DF70BD0F38FE3C0074BD99 /* once.c */; };
		E4EC121D12514715000DDBD1 /* apply.c in Sources */ = {isa = PBXBuildFile; fileRef = 9676A0E00F3E755D00713ADB /* apply.c */; };
		E4EC121E12514715000DDBD1 /* object.c in Sources */ = {isa = PBXBuildFile; fileRef = 9661E56A0F3E7DDF00749F3E /* object.c */; };
		E4EC121F12514715000DDBD1 /* benchmark.c in Sources */ = {isa = PBXBuildFile; fileRef = 965CD6340F3E806200D4E28D /* benchmark.c */; };
		E4EC122012514715000DDBD1 /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = 96A8AA860F41E7A400CD570B /* source.c */; };
		E4EC122112514715000DDBD1 /* time.c in Sources */ = {isa = PBXBuildFile; fileRef = 96032E4A0F5CC8C700241C5F /* time.c */; };
		E4EC122312514715000DDBD1 /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 5AAB45BF10D30B79004407EA /* data.c */; };
		E4EC122412514715000DDBD1 /* io.c in Sources */ = {isa = PBXBuildFile; fileRef = 5A27262510F26F1900751FBC /* io.c */; };
		E4ECBAA515253C25002C313C /* mach_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E4ECBAA415253C25002C313C /* mach_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E4ECBAA615253D17002C313C /* mach_private.h in Headers */ = {isa = PBXBuildFile; fileRef = E4ECBAA415253C25002C313C /* mach_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		E4FC3264145F46C9002FBDDB /* object.m in Sources */ = {isa = PBXBuildFile; fileRef = E4FC3263145F46C9002FBDDB /* object.m */; };
		E4FC3265145F46C9002FBDDB /* object.m in Sources */ = {isa = PBXBuildFile; fileRef = E4FC3263145F46C9002FBDDB /* object.m */; };
		E4FC3266145F46C9002FBDDB /* object.m in Sources */ = {isa = PBXBuildFile; fileRef = E4FC3263145F46C9002FBDDB /* object.m */; };
		E4FC3267145F46C9002FBDDB /* object.m in Sources */ = {isa = PBXBuildFile; fileRef = E4FC3263145F46C9002FBDDB /* object.m */; };
		FC0B34790FA2851C0080FFA0 /* source_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = FC0B34780FA2851C0080FFA0 /* source_internal.h */; };
		FC1832A6109923C7003403D5 /* perfmon.h in Headers */ = {isa = PBXBuildFile; fileRef = FC1832A2109923C7003403D5 /* perfmon.h */; };
		FC1832A7109923C7003403D5 /* time.h in Headers */ = {isa = PBXBuildFile; fileRef = FC1832A3109923C7003403D5 /* time.h */; };
		FC1832A8109923C7003403D5 /* tsd.h in Headers */ = {isa = PBXBuildFile; fileRef = FC1832A4109923C7003403D5 /* tsd.h */; };
		FC5C9C1E0EADABE3006E462D /* group.h in Headers */ = {isa = PBXBuildFile; fileRef = FC5C9C1D0EADABE3006E462D /* group.h */; settings = {ATTRIBUTES = (Public, ); }; };
		FC7BED990E8361E600161930 /* queue.c in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED8A0E8361E600161930 /* queue.c */; };
		FC7BED9A0E8361E600161930 /* queue.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED8B0E8361E600161930 /* queue.h */; settings = {ATTRIBUTES = (Public, ); }; };
		FC7BED9C0E8361E600161930 /* source.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED8D0E8361E600161930 /* source.h */; settings = {ATTRIBUTES = (Public, ); }; };
		FC7BED9E0E8361E600161930 /* internal.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED8F0E8361E600161930 /* internal.h */; settings = {ATTRIBUTES = (); }; };
		FC7BEDA20E8361E600161930 /* private.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED930E8361E600161930 /* private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		FC7BEDA40E8361E600161930 /* protocol.defs in Sources */ = {isa = PBXBuildFile; fileRef = FC7BED950E8361E600161930 /* protocol.defs */; settings = {ATTRIBUTES = (Client, Server, ); }; };
		FC7BEDA50E8361E600161930 /* dispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = FC7BED960E8361E600161930 /* dispatch.h */; settings = {ATTRIBUTES = (Public, ); }; };
		FC9C70E8105EC9620074F9CA /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = FC9C70E7105EC9620074F9CA /* config.h */; };
		FCEF04800F5661960067401F /* source_private.h in Headers */ = {isa = PBXBuildFile; fileRef = FCEF047F0F5661960067401F /* source_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		4552540219B1384900B88766 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 4552536E19B1384900B88766 /* libdispatchtest.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = E4D020B4108F73E000FAA873;
			remoteInfo = bench;
		};
		4552540419B1384900B88766 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 4552536E19B1384900B88766 /* libdispatchtest.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = E454823616C1D8E50042EC2D;
			remoteInfo = jsgc_bench;
		};
		4552540619B1384900B88766 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 4552536E19B1384900B88766 /* libdispatchtest.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = E454824516C1F0EF0042EC2D;
			remoteInfo = async_bench;
		};
		4552540819B1384900B88766 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 4552536E19B1384900B88766 /* libdispatchtest.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = E454824F16C1F0FE0042EC2D;
			remoteInfo = apply_bench;
		};
		6E2ECB011C49C31200A30A32 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 6E040C621C499B1B00411A2E;
			remoteInfo = libfirehose_kernel;
		};
		6EF0B27D1BA8C5BF007FA4F6 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 6EB4E4081BA8BCAD00D7B9D2;
			remoteInfo = libfirehose_server;
		};
		92CBD7591BED926C006E0892 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 4552536E19B1384900B88766 /* libdispatchtest.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = E4D01DC5108E708E00FAA873;
			remoteInfo = all;
		};
		92F3FECE1BEC6F1000025962 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 92F3FECA1BEC69E500025962;
			remoteInfo = darwintests;
		};
		C00B0E131C5AEED6000330B3 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = C00B0DF01C5AEBBE000330B3;
			remoteInfo = "libdispatch dyld stub";
		};
		C01866C11C597AEA0040FC07 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = C01866A41C5973210040FC07;
			remoteInfo = "libdispatch static";
		};
		C927F36610FD7F1000C5AB8B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = C927F35F10FD7F1000C5AB8B /* ddt.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = FCFA5AA010D1AE050074F59A;
			remoteInfo = ddt;
		};
		C927F36810FD7F1A00C5AB8B /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = C927F35F10FD7F1000C5AB8B /* ddt.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = FCFA5A9F10D1AE050074F59A;
			remoteInfo = ddt;
		};
		E4128E4913B94BCE00ABB2CB /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = libdispatch;
		};
		E437F0D514F7441F00F0B997 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = E46DBC1A14EE10C80001F9F6;
			remoteInfo = libdispatch_static;
		};
		E47D6ECA125FEB9D0070D91C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = E4EC118F12514302000DDBD1;
			remoteInfo = "libdispatch up resolved";
		};
		E47D6ECC125FEBA10070D91C /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = E4EC121612514715000DDBD1;
			remoteInfo = "libdispatch mp resolved";
		};
		E49BB6F71E7074C100868613 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = E49BB6CE1E70748100868613;
			remoteInfo = "libdispatch alt resolved";
		};
		E4B515DA164B317700E003AF /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = E4B51595164B2DA300E003AF;
			remoteInfo = "libdispatch introspection";
		};
/* End PBXContainerItemProxy section */

/* Begin PBXCopyFilesBuildPhase section */
		6EA283D61CAB933E0041B2E0 /* Copy Trace Definitions */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 8;
			dstPath = "$(INSTALL_PATH_PREFIX)/usr/local/share/misc";
			dstSubfolderSpec = 0;
			files = (
				6EA283D71CAB93920041B2E0 /* libdispatch.codes in Copy Trace Definitions */,
			);
			name = "Copy Trace Definitions";
			runOnlyForDeploymentPostprocessing = 1;
		};
/* End PBXCopyFilesBuildPhase section */

/* Begin PBXFileReference section */
		2BBF5A5F154B64D8002B20F9 /* allocator_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = allocator_internal.h; sourceTree = "<group>"; };
		2BBF5A62154B64F5002B20F9 /* allocator.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = allocator.c; sourceTree = "<group>"; };
		2BE17C6318EA305E002CA4E8 /* layout_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = layout_private.h; sourceTree = "<group>"; };
		4552536E19B1384900B88766 /* libdispatchtest.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = libdispatchtest.xcodeproj; path = tests/libdispatchtest.xcodeproj; sourceTree = "<group>"; };
		5A0095A110F274B0000E2A31 /* io_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = io_internal.h; sourceTree = "<group>"; };
		5A27262510F26F1900751FBC /* io.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = io.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
		5A5D13AB0F6B280500197CC3 /* semaphore_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = semaphore_internal.h; sourceTree = "<group>"; };
		5AAB45BF10D30B79004407EA /* data.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = data.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
		5AAB45C310D30CC7004407EA /* io.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = io.h; sourceTree = "<group>"; tabWidth = 8; };
		5AAB45C510D30D0C004407EA /* data.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = data.h; sourceTree = "<group>"; tabWidth = 8; };
		6E040C631C499B1B00411A2E /* libfirehose_kernel.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libfirehose_kernel.a; sourceTree = BUILT_PRODUCTS_DIR; };
		6E040C721C499C3600411A2E /* libfirehose_kernel.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = libfirehose_kernel.xcconfig; sourceTree = "<group>"; };
		6E1612691C79606E006FC9A9 /* dispatch_queue_label.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_queue_label.c; sourceTree = "<group>"; };
		6E21F2E41BBB23F00000C6A5 /* firehose_server_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = firehose_server_internal.h; sourceTree = "<group>"; };
		6E21F2E51BBB23F00000C6A5 /* firehose_server.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = firehose_server.c; sourceTree = "<group>"; };
		6E326A8F1C2245C4002A6505 /* dispatch_transform.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_transform.c; sourceTree = "<group>"; };
		6E326AB11C224830002A6505 /* dispatch_cascade.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_cascade.c; sourceTree = "<group>"; };
		6E326AB31C224870002A6505 /* dispatch_qos.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_qos.c; sourceTree = "<group>"; };
		6E326AB51C225477002A6505 /* dispatch_proc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_proc.c; sourceTree = "<group>"; };
		6E326AB71C225FCA002A6505 /* dispatch_vnode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_vnode.c; sourceTree = "<group>"; };
		6E326AB91C229866002A6505 /* dispatch_read.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_read.c; sourceTree = "<group>"; };
		6E326ABB1C229895002A6505 /* dispatch_read2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_read2.c; sourceTree = "<group>"; };
		6E326ABD1C22A577002A6505 /* dispatch_io_net.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_io_net.c; sourceTree = "<group>"; };
		6E326ABE1C22A577002A6505 /* dispatch_io.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_io.c; sourceTree = "<group>"; };
		6E326AD81C233209002A6505 /* dispatch_sync_gc.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = dispatch_sync_gc.m; sourceTree = "<group>"; };
		6E326AD91C233209002A6505 /* dispatch_sync_on_main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_sync_on_main.c; sourceTree = "<group>"; };
		6E326ADC1C234396002A6505 /* dispatch_readsync.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_readsync.c; sourceTree = "<group>"; };
		6E326ADE1C23451A002A6505 /* dispatch_concur.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_concur.c; sourceTree = "<group>"; };
		6E326AE01C234780002A6505 /* dispatch_starfish.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_starfish.c; sourceTree = "<group>"; };
		6E326AE61C2392E8002A6505 /* dispatch_timer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_timer.c; sourceTree = "<group>"; };
		6E326AEF1C239303002A6505 /* dispatch_context_for_key.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_context_for_key.c; sourceTree = "<group>"; };
		6E326B121C239431002A6505 /* dispatch_suspend_timer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_suspend_timer.c; sourceTree = "<group>"; };
		6E326B131C239431002A6505 /* dispatch_timer_bit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_timer_bit.c; sourceTree = "<group>"; };
		6E326B151C239431002A6505 /* dispatch_timer_set_time.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_timer_set_time.c; sourceTree = "<group>"; };
		6E326B161C239431002A6505 /* dispatch_timer_short.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_timer_short.c; sourceTree = "<group>"; };
		6E326B171C239431002A6505 /* dispatch_timer_timeout.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_timer_timeout.c; sourceTree = "<group>"; };
		6E326B441C239B61002A6505 /* dispatch_priority.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_priority.c; sourceTree = "<group>"; };
		6E4BACBC1D48A41500B562AE /* mach.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mach.c; sourceTree = "<group>"; };
		6E4BACC91D48A89500B562AE /* mach_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mach_internal.h; sourceTree = "<group>"; };
		6E4FC9D11C84123600520351 /* os_venture_basic.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = os_venture_basic.c; sourceTree = "<group>"; };
		6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = event_kevent.c; sourceTree = "<group>"; };
		6E5ACCB91D3C4D0B007DA2B4 /* event_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = event_internal.h; sourceTree = "<group>"; };
		6E5ACCBD1D3C6719007DA2B4 /* event.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = event.c; sourceTree = "<group>"; };
		6E62B0531C55806200D2C7C0 /* dispatch_trysync.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_trysync.c; sourceTree = "<group>"; };
		6E67D8D31C16C20B00FC98AC /* dispatch_apply.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_apply.c; sourceTree = "<group>"; };
		6E67D8D91C16C94B00FC98AC /* dispatch_cf_main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_cf_main.c; sourceTree = "<group>"; };
		6E67D90D1C16CCEB00FC98AC /* dispatch_debug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_debug.c; sourceTree = "<group>"; };
		6E67D90F1C16CF0B00FC98AC /* dispatch_group.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_group.c; sourceTree = "<group>"; };
		6E67D9111C17669C00FC98AC /* dispatch_queue_finalizer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_queue_finalizer.c; sourceTree = "<group>"; };
		6E67D9131C17676D00FC98AC /* dispatch_overcommit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_overcommit.c; sourceTree = "<group>"; };
		6E67D9151C1768B300FC98AC /* dispatch_pingpong.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_pingpong.c; sourceTree = "<group>"; };
		6E67D9171C17BA7200FC98AC /* nsoperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = nsoperation.m; sourceTree = "<group>"; };
		6E8E4E6D1C1A35EE0004F5CC /* dispatch_select.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_select.c; sourceTree = "<group>"; };
		6E8E4E6E1C1A35EE0004F5CC /* test_lib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = test_lib.c; sourceTree = "<group>"; };
		6E8E4E6F1C1A35EE0004F5CC /* test_lib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = test_lib.h; sourceTree = "<group>"; };
		6E8E4E9B1C1A4EF10004F5CC /* dispatch_sema.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_sema.c; sourceTree = "<group>"; };
		6E8E4EC31C1A57760004F5CC /* dispatch_after.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_after.c; sourceTree = "<group>"; };
		6E8E4EC51C1A5D450004F5CC /* cf_file_descriptor.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cf_file_descriptor.c; sourceTree = "<group>"; };
		6E8E4EC71C1A61680004F5CC /* dispatch_data.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = dispatch_data.m; sourceTree = "<group>"; };
		6E8E4EC91C1A670B0004F5CC /* dispatch_vm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_vm.c; sourceTree = "<group>"; };
		6E8E4ECB1C1A72650004F5CC /* dispatch_drift.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_drift.c; sourceTree = "<group>"; };
		6E9926711D01295F000CB89A /* dispatch_block.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_block.c; sourceTree = "<group>"; };
		6E9955571C3AF7710071D40C /* venture_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = venture_private.h; sourceTree = "<group>"; };
		6E9955CE1C3B218E0071D40C /* venture.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = venture.c; sourceTree = "<group>"; };
		6E9956061C3B21AA0071D40C /* venture_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = venture_internal.h; sourceTree = "<group>"; };
		6E9B6B201BB4CC73009E324D /* firehose_buffer_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = firehose_buffer_internal.h; sourceTree = "<group>"; };
		6EA283D01CAB93270041B2E0 /* libdispatch.codes */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = libdispatch.codes; sourceTree = "<group>"; };
		6EA2CB841C005DEF0076794A /* dispatch_source.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_source.c; sourceTree = "<group>"; };
		6EA7937D1D456D1300929B1B /* event_epoll.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = event_epoll.c; sourceTree = "<group>"; };
		6EA793881D458A5800929B1B /* event_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = event_config.h; sourceTree = "<group>"; };
		6EB4E4091BA8BCAD00D7B9D2 /* libfirehose_server.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libfirehose_server.a; sourceTree = BUILT_PRODUCTS_DIR; };
		6EB4E4421BA8BD7800D7B9D2 /* libfirehose.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = libfirehose.xcconfig; sourceTree = "<group>"; };
		6EB60D291BBB19640092FA94 /* firehose_inline_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = firehose_inline_internal.h; sourceTree = "<group>"; };
		6EC5ABE31D4436E4004F8674 /* dispatch_deadname.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_deadname.c; sourceTree = "<group>"; };
		6EC670C61E37E201004F10D6 /* dispatch_network_event_thread.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_network_event_thread.c; sourceTree = "<group>"; };
		6EC670C71E37E201004F10D6 /* perf_mach_async.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = perf_mach_async.c; sourceTree = "<group>"; };
		6EC670C81E37E201004F10D6 /* perf_pipepingpong.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = perf_pipepingpong.c; sourceTree = "<group>"; };
		6EDB888D1CB73BDC006776D6 /* dispatch_kevent_cancel_races.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_kevent_cancel_races.c; sourceTree = "<group>"; };
		6EDF10831BBB487E007F14BF /* firehose_buffer_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = firehose_buffer_private.h; sourceTree = "<group>"; };
		6EE89F3D1BFAF5B000EB140D /* dispatch_state_machine.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_state_machine.c; sourceTree = "<group>"; };
		6EF0B26A1BA8C4AE007FA4F6 /* firehose_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = firehose_internal.h; sourceTree = "<group>"; };
		6EF2CAA41C88998A001ABE83 /* lock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = lock.h; sourceTree = "<group>"; };
		6EF2CAAB1C8899D5001ABE83 /* lock.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lock.c; path = shims/lock.c; sourceTree = "<group>"; };
		6EFBDA4A1D61A0D600282887 /* priority.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = priority.h; sourceTree = "<group>"; };
		721F5C5C0F15520500FF03A6 /* semaphore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = semaphore.h; sourceTree = "<group>"; };
		721F5CCE0F15553500FF03A6 /* semaphore.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = semaphore.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
		72406A031AF95DF800DF4E2B /* firehose_reply.defs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.mig; path = firehose_reply.defs; sourceTree = "<group>"; };
		72406A391AF9926000DF4E2B /* firehose_types.defs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.mig; path = firehose_types.defs; sourceTree = "<group>"; };
		72B54F690EB169EB00DBECBA /* dispatch_source_create.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_source_create.3; sourceTree = "<group>"; };
		72CC940C0ECCD5720031B751 /* dispatch_object.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_object.3; sourceTree = "<group>"; };
		72CC940D0ECCD5720031B751 /* dispatch.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch.3; sourceTree = "<group>"; };
		72CC942F0ECCD8750031B751 /* base.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = base.h; sourceTree = "<group>"; };
		72DEAA971AE181D300289540 /* firehose_buffer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = firehose_buffer.c; sourceTree = "<group>"; };
		72DEAA9B1AE1B0BD00289540 /* firehose.defs */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.mig; path = firehose.defs; sourceTree = "<group>"; };
		72DEAA9D1AE1BB7300289540 /* firehose_server_object.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = firehose_server_object.m; sourceTree = "<group>"; };
		72EA3FBA1AF41EA400BBA227 /* firehose_server_private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = firehose_server_private.h; sourceTree = "<group>"; };
		924D8EAA1C116B9F002AC2BC /* dispatch_c99.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_c99.c; sourceTree = "<group>"; };
		92F3FE8F1BEC686300025962 /* dispatch_api.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_api.c; sourceTree = "<group>"; };
		92F3FE921BEC686300025962 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = "<group>"; };
		96032E4A0F5CC8C700241C5F /* time.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = time.c; sourceTree = "<group>"; };
		96032E4C0F5CC8D100241C5F /* time.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = time.h; sourceTree = "<group>"; };
		960F0E7D0F3FB232000D88BF /* dispatch_apply.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_apply.3; sourceTree = "<group>"; };
		960F0E7E0F3FB232000D88BF /* dispatch_once.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_once.3; sourceTree = "<group>"; };
		961B99350F3E83980006BC96 /* benchmark.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = benchmark.h; sourceTree = "<group>"; };
		961B994F0F3E85C30006BC96 /* object.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = object.h; sourceTree = "<group>"; };
		963FDDE50F3FB6BD00BF2D00 /* dispatch_semaphore_create.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_semaphore_create.3; sourceTree = "<group>"; };
		965CD6340F3E806200D4E28D /* benchmark.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = benchmark.c; sourceTree = "<group>"; };
		965ECC200F3EAB71004DDD89 /* object_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = object_internal.h; sourceTree = "<group>"; };
		9661E56A0F3E7DDF00749F3E /* object.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = object.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
		9676A0E00F3E755D00713ADB /* apply.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = apply.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
		96859A3D0EF71BAD003EB3FB /* dispatch_benchmark.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_benchmark.3; sourceTree = "<group>"; };
		96929D820F3EA1020041FF5D /* atomic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = atomic.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		96929D830F3EA1020041FF5D /* shims.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shims.h; sourceTree = "<group>"; };
		96929D950F3EA2170041FF5D /* queue_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = queue_internal.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
		96A8AA860F41E7A400CD570B /* source.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = source.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
		96BC39BC0F3EBAB100C59689 /* queue_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = queue_private.h; sourceTree = "<group>"; };
		96C9553A0F3EAEDD000D2CA4 /* once.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = once.h; sourceTree = "<group>"; };
		96DF70BD0F38FE3C0074BD99 /* once.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = once.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
		B63B793F1E8F004F0060C1E1 /* dispatch_no_blocks.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = dispatch_no_blocks.c; sourceTree = "<group>"; };
		B68330BC1EBCF6080003E71C /* dispatch_wl.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = dispatch_wl.c; sourceTree = "<group>"; };
		B6AC73FD1EB10973009FB2F2 /* perf_thread_request.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = perf_thread_request.c; sourceTree = "<group>"; };
		B6AE9A4A1D7F53B300AC007F /* dispatch_queue_create.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_queue_create.c; sourceTree = "<group>"; };
		B6AE9A561D7F53C100AC007F /* perf_async_bench.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = perf_async_bench.m; sourceTree = "<group>"; };
		B6AE9A581D7F53CB00AC007F /* perf_bench.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = perf_bench.m; sourceTree = "<group>"; };
		C00B0E0A1C5AEBBE000330B3 /* libdispatch_dyld_stub.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libdispatch_dyld_stub.a; sourceTree = BUILT_PRODUCTS_DIR; };
		C00B0E121C5AEBF7000330B3 /* libdispatch-dyld-stub.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "libdispatch-dyld-stub.xcconfig"; sourceTree = "<group>"; };
		C01866BD1C5973210040FC07 /* libdispatch.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libdispatch.a; sourceTree = BUILT_PRODUCTS_DIR; };
		C01866BE1C59735B0040FC07 /* libdispatch-mp-static.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "libdispatch-mp-static.xcconfig"; sourceTree = "<group>"; };
		C01866BF1C5976C90040FC07 /* run-on-install.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "run-on-install.sh"; sourceTree = "<group>"; };
		C901445E1C73A7FE002638FC /* module.modulemap */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = "sourcecode.module-map"; name = module.modulemap; path = darwin/module.modulemap; sourceTree = "<group>"; };
		C90144641C73A845002638FC /* module.modulemap */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = "sourcecode.module-map"; name = module.modulemap; path = darwin/module.modulemap; sourceTree = "<group>"; };
		C913AC0E143BD34800B78976 /* data_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = data_private.h; sourceTree = "<group>"; tabWidth = 8; };
		C927F35F10FD7F1000C5AB8B /* ddt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ddt.xcodeproj; path = tools/ddt/ddt.xcodeproj; sourceTree = "<group>"; };
		C96CE17A1CEB851600F4B8E6 /* dispatch_objc.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = dispatch_objc.m; sourceTree = "<group>"; };
		C9C5F80D143C1771006DC718 /* transform.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = transform.c; sourceTree = "<group>"; };
		D2AAC046055464E500DB518D /* libdispatch.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libdispatch.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
		E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "libdispatch-resolved.xcconfig"; sourceTree = "<group>"; };
		E40041AA125D705F0022B135 /* libdispatch-resolver.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "libdispatch-resolver.xcconfig"; sourceTree = "<group>"; };
		E4128ED513BA9A1700ABB2CB /* hw_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hw_config.h; sourceTree = "<group>"; };
		E420866F16027AE500EEE210 /* data.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = data.m; sourceTree = "<group>"; };
		E421E5F81716ADA10090DC9B /* introspection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = introspection.h; sourceTree = "<group>"; };
		E421E5FB1716B8730090DC9B /* install-dtrace.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "install-dtrace.sh"; sourceTree = "<group>"; };
		E421E5FD1716BEA70090DC9B /* libdispatch.interposable */ = {isa = PBXFileReference; lastKnownFileType = text; path = libdispatch.interposable; sourceTree = "<group>"; };
		E422A0D412A557B5005E5BDB /* trace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = trace.h; sourceTree = "<group>"; };
		E422DA3614D2A7E7003C6EE4 /* libdispatch.aliases */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = libdispatch.aliases; sourceTree = "<group>"; };
		E43570B8126E93380097AB9F /* provider.d */ = {isa = PBXFileReference; explicitFileType = sourcecode.dtrace; fileEncoding = 4; path = provider.d; sourceTree = "<group>"; };
		E43A724F1AF85BBC00BAA921 /* block.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = block.cpp; sourceTree = "<group>"; };
		E43D93F11097917E004F6A62 /* libdispatch.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = libdispatch.xcconfig; sourceTree = "<group>"; };
		E44757D917F4572600B82CA1 /* inline_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = inline_internal.h; sourceTree = "<group>"; };
		E448727914C6215D00BB45C2 /* libdispatch.order */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = libdispatch.order; sourceTree = "<group>"; };
		E44A8E6A1805C3E0009FFDB6 /* voucher.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = voucher.c; sourceTree = "<group>"; };
		E44A8E711805C473009FFDB6 /* voucher_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = voucher_private.h; sourceTree = "<group>"; };
		E44A8E7418066276009FFDB6 /* voucher_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = voucher_internal.h; sourceTree = "<group>"; };
		E44EBE331251654000645D88 /* resolver.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = resolver.h; sourceTree = "<group>"; };
		E44EBE371251656400645D88 /* resolver.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = resolver.c; sourceTree = "<group>"; };
		E44EBE3B1251659900645D88 /* init.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = init.c; sourceTree = "<group>"; };
		E44F9DA816543F79001DCD38 /* introspection_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = introspection_internal.h; sourceTree = "<group>"; };
		E454569214746F1B00106147 /* object_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = object_private.h; sourceTree = "<group>"; };
		E463024F1761603C00E11F4C /* atomic_sfb.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = atomic_sfb.h; sourceTree = "<group>"; };
		E46DBC5714EE10C80001F9F6 /* libdispatch_up.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libdispatch_up.a; sourceTree = BUILT_PRODUCTS_DIR; };
		E46DBC5814EE11BC0001F9F6 /* libdispatch-up-static.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "libdispatch-up-static.xcconfig"; sourceTree = "<group>"; };
		E47D6BB5125F0F800070D91C /* resolved.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = resolved.h; sourceTree = "<group>"; };
		E482F1CD12DBAB590030614D /* postprocess-headers.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "postprocess-headers.sh"; sourceTree = "<group>"; };
		E48AF55916E70FD9004105FF /* io_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = io_private.h; path = private/io_private.h; sourceTree = SOURCE_ROOT; tabWidth = 8; };
		E48EC97B1835BADD00EAC4F1 /* yield.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = yield.h; sourceTree = "<group>"; };
		E49BB6F21E70748100868613 /* libdispatch_alt.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libdispatch_alt.a; sourceTree = BUILT_PRODUCTS_DIR; };
		E49F24DF125D57FA0057C971 /* libdispatch.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libdispatch.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
		E49F251D125D630A0057C971 /* install-manpages.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "install-manpages.sh"; sourceTree = "<group>"; };
		E49F251E125D631D0057C971 /* mig-headers.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "mig-headers.sh"; sourceTree = "<group>"; };
		E4B3C3FD18C50D000039F49F /* voucher_activity_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = voucher_activity_private.h; sourceTree = "<group>"; };
		E4B515D6164B2DA300E003AF /* libdispatch.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libdispatch.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
		E4B515D7164B2DFB00E003AF /* introspection_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = introspection_private.h; sourceTree = "<group>"; };
		E4B515D9164B2E9B00E003AF /* libdispatch-introspection.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "libdispatch-introspection.xcconfig"; sourceTree = "<group>"; };
		E4B515DC164B32E000E003AF /* introspection.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = introspection.c; sourceTree = "<group>"; };
		E4BA743513A88FE10095BDF1 /* dispatch_data_create.3 */ = {isa = PBXFileReference; explicitFileType = text.man; path = dispatch_data_create.3; sourceTree = "<group>"; };
		E4BA743613A88FF30095BDF1 /* dispatch_io_create.3 */ = {isa = PBXFileReference; explicitFileType = text.man; path = dispatch_io_create.3; sourceTree = "<group>"; };
		E4BA743713A88FF30095BDF1 /* dispatch_io_read.3 */ = {isa = PBXFileReference; explicitFileType = text.man; path = dispatch_io_read.3; sourceTree = "<group>"; };
		E4BA743813A8900B0095BDF1 /* dispatch_read.3 */ = {isa = PBXFileReference; explicitFileType = text.man; path = dispatch_read.3; sourceTree = "<group>"; };
		E4BA743913A8911B0095BDF1 /* getprogname.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getprogname.h; sourceTree = "<group>"; };
		E4C1ED6E1263E714000D3C8B /* data_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = data_internal.h; sourceTree = "<group>"; };
		E4D76A9218E325D200B1F98B /* block.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = block.h; sourceTree = "<group>"; };
		E4EB4A2614C35ECE00AA0FA9 /* object.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = object.h; sourceTree = "<group>"; };
		E4EB4A2A14C36F4E00AA0FA9 /* install-headers.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "install-headers.sh"; sourceTree = "<group>"; };
		E4EC11C312514302000DDBD1 /* libdispatch_up.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libdispatch_up.a; sourceTree = BUILT_PRODUCTS_DIR; };
		E4EC122D12514715000DDBD1 /* libdispatch_mp.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libdispatch_mp.a; sourceTree = BUILT_PRODUCTS_DIR; };
		E4ECBAA415253C25002C313C /* mach_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mach_private.h; sourceTree = "<group>"; };
		E4FC3263145F46C9002FBDDB /* object.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = object.m; sourceTree = "<group>"; };
		EA53C60E1BFEA851000A02EA /* bsdtestharness.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = bsdtestharness.c; path = tests/bsdtestharness.c; sourceTree = "<group>"; };
		EA53C60F1BFEA851000A02EA /* bsdtests.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = bsdtests.c; path = tests/bsdtests.c; sourceTree = "<group>"; };
		EA53C6101BFEA851000A02EA /* bsdtests.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = bsdtests.h; path = tests/bsdtests.h; sourceTree = "<group>"; };
		EA53C6111BFEA851000A02EA /* bsdtestsummarize.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = bsdtestsummarize.c; path = tests/bsdtestsummarize.c; sourceTree = "<group>"; };
		EA53C6121BFEA851000A02EA /* cffd.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = cffd.c; path = tests/cffd.c; sourceTree = "<group>"; };
		EA53C6131BFEA851000A02EA /* dispatch_after.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_after.c; path = tests/dispatch_after.c; sourceTree = "<group>"; };
		EA53C6141BFEA851000A02EA /* dispatch_api.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_api.c; path = tests/dispatch_api.c; sourceTree = "<group>"; };
		EA53C6151BFEA851000A02EA /* dispatch_apply.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_apply.c; path = tests/dispatch_apply.c; sourceTree = "<group>"; };
		EA53C6161BFEA851000A02EA /* dispatch_c99.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_c99.c; path = tests/dispatch_c99.c; sourceTree = "<group>"; };
		EA53C6171BFEA851000A02EA /* dispatch_cascade.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_cascade.c; path = tests/dispatch_cascade.c; sourceTree = "<group>"; };
		EA53C6181BFEA851000A02EA /* dispatch_cf_main.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_cf_main.c; path = tests/dispatch_cf_main.c; sourceTree = "<group>"; };
		EA53C6191BFEA851000A02EA /* dispatch_concur.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_concur.c; path = tests/dispatch_concur.c; sourceTree = "<group>"; };
		EA53C61A1BFEA851000A02EA /* dispatch_context_for_key.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_context_for_key.c; path = tests/dispatch_context_for_key.c; sourceTree = "<group>"; };
		EA53C61B1BFEA851000A02EA /* dispatch_data.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_data.c; path = tests/dispatch_data.c; sourceTree = "<group>"; };
		EA53C61C1BFEA851000A02EA /* dispatch_deadname.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_deadname.c; path = tests/dispatch_deadname.c; sourceTree = "<group>"; };
		EA53C61D1BFEA851000A02EA /* dispatch_debug.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_debug.c; path = tests/dispatch_debug.c; sourceTree = "<group>"; };
		EA53C61E1BFEA851000A02EA /* dispatch_drift.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_drift.c; path = tests/dispatch_drift.c; sourceTree = "<group>"; };
		EA53C61F1BFEA851000A02EA /* dispatch_group.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_group.c; path = tests/dispatch_group.c; sourceTree = "<group>"; };
		EA53C6201BFEA851000A02EA /* dispatch_io_net.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_io_net.c; path = tests/dispatch_io_net.c; sourceTree = "<group>"; };
		EA53C6211BFEA851000A02EA /* dispatch_io.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_io.c; path = tests/dispatch_io.c; sourceTree = "<group>"; };
		EA53C6221BFEA851000A02EA /* dispatch_overcommit.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_overcommit.c; path = tests/dispatch_overcommit.c; sourceTree = "<group>"; };
		EA53C6231BFEA851000A02EA /* dispatch_pingpong.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_pingpong.c; path = tests/dispatch_pingpong.c; sourceTree = "<group>"; };
		EA53C6241BFEA851000A02EA /* dispatch_plusplus.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = dispatch_plusplus.cpp; path = tests/dispatch_plusplus.cpp; sourceTree = "<group>"; };
		EA53C6251BFEA851000A02EA /* dispatch_priority.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_priority.c; path = tests/dispatch_priority.c; sourceTree = "<group>"; };
		EA53C6261BFEA851000A02EA /* dispatch_proc.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_proc.c; path = tests/dispatch_proc.c; sourceTree = "<group>"; };
		EA53C6271BFEA851000A02EA /* dispatch_queue_finalizer.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_queue_finalizer.c; path = tests/dispatch_queue_finalizer.c; sourceTree = "<group>"; };
		EA53C6281BFEA851000A02EA /* dispatch_read.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_read.c; path = tests/dispatch_read.c; sourceTree = "<group>"; };
		EA53C6291BFEA851000A02EA /* dispatch_read2.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_read2.c; path = tests/dispatch_read2.c; sourceTree = "<group>"; };
		EA53C62A1BFEA851000A02EA /* dispatch_readsync.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_readsync.c; path = tests/dispatch_readsync.c; sourceTree = "<group>"; };
		EA53C62B1BFEA851000A02EA /* dispatch_select.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_select.c; path = tests/dispatch_select.c; sourceTree = "<group>"; };
		EA53C62C1BFEA851000A02EA /* dispatch_sema.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_sema.c; path = tests/dispatch_sema.c; sourceTree = "<group>"; };
		EA53C62D1BFEA851000A02EA /* dispatch_starfish.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_starfish.c; path = tests/dispatch_starfish.c; sourceTree = "<group>"; };
		EA53C62E1BFEA851000A02EA /* dispatch_suspend_timer.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_suspend_timer.c; path = tests/dispatch_suspend_timer.c; sourceTree = "<group>"; };
		EA53C62F1BFEA851000A02EA /* dispatch_sync_on_main.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_sync_on_main.c; path = tests/dispatch_sync_on_main.c; sourceTree = "<group>"; };
		EA53C6301BFEA851000A02EA /* dispatch_test.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_test.c; path = tests/dispatch_test.c; sourceTree = "<group>"; };
		EA53C6311BFEA851000A02EA /* dispatch_test.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = dispatch_test.h; path = tests/dispatch_test.h; sourceTree = "<group>"; };
		EA53C6321BFEA851000A02EA /* dispatch_timer_bit31.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_timer_bit31.c; path = tests/dispatch_timer_bit31.c; sourceTree = "<group>"; };
		EA53C6331BFEA851000A02EA /* dispatch_timer_bit63.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_timer_bit63.c; path = tests/dispatch_timer_bit63.c; sourceTree = "<group>"; };
		EA53C6341BFEA851000A02EA /* dispatch_timer_set_time.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_timer_set_time.c; path = tests/dispatch_timer_set_time.c; sourceTree = "<group>"; };
		EA53C6351BFEA851000A02EA /* dispatch_timer_short.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_timer_short.c; path = tests/dispatch_timer_short.c; sourceTree = "<group>"; };
		EA53C6361BFEA851000A02EA /* dispatch_timer_timeout.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_timer_timeout.c; path = tests/dispatch_timer_timeout.c; sourceTree = "<group>"; };
		EA53C6371BFEA851000A02EA /* dispatch_timer.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_timer.c; path = tests/dispatch_timer.c; sourceTree = "<group>"; };
		EA53C6381BFEA851000A02EA /* dispatch_transform.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_transform.c; path = tests/dispatch_transform.c; sourceTree = "<group>"; };
		EA53C6391BFEA851000A02EA /* dispatch_vm.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_vm.c; path = tests/dispatch_vm.c; sourceTree = "<group>"; };
		EA53C63A1BFEA851000A02EA /* dispatch_vnode.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = dispatch_vnode.c; path = tests/dispatch_vnode.c; sourceTree = "<group>"; };
		EA53C63B1BFEA851000A02EA /* func.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = func.c; path = tests/func.c; sourceTree = "<group>"; };
		FC0B34780FA2851C0080FFA0 /* source_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = source_internal.h; sourceTree = "<group>"; };
		FC1832A2109923C7003403D5 /* perfmon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = perfmon.h; sourceTree = "<group>"; };
		FC1832A3109923C7003403D5 /* time.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = time.h; sourceTree = "<group>"; };
		FC1832A4109923C7003403D5 /* tsd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tsd.h; sourceTree = "<group>"; };
		FC36279C0E933ED80054F1A3 /* dispatch_queue_create.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_queue_create.3; sourceTree = "<group>"; };
		FC5C9C1D0EADABE3006E462D /* group.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = group.h; sourceTree = "<group>"; };
		FC678DE80F97E0C300AB5993 /* dispatch_after.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_after.3; sourceTree = "<group>"; };
		FC678DE90F97E0C300AB5993 /* dispatch_api.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_api.3; sourceTree = "<group>"; };
		FC678DEA0F97E0C300AB5993 /* dispatch_async.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_async.3; sourceTree = "<group>"; };
		FC678DEB0F97E0C300AB5993 /* dispatch_group_create.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_group_create.3; sourceTree = "<group>"; };
		FC678DEC0F97E0C300AB5993 /* dispatch_time.3 */ = {isa = PBXFileReference; explicitFileType = text.man; fileEncoding = 4; path = dispatch_time.3; sourceTree = "<group>"; };
		FC7BED8A0E8361E600161930 /* queue.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; lineEnding = 0; path = queue.c; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.c; };
		FC7BED8B0E8361E600161930 /* queue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = queue.h; sourceTree = "<group>"; };
		FC7BED8D0E8361E600161930 /* source.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = source.h; sourceTree = "<group>"; };
		FC7BED8F0E8361E600161930 /* internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = internal.h; sourceTree = "<group>"; };
		FC7BED930E8361E600161930 /* private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = private.h; sourceTree = "<group>"; };
		FC7BED950E8361E600161930 /* protocol.defs */ = {isa = PBXFileReference; explicitFileType = sourcecode.mig; fileEncoding = 4; path = protocol.defs; sourceTree = "<group>"; };
		FC7BED960E8361E600161930 /* dispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dispatch.h; sourceTree = "<group>"; };
		FC9C70E7105EC9620074F9CA /* config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = "<group>"; };
		FCEF047F0F5661960067401F /* source_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = source_private.h; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		6E040C601C499B1B00411A2E /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E49F24D5125D57FA0057C971 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		08FB7794FE84155DC02AAC07 /* libdispatch */ = {
			isa = PBXGroup;
			children = (
				E44DB71E11D2FF080074F2AD /* Build Support */,
				6E9B6AE21BB39793009E324D /* OS Public Headers */,
				E4EB4A2914C35F1800AA0FA9 /* OS Private Headers */,
				FC7BEDAA0E83625200161930 /* Dispatch Public Headers */,
				FC7BEDAF0E83626100161930 /* Dispatch Private Headers */,
				FC7BEDB60E8363DC00161930 /* Dispatch Project Headers */,
				08FB7795FE84155DC02AAC07 /* Dispatch Source */,
				92F3FEC91BEC687200025962 /* Darwin Tests */,
				C6A0FF2B0290797F04C91782 /* Documentation */,
				1AB674ADFE9D54B511CA2CBB /* Products */,
				EA53C60D1BFE9605000A02EA /* Tests */,
				C927F35F10FD7F1000C5AB8B /* ddt.xcodeproj */,
				4552536E19B1384900B88766 /* libdispatchtest.xcodeproj */,
			);
			indentWidth = 4;
			name = libdispatch;
			sourceTree = "<group>";
			tabWidth = 4;
			usesTabs = 1;
		};
		08FB7795FE84155DC02AAC07 /* Dispatch Source */ = {
			isa = PBXGroup;
			children = (
				2BBF5A62154B64F5002B20F9 /* allocator.c */,
				9676A0E00F3E755D00713ADB /* apply.c */,
				965CD6340F3E806200D4E28D /* benchmark.c */,
				E43A724F1AF85BBC00BAA921 /* block.cpp */,
				5AAB45BF10D30B79004407EA /* data.c */,
				E420866F16027AE500EEE210 /* data.m */,
				E44EBE3B1251659900645D88 /* init.c */,
				E4B515DC164B32E000E003AF /* introspection.c */,
				5A27262510F26F1900751FBC /* io.c */,
				6EF2CAAB1C8899D5001ABE83 /* lock.c */,
				6E4BACBC1D48A41500B562AE /* mach.c */,
				9661E56A0F3E7DDF00749F3E /* object.c */,
				E4FC3263145F46C9002FBDDB /* object.m */,
				96DF70BD0F38FE3C0074BD99 /* once.c */,
				FC7BED8A0E8361E600161930 /* queue.c */,
				721F5CCE0F15553500FF03A6 /* semaphore.c */,
				96A8AA860F41E7A400CD570B /* source.c */,
				96032E4A0F5CC8C700241C5F /* time.c */,
				C9C5F80D143C1771006DC718 /* transform.c */,
				6E9955CE1C3B218E0071D40C /* venture.c */,
				E44A8E6A1805C3E0009FFDB6 /* voucher.c */,
				6EA283D01CAB93270041B2E0 /* libdispatch.codes */,
				FC7BED950E8361E600161930 /* protocol.defs */,
				E43570B8126E93380097AB9F /* provider.d */,
				6E5ACCAF1D3BF2A0007DA2B4 /* event */,
				6EF0B2641BA8C3A0007FA4F6 /* firehose */,
			);
			name = "Dispatch Source";
			path = src;
			sourceTree = "<group>";
		};
		1AB674ADFE9D54B511CA2CBB /* Products */ = {
			isa = PBXGroup;
			children = (
				D2AAC046055464E500DB518D /* libdispatch.dylib */,
				E4B515D6164B2DA300E003AF /* libdispatch.dylib */,
				E49F24DF125D57FA0057C971 /* libdispatch.dylib */,
				E4EC122D12514715000DDBD1 /* libdispatch_mp.a */,
				E4EC11C312514302000DDBD1 /* libdispatch_up.a */,
				E49BB6F21E70748100868613 /* libdispatch_alt.a */,
				E46DBC5714EE10C80001F9F6 /* libdispatch_up.a */,
				C01866BD1C5973210040FC07 /* libdispatch.a */,
				C00B0E0A1C5AEBBE000330B3 /* libdispatch_dyld_stub.a */,
				6E040C631C499B1B00411A2E /* libfirehose_kernel.a */,
				6EB4E4091BA8BCAD00D7B9D2 /* libfirehose_server.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		4552536F19B1384900B88766 /* Products */ = {
			isa = PBXGroup;
			children = (
				4552540319B1384900B88766 /* bench */,
				4552540519B1384900B88766 /* jsgc_bench */,
				4552540719B1384900B88766 /* async_bench */,
				4552540919B1384900B88766 /* apply_bench */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		6E5ACCAE1D3BF27F007DA2B4 /* event */ = {
			isa = PBXGroup;
			children = (
				6EA793881D458A5800929B1B /* event_config.h */,
				6E5ACCB91D3C4D0B007DA2B4 /* event_internal.h */,
			);
			path = event;
			sourceTree = "<group>";
		};
		6E5ACCAF1D3BF2A0007DA2B4 /* event */ = {
			isa = PBXGroup;
			children = (
				6E5ACCBD1D3C6719007DA2B4 /* event.c */,
				6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */,
				6EA7937D1D456D1300929B1B /* event_epoll.c */,
			);
			path = event;
			sourceTree = "<group>";
		};
		6E9B6AE21BB39793009E324D /* OS Public Headers */ = {
			isa = PBXGroup;
			children = (
				E4EB4A2614C35ECE00AA0FA9 /* object.h */,
			);
			name = "OS Public Headers";
			path = os;
			sourceTree = "<group>";
		};
		6EF0B2641BA8C3A0007FA4F6 /* firehose */ = {
			isa = PBXGroup;
			children = (
				72406A391AF9926000DF4E2B /* firehose_types.defs */,
				72DEAA9B1AE1B0BD00289540 /* firehose.defs */,
				72406A031AF95DF800DF4E2B /* firehose_reply.defs */,
				72DEAA971AE181D300289540 /* firehose_buffer.c */,
				6E21F2E51BBB23F00000C6A5 /* firehose_server.c */,
				72DEAA9D1AE1BB7300289540 /* firehose_server_object.m */,
			);
			path = firehose;
			sourceTree = "<group>";
		};
		6EF0B2661BA8C43D007FA4F6 /* firehose */ = {
			isa = PBXGroup;
			children = (
				6EF0B26A1BA8C4AE007FA4F6 /* firehose_internal.h */,
				6EB60D291BBB19640092FA94 /* firehose_inline_internal.h */,
				6E9B6B201BB4CC73009E324D /* firehose_buffer_internal.h */,
				6E21F2E41BBB23F00000C6A5 /* firehose_server_internal.h */,
			);
			path = firehose;
			sourceTree = "<group>";
		};
		92F3FEC91BEC687200025962 /* Darwin Tests */ = {
			isa = PBXGroup;
			children = (
				6E8E4EC51C1A5D450004F5CC /* cf_file_descriptor.c */,
				6E8E4EC31C1A57760004F5CC /* dispatch_after.c */,
				92F3FE8F1BEC686300025962 /* dispatch_api.c */,
				6E67D8D31C16C20B00FC98AC /* dispatch_apply.c */,
				6E9926711D01295F000CB89A /* dispatch_block.c */,
				924D8EAA1C116B9F002AC2BC /* dispatch_c99.c */,
				6E326AB11C224830002A6505 /* dispatch_cascade.c */,
				6E67D8D91C16C94B00FC98AC /* dispatch_cf_main.c */,
				6E326ADE1C23451A002A6505 /* dispatch_concur.c */,
				6E326AEF1C239303002A6505 /* dispatch_context_for_key.c */,
				6E8E4EC71C1A61680004F5CC /* dispatch_data.m */,
				6EC5ABE31D4436E4004F8674 /* dispatch_deadname.c */,
				6E67D90D1C16CCEB00FC98AC /* dispatch_debug.c */,
				6E8E4ECB1C1A72650004F5CC /* dispatch_drift.c */,
				6E67D90F1C16CF0B00FC98AC /* dispatch_group.c */,
				6E326ABD1C22A577002A6505 /* dispatch_io_net.c */,
				6E326ABE1C22A577002A6505 /* dispatch_io.c */,
				6EDB888D1CB73BDC006776D6 /* dispatch_kevent_cancel_races.c */,
				6EC670C61E37E201004F10D6 /* dispatch_network_event_thread.c */,
				B63B793F1E8F004F0060C1E1 /* dispatch_no_blocks.c */,
				C96CE17A1CEB851600F4B8E6 /* dispatch_objc.m */,
				6E67D9131C17676D00FC98AC /* dispatch_overcommit.c */,
				6E67D9151C1768B300FC98AC /* dispatch_pingpong.c */,
				6E326B441C239B61002A6505 /* dispatch_priority.c */,
				6E326AB51C225477002A6505 /* dispatch_proc.c */,
				6E326AB31C224870002A6505 /* dispatch_qos.c */,
				B6AE9A4A1D7F53B300AC007F /* dispatch_queue_create.c */,
				6E67D9111C17669C00FC98AC /* dispatch_queue_finalizer.c */,
				6E1612691C79606E006FC9A9 /* dispatch_queue_label.c */,
				6E326AB91C229866002A6505 /* dispatch_read.c */,
				6E326ABB1C229895002A6505 /* dispatch_read2.c */,
				6E326ADC1C234396002A6505 /* dispatch_readsync.c */,
				6E8E4E6D1C1A35EE0004F5CC /* dispatch_select.c */,
				6E8E4E9B1C1A4EF10004F5CC /* dispatch_sema.c */,
				6EA2CB841C005DEF0076794A /* dispatch_source.c */,
				6E326AE01C234780002A6505 /* dispatch_starfish.c */,
				6EE89F3D1BFAF5B000EB140D /* dispatch_state_machine.c */,
				6E326B121C239431002A6505 /* dispatch_suspend_timer.c */,
				6E326AD81C233209002A6505 /* dispatch_sync_gc.m */,
				6E326AD91C233209002A6505 /* dispatch_sync_on_main.c */,
				6E326B131C239431002A6505 /* dispatch_timer_bit.c */,
				6E326B151C239431002A6505 /* dispatch_timer_set_time.c */,
				6E326B161C239431002A6505 /* dispatch_timer_short.c */,
				6E326B171C239431002A6505 /* dispatch_timer_timeout.c */,
				6E326AE61C2392E8002A6505 /* dispatch_timer.c */,
				6E326A8F1C2245C4002A6505 /* dispatch_transform.c */,
				6E62B0531C55806200D2C7C0 /* dispatch_trysync.c */,
				6E8E4EC91C1A670B0004F5CC /* dispatch_vm.c */,
				6E326AB71C225FCA002A6505 /* dispatch_vnode.c */,
				B68330BC1EBCF6080003E71C /* dispatch_wl.c */,
				6E67D9171C17BA7200FC98AC /* nsoperation.m */,
				6E4FC9D11C84123600520351 /* os_venture_basic.c */,
				B6AE9A561D7F53C100AC007F /* perf_async_bench.m */,
				B6AE9A581D7F53CB00AC007F /* perf_bench.m */,
				6EC670C71E37E201004F10D6 /* perf_mach_async.c */,
				6EC670C81E37E201004F10D6 /* perf_pipepingpong.c */,
				B6AC73FD1EB10973009FB2F2 /* perf_thread_request.c */,
				92F3FE921BEC686300025962 /* Makefile */,
				6E8E4E6E1C1A35EE0004F5CC /* test_lib.c */,
				6E8E4E6F1C1A35EE0004F5CC /* test_lib.h */,
			);
			name = "Darwin Tests";
			path = tests;
			sourceTree = "<group>";
		};
		C6A0FF2B0290797F04C91782 /* Documentation */ = {
			isa = PBXGroup;
			children = (
				72CC940D0ECCD5720031B751 /* dispatch.3 */,
				FC678DE80F97E0C300AB5993 /* dispatch_after.3 */,
				FC678DE90F97E0C300AB5993 /* dispatch_api.3 */,
				960F0E7D0F3FB232000D88BF /* dispatch_apply.3 */,
				FC678DEA0F97E0C300AB5993 /* dispatch_async.3 */,
				96859A3D0EF71BAD003EB3FB /* dispatch_benchmark.3 */,
				E4BA743513A88FE10095BDF1 /* dispatch_data_create.3 */,
				FC678DEB0F97E0C300AB5993 /* dispatch_group_create.3 */,
				E4BA743613A88FF30095BDF1 /* dispatch_io_create.3 */,
				E4BA743713A88FF30095BDF1 /* dispatch_io_read.3 */,
				72CC940C0ECCD5720031B751 /* dispatch_object.3 */,
				960F0E7E0F3FB232000D88BF /* dispatch_once.3 */,
				FC36279C0E933ED80054F1A3 /* dispatch_queue_create.3 */,
				E4BA743813A8900B0095BDF1 /* dispatch_read.3 */,
				963FDDE50F3FB6BD00BF2D00 /* dispatch_semaphore_create.3 */,
				72B54F690EB169EB00DBECBA /* dispatch_source_create.3 */,
				FC678DEC0F97E0C300AB5993 /* dispatch_time.3 */,
			);
			name = Documentation;
			path = man;
			sourceTree = "<group>";
		};
		C927F36010FD7F1000C5AB8B /* Products */ = {
			isa = PBXGroup;
			children = (
				C927F36710FD7F1000C5AB8B /* ddt */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		E40041E4125E71150022B135 /* xcodeconfig */ = {
			isa = PBXGroup;
			children = (
				E43D93F11097917E004F6A62 /* libdispatch.xcconfig */,
				E40041AA125D705F0022B135 /* libdispatch-resolver.xcconfig */,
				E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */,
				E46DBC5814EE11BC0001F9F6 /* libdispatch-up-static.xcconfig */,
				C01866BE1C59735B0040FC07 /* libdispatch-mp-static.xcconfig */,
				C00B0E121C5AEBF7000330B3 /* libdispatch-dyld-stub.xcconfig */,
				E4B515D9164B2E9B00E003AF /* libdispatch-introspection.xcconfig */,
				6EB4E4421BA8BD7800D7B9D2 /* libfirehose.xcconfig */,
				6E040C721C499C3600411A2E /* libfirehose_kernel.xcconfig */,
				E422DA3614D2A7E7003C6EE4 /* libdispatch.aliases */,
				E448727914C6215D00BB45C2 /* libdispatch.order */,
				E421E5FD1716BEA70090DC9B /* libdispatch.interposable */,
			);
			path = xcodeconfig;
			sourceTree = "<group>";
		};
		E44DB71E11D2FF080074F2AD /* Build Support */ = {
			isa = PBXGroup;
			children = (
				E4BA743413A88D390095BDF1 /* config */,
				E40041E4125E71150022B135 /* xcodeconfig */,
				E49F259C125D664F0057C971 /* xcodescripts */,
				E47D6BCA125F10F70070D91C /* resolver */,
			);
			name = "Build Support";
			sourceTree = "<group>";
		};
		E47D6BCA125F10F70070D91C /* resolver */ = {
			isa = PBXGroup;
			children = (
				E47D6BB5125F0F800070D91C /* resolved.h */,
				E44EBE331251654000645D88 /* resolver.h */,
				E44EBE371251656400645D88 /* resolver.c */,
			);
			path = resolver;
			sourceTree = "<group>";
		};
		E49F259C125D664F0057C971 /* xcodescripts */ = {
			isa = PBXGroup;
			children = (
				E49F251D125D630A0057C971 /* install-manpages.sh */,
				E4EB4A2A14C36F4E00AA0FA9 /* install-headers.sh */,
				E421E5FB1716B8730090DC9B /* install-dtrace.sh */,
				E49F251E125D631D0057C971 /* mig-headers.sh */,
				E482F1CD12DBAB590030614D /* postprocess-headers.sh */,
				C01866BF1C5976C90040FC07 /* run-on-install.sh */,
			);
			path = xcodescripts;
			sourceTree = "<group>";
		};
		E4BA743413A88D390095BDF1 /* config */ = {
			isa = PBXGroup;
			children = (
				FC9C70E7105EC9620074F9CA /* config.h */,
			);
			path = config;
			sourceTree = "<group>";
		};
		E4EB4A2914C35F1800AA0FA9 /* OS Private Headers */ = {
			isa = PBXGroup;
			children = (
				E454569214746F1B00106147 /* object_private.h */,
				6EDF10831BBB487E007F14BF /* firehose_buffer_private.h */,
				72EA3FBA1AF41EA400BBA227 /* firehose_server_private.h */,
				6E9955571C3AF7710071D40C /* venture_private.h */,
				E44A8E711805C473009FFDB6 /* voucher_private.h */,
				E4B3C3FD18C50D000039F49F /* voucher_activity_private.h */,
			);
			name = "OS Private Headers";
			path = os;
			sourceTree = "<group>";
		};
		EA53C60D1BFE9605000A02EA /* Tests */ = {
			isa = PBXGroup;
			children = (
				EA53C60E1BFEA851000A02EA /* bsdtestharness.c */,
				EA53C60F1BFEA851000A02EA /* bsdtests.c */,
				EA53C6101BFEA851000A02EA /* bsdtests.h */,
				EA53C6111BFEA851000A02EA /* bsdtestsummarize.c */,
				EA53C6121BFEA851000A02EA /* cffd.c */,
				EA53C6131BFEA851000A02EA /* dispatch_after.c */,
				EA53C6141BFEA851000A02EA /* dispatch_api.c */,
				EA53C6151BFEA851000A02EA /* dispatch_apply.c */,
				EA53C6161BFEA851000A02EA /* dispatch_c99.c */,
				EA53C6171BFEA851000A02EA /* dispatch_cascade.c */,
				EA53C6181BFEA851000A02EA /* dispatch_cf_main.c */,
				EA53C6191BFEA851000A02EA /* dispatch_concur.c */,
				EA53C61A1BFEA851000A02EA /* dispatch_context_for_key.c */,
				EA53C61B1BFEA851000A02EA /* dispatch_data.c */,
				EA53C61C1BFEA851000A02EA /* dispatch_deadname.c */,
				EA53C61D1BFEA851000A02EA /* dispatch_debug.c */,
				EA53C61E1BFEA851000A02EA /* dispatch_drift.c */,
				EA53C61F1BFEA851000A02EA /* dispatch_group.c */,
				EA53C6201BFEA851000A02EA /* dispatch_io_net.c */,
				EA53C6211BFEA851000A02EA /* dispatch_io.c */,
				EA53C6221BFEA851000A02EA /* dispatch_overcommit.c */,
				EA53C6231BFEA851000A02EA /* dispatch_pingpong.c */,
				EA53C6241BFEA851000A02EA /* dispatch_plusplus.cpp */,
				EA53C6251BFEA851000A02EA /* dispatch_priority.c */,
				EA53C6261BFEA851000A02EA /* dispatch_proc.c */,
				EA53C6271BFEA851000A02EA /* dispatch_queue_finalizer.c */,
				EA53C6281BFEA851000A02EA /* dispatch_read.c */,
				EA53C6291BFEA851000A02EA /* dispatch_read2.c */,
				EA53C62A1BFEA851000A02EA /* dispatch_readsync.c */,
				EA53C62B1BFEA851000A02EA /* dispatch_select.c */,
				EA53C62C1BFEA851000A02EA /* dispatch_sema.c */,
				EA53C62D1BFEA851000A02EA /* dispatch_starfish.c */,
				EA53C62E1BFEA851000A02EA /* dispatch_suspend_timer.c */,
				EA53C62F1BFEA851000A02EA /* dispatch_sync_on_main.c */,
				EA53C6301BFEA851000A02EA /* dispatch_test.c */,
				EA53C6311BFEA851000A02EA /* dispatch_test.h */,
				EA53C6321BFEA851000A02EA /* dispatch_timer_bit31.c */,
				EA53C6331BFEA851000A02EA /* dispatch_timer_bit63.c */,
				EA53C6341BFEA851000A02EA /* dispatch_timer_set_time.c */,
				EA53C6351BFEA851000A02EA /* dispatch_timer_short.c */,
				EA53C6361BFEA851000A02EA /* dispatch_timer_timeout.c */,
				EA53C6371BFEA851000A02EA /* dispatch_timer.c */,
				EA53C6381BFEA851000A02EA /* dispatch_transform.c */,
				EA53C6391BFEA851000A02EA /* dispatch_vm.c */,
				EA53C63A1BFEA851000A02EA /* dispatch_vnode.c */,
				EA53C63B1BFEA851000A02EA /* func.c */,
			);
			name = Tests;
			sourceTree = "<group>";
		};
		FC1832A0109923B3003403D5 /* shims */ = {
			isa = PBXGroup;
			children = (
				96929D820F3EA1020041FF5D /* atomic.h */,
				E463024F1761603C00E11F4C /* atomic_sfb.h */,
				E4BA743913A8911B0095BDF1 /* getprogname.h */,
				E4128ED513BA9A1700ABB2CB /* hw_config.h */,
				6EF2CAA41C88998A001ABE83 /* lock.h */,
				FC1832A2109923C7003403D5 /* perfmon.h */,
				6EFBDA4A1D61A0D600282887 /* priority.h */,
				FC1832A3109923C7003403D5 /* time.h */,
				FC1832A4109923C7003403D5 /* tsd.h */,
				E48EC97B1835BADD00EAC4F1 /* yield.h */,
			);
			path = shims;
			sourceTree = "<group>";
		};
		FC7BEDAA0E83625200161930 /* Dispatch Public Headers */ = {
			isa = PBXGroup;
			children = (
				72CC942F0ECCD8750031B751 /* base.h */,
				E4D76A9218E325D200B1F98B /* block.h */,
				5AAB45C510D30D0C004407EA /* data.h */,
				FC7BED960E8361E600161930 /* dispatch.h */,
				FC5C9C1D0EADABE3006E462D /* group.h */,
				5AAB45C310D30CC7004407EA /* io.h */,
				C901445E1C73A7FE002638FC /* module.modulemap */,
				961B994F0F3E85C30006BC96 /* object.h */,
				96C9553A0F3EAEDD000D2CA4 /* once.h */,
				FC7BED8B0E8361E600161930 /* queue.h */,
				721F5C5C0F15520500FF03A6 /* semaphore.h */,
				FC7BED8D0E8361E600161930 /* source.h */,
				96032E4C0F5CC8D100241C5F /* time.h */,
				E421E5F81716ADA10090DC9B /* introspection.h */,
			);
			name = "Dispatch Public Headers";
			path = dispatch;
			sourceTree = "<group>";
		};
		FC7BEDAF0E83626100161930 /* Dispatch Private Headers */ = {
			isa = PBXGroup;
			children = (
				FC7BED930E8361E600161930 /* private.h */,
				C913AC0E143BD34800B78976 /* data_private.h */,
				E48AF55916E70FD9004105FF /* io_private.h */,
				96BC39BC0F3EBAB100C59689 /* queue_private.h */,
				FCEF047F0F5661960067401F /* source_private.h */,
				E4ECBAA415253C25002C313C /* mach_private.h */,
				C90144641C73A845002638FC /* module.modulemap */,
				961B99350F3E83980006BC96 /* benchmark.h */,
				E4B515D7164B2DFB00E003AF /* introspection_private.h */,
				2BE17C6318EA305E002CA4E8 /* layout_private.h */,
			);
			name = "Dispatch Private Headers";
			path = private;
			sourceTree = "<group>";
		};
		FC7BEDB60E8363DC00161930 /* Dispatch Project Headers */ = {
			isa = PBXGroup;
			children = (
				2BBF5A5F154B64D8002B20F9 /* allocator_internal.h */,
				FC7BED8F0E8361E600161930 /* internal.h */,
				E44757D917F4572600B82CA1 /* inline_internal.h */,
				E4C1ED6E1263E714000D3C8B /* data_internal.h */,
				5A0095A110F274B0000E2A31 /* io_internal.h */,
				6E4BACC91D48A89500B562AE /* mach_internal.h */,
				965ECC200F3EAB71004DDD89 /* object_internal.h */,
				96929D950F3EA2170041FF5D /* queue_internal.h */,
				5A5D13AB0F6B280500197CC3 /* semaphore_internal.h */,
				FC0B34780FA2851C0080FFA0 /* source_internal.h */,
				6E9956061C3B21AA0071D40C /* venture_internal.h */,
				E44A8E7418066276009FFDB6 /* voucher_internal.h */,
				E422A0D412A557B5005E5BDB /* trace.h */,
				E44F9DA816543F79001DCD38 /* introspection_internal.h */,
				96929D830F3EA1020041FF5D /* shims.h */,
				6E5ACCAE1D3BF27F007DA2B4 /* event */,
				6EF0B2661BA8C43D007FA4F6 /* firehose */,
				FC1832A0109923B3003403D5 /* shims */,
			);
			name = "Dispatch Project Headers";
			path = src;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		6E040C611C499B1B00411A2E /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				6E040C751C499CE600411A2E /* firehose_buffer_private.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		6EB4E4071BA8BCAD00D7B9D2 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				6EB60D2C1BBB197B0092FA94 /* firehose_inline_internal.h in Headers */,
				6EF0B2711BA8C540007FA4F6 /* firehose_internal.h in Headers */,
				6E9B6B5F1BB4F3C8009E324D /* firehose_buffer_internal.h in Headers */,
				6E21F2E81BBB23FA0000C6A5 /* firehose_server_internal.h in Headers */,
				6EF0B26D1BA8C527007FA4F6 /* firehose_server_private.h in Headers */,
				6EDF10B81BBB488A007F14BF /* firehose_buffer_private.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D2AAC043055464E500DB518D /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				FC7BEDA50E8361E600161930 /* dispatch.h in Headers */,
				72CC94300ECCD8750031B751 /* base.h in Headers */,
				961B99500F3E85C30006BC96 /* object.h in Headers */,
				E44757DA17F4572600B82CA1 /* inline_internal.h in Headers */,
				FC7BED9A0E8361E600161930 /* queue.h in Headers */,
				FC7BED9C0E8361E600161930 /* source.h in Headers */,
				6E9955581C3AF7710071D40C /* venture_private.h in Headers */,
				E4B3C3FE18C50D000039F49F /* voucher_activity_private.h in Headers */,
				721F5C5D0F15520500FF03A6 /* semaphore.h in Headers */,
				FC5C9C1E0EADABE3006E462D /* group.h in Headers */,
				6EFBDA4B1D61A0D600282887 /* priority.h in Headers */,
				96C9553B0F3EAEDD000D2CA4 /* once.h in Headers */,
				5AAB45C410D30CC7004407EA /* io.h in Headers */,
				E44A8E7518066276009FFDB6 /* voucher_internal.h in Headers */,
				C90144651C73A8A3002638FC /* module.modulemap in Headers */,
				E4630253176162D400E11F4C /* atomic_sfb.h in Headers */,
				5AAB45C610D30D0C004407EA /* data.h in Headers */,
				6E393F981BD60F8D005A551E /* firehose_internal.h in Headers */,
				96032E4D0F5CC8D100241C5F /* time.h in Headers */,
				FC7BEDA20E8361E600161930 /* private.h in Headers */,
				E4D76A9318E325D200B1F98B /* block.h in Headers */,
				C913AC0F143BD34800B78976 /* data_private.h in Headers */,
				96BC39BD0F3EBAB100C59689 /* queue_private.h in Headers */,
				C90144661C73A9F6002638FC /* module.modulemap in Headers */,
				FCEF04800F5661960067401F /* source_private.h in Headers */,
				961B99360F3E83980006BC96 /* benchmark.h in Headers */,
				FC7BED9E0E8361E600161930 /* internal.h in Headers */,
				965ECC210F3EAB71004DDD89 /* object_internal.h in Headers */,
				96929D960F3EA2170041FF5D /* queue_internal.h in Headers */,
				FC0B34790FA2851C0080FFA0 /* source_internal.h in Headers */,
				5A5D13AC0F6B280500197CC3 /* semaphore_internal.h in Headers */,
				E4C1ED6F1263E714000D3C8B /* data_internal.h in Headers */,
				E44A8E721805C473009FFDB6 /* voucher_private.h in Headers */,
				5A0095A210F274B0000E2A31 /* io_internal.h in Headers */,
				FC1832A8109923C7003403D5 /* tsd.h in Headers */,
				6EA793891D458A5800929B1B /* event_config.h in Headers */,
				96929D840F3EA1020041FF5D /* atomic.h in Headers */,
				96929D850F3EA1020041FF5D /* shims.h in Headers */,
				FC1832A7109923C7003403D5 /* time.h in Headers */,
				6E4BACCA1D48A89500B562AE /* mach_internal.h in Headers */,
				6ED64B511BBD8A2100C35F4D /* firehose_buffer_internal.h in Headers */,
				E48EC97C1835BADD00EAC4F1 /* yield.h in Headers */,
				2BE17C6418EA305E002CA4E8 /* layout_private.h in Headers */,
				FC1832A6109923C7003403D5 /* perfmon.h in Headers */,
				FC9C70E8105EC9620074F9CA /* config.h in Headers */,
				6E9956071C3B21AA0071D40C /* venture_internal.h in Headers */,
				6EF2CAA51C88998A001ABE83 /* lock.h in Headers */,
				E422A0D512A557B5005E5BDB /* trace.h in Headers */,
				E4BA743B13A8911B0095BDF1 /* getprogname.h in Headers */,
				6E5ACCBA1D3C4D0B007DA2B4 /* event_internal.h in Headers */,
				6ED64B571BBD8A3B00C35F4D /* firehose_inline_internal.h in Headers */,
				E4128ED613BA9A1700ABB2CB /* hw_config.h in Headers */,
				E454569314746F1B00106147 /* object_private.h in Headers */,
				E4EB4A2714C35ECE00AA0FA9 /* object.h in Headers */,
				E48AF55A16E70FD9004105FF /* io_private.h in Headers */,
				E4ECBAA515253C25002C313C /* mach_private.h in Headers */,
				2BBF5A60154B64D8002B20F9 /* allocator_internal.h in Headers */,
				E44F9DAC1654400D001DCD38 /* introspection_internal.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E49F24AA125D57FA0057C971 /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E49F24AB125D57FA0057C971 /* dispatch.h in Headers */,
				E49F24AC125D57FA0057C971 /* base.h in Headers */,
				6E5ACCBB1D3C4D0E007DA2B4 /* event_internal.h in Headers */,
				E49F24AD125D57FA0057C971 /* object.h in Headers */,
				E44757DC17F4573600B82CA1 /* inline_internal.h in Headers */,
				E49F24AE125D57FA0057C971 /* queue.h in Headers */,
				E49F24AF125D57FA0057C971 /* source.h in Headers */,
				6E99558A1C3AF7900071D40C /* venture_private.h in Headers */,
				E4B3C3FF18C50D0E0039F49F /* voucher_activity_private.h in Headers */,
				E49F24B0125D57FA0057C971 /* semaphore.h in Headers */,
				E49F24B1125D57FA0057C971 /* group.h in Headers */,
				E49F24B2125D57FA0057C971 /* once.h in Headers */,
				E49F24B3125D57FA0057C971 /* io.h in Headers */,
				E44A8E7618066276009FFDB6 /* voucher_internal.h in Headers */,
				E4630252176162D300E11F4C /* atomic_sfb.h in Headers */,
				E49F24B4125D57FA0057C971 /* data.h in Headers */,
				E49F24B5125D57FA0057C971 /* time.h in Headers */,
				E49F24B6125D57FA0057C971 /* private.h in Headers */,
				E4D76A9418E325D200B1F98B /* block.h in Headers */,
				E49F24B7125D57FA0057C971 /* queue_private.h in Headers */,
				E49F24B8125D57FA0057C971 /* source_private.h in Headers */,
				E49F24B9125D57FA0057C971 /* benchmark.h in Headers */,
				E49F24BA125D57FA0057C971 /* internal.h in Headers */,
				E49F24BC125D57FA0057C971 /* object_internal.h in Headers */,
				E49F24BB125D57FA0057C971 /* queue_internal.h in Headers */,
				E49F24BE125D57FA0057C971 /* source_internal.h in Headers */,
				E49F24BD125D57FA0057C971 /* semaphore_internal.h in Headers */,
				E4C1ED701263E714000D3C8B /* data_internal.h in Headers */,
				6EA7938F1D458A5E00929B1B /* event_config.h in Headers */,
				6ED64B501BBD8A1400C35F4D /* firehose_internal.h in Headers */,
				E49F24BF125D57FA0057C971 /* io_internal.h in Headers */,
				E44A8E731805C473009FFDB6 /* voucher_private.h in Headers */,
				E49F24C1125D57FA0057C971 /* tsd.h in Headers */,
				E49F24C2125D57FA0057C971 /* atomic.h in Headers */,
				E49F24C3125D57FA0057C971 /* shims.h in Headers */,
				E49F24C4125D57FA0057C971 /* time.h in Headers */,
				E49F24C5125D57FA0057C971 /* perfmon.h in Headers */,
				6ED64B521BBD8A2100C35F4D /* firehose_buffer_internal.h in Headers */,
				E48EC97D1835BADD00EAC4F1 /* yield.h in Headers */,
				2BE17C6518EA305E002CA4E8 /* layout_private.h in Headers */,
				E49F24C6125D57FA0057C971 /* config.h in Headers */,
				E422A0D612A557B5005E5BDB /* trace.h in Headers */,
				6E9956091C3B21B40071D40C /* venture_internal.h in Headers */,
				6EF2CAB41C889D65001ABE83 /* lock.h in Headers */,
				E4BA743C13A8911B0095BDF1 /* getprogname.h in Headers */,
				E4128ED713BA9A1700ABB2CB /* hw_config.h in Headers */,
				6ED64B581BBD8A3E00C35F4D /* firehose_inline_internal.h in Headers */,
				E454569414746F1B00106147 /* object_private.h in Headers */,
				E4EB4A2814C35ECE00AA0FA9 /* object.h in Headers */,
				E4ECBAA615253D17002C313C /* mach_private.h in Headers */,
				E48AF55B16E72D44004105FF /* io_private.h in Headers */,
				2BBF5A61154B64D8002B20F9 /* allocator_internal.h in Headers */,
				E43A710615783F7E0012D38D /* data_private.h in Headers */,
				E44F9DAD1654400E001DCD38 /* introspection_internal.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E4B51596164B2DA300E003AF /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E4B515D8164B2DFB00E003AF /* introspection_private.h in Headers */,
				E44F9DAF16544026001DCD38 /* internal.h in Headers */,
				E421E5F91716ADA10090DC9B /* introspection.h in Headers */,
				E44F9DB216544032001DCD38 /* object_internal.h in Headers */,
				E44F9DB316544037001DCD38 /* queue_internal.h in Headers */,
				6ED64B531BBD8A2300C35F4D /* firehose_buffer_internal.h in Headers */,
				E44F9DB51654403F001DCD38 /* source_internal.h in Headers */,
				E44F9DB41654403B001DCD38 /* semaphore_internal.h in Headers */,
				E44F9DB01654402B001DCD38 /* data_internal.h in Headers */,
				6E5ACCBC1D3C4D0F007DA2B4 /* event_internal.h in Headers */,
				6E9956081C3B21B30071D40C /* venture_internal.h in Headers */,
				E44F9DB11654402E001DCD38 /* io_internal.h in Headers */,
				E4630251176162D200E11F4C /* atomic_sfb.h in Headers */,
				E44F9DBE1654405B001DCD38 /* tsd.h in Headers */,
				E44F9DB816544053001DCD38 /* atomic.h in Headers */,
				6ED64B591BBD8A3F00C35F4D /* firehose_inline_internal.h in Headers */,
				6EF2CAB51C889D67001ABE83 /* lock.h in Headers */,
				E44757DB17F4573500B82CA1 /* inline_internal.h in Headers */,
				6EA7938E1D458A5C00929B1B /* event_config.h in Headers */,
				6ED64B4F1BBD8A1400C35F4D /* firehose_internal.h in Headers */,
				E44F9DB71654404F001DCD38 /* shims.h in Headers */,
				E44F9DBC1654405B001DCD38 /* perfmon.h in Headers */,
				E44F9DBF165440EF001DCD38 /* config.h in Headers */,
				E44A8E7718066276009FFDB6 /* voucher_internal.h in Headers */,
				E44F9DB616544043001DCD38 /* trace.h in Headers */,
				E44F9DB916544056001DCD38 /* getprogname.h in Headers */,
				E48EC97E1835BADD00EAC4F1 /* yield.h in Headers */,
				E44F9DBA1654405B001DCD38 /* hw_config.h in Headers */,
				E44F9DC116544115001DCD38 /* object_private.h in Headers */,
				E44F9DC016544115001DCD38 /* object.h in Headers */,
				E44F9DAE16544022001DCD38 /* allocator_internal.h in Headers */,
				E44F9DAB16543F94001DCD38 /* introspection_internal.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXLegacyTarget section */
		92F3FECA1BEC69E500025962 /* darwintests */ = {
			isa = PBXLegacyTarget;
			buildArgumentsString = "$(ACTION)";
			buildConfigurationList = 92F3FECB1BEC69E500025962 /* Build configuration list for PBXLegacyTarget "darwintests" */;
			buildPhases = (
			);
			buildToolPath = /usr/bin/make;
			buildWorkingDirectory = tests/;
			dependencies = (
			);
			name = darwintests;
			passBuildSettingsInEnvironment = 1;
			productName = darwintests;
		};
/* End PBXLegacyTarget section */

/* Begin PBXNativeTarget section */
		6E040C621C499B1B00411A2E /* libfirehose_kernel */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 6E040C6A1C499B1B00411A2E /* Build configuration list for PBXNativeTarget "libfirehose_kernel" */;
			buildPhases = (
				6E040C5F1C499B1B00411A2E /* Sources */,
				6E040C601C499B1B00411A2E /* Frameworks */,
				6E040C611C499B1B00411A2E /* Headers */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = libfirehose_kernel;
			productName = libfirehose_kernel;
			productReference = 6E040C631C499B1B00411A2E /* libfirehose_kernel.a */;
			productType = "com.apple.product-type.library.static";
		};
		6EB4E4081BA8BCAD00D7B9D2 /* libfirehose_server */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 6EB4E40A1BA8BCAD00D7B9D2 /* Build configuration list for PBXNativeTarget "libfirehose_server" */;
			buildPhases = (
				6EB4E4051BA8BCAD00D7B9D2 /* Sources */,
				6EB4E4071BA8BCAD00D7B9D2 /* Headers */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = libfirehose_server;
			productName = libfirehose_server;
			productReference = 6EB4E4091BA8BCAD00D7B9D2 /* libfirehose_server.a */;
			productType = "com.apple.product-type.library.static";
		};
		C00B0DF01C5AEBBE000330B3 /* libdispatch dyld stub */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = C00B0E071C5AEBBE000330B3 /* Build configuration list for PBXNativeTarget "libdispatch dyld stub" */;
			buildPhases = (
				C00B0DF11C5AEBBE000330B3 /* Sources */,
				C00B0E061C5AEBBE000330B3 /* Symlink libdispatch.a -> libdispatch_dyld_target.a */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch dyld stub";
			productName = libdispatch;
			productReference = C00B0E0A1C5AEBBE000330B3 /* libdispatch_dyld_stub.a */;
			productType = "com.apple.product-type.library.static";
		};
		C01866A41C5973210040FC07 /* libdispatch mp static */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = C01866BA1C5973210040FC07 /* Build configuration list for PBXNativeTarget "libdispatch mp static" */;
			buildPhases = (
				C01866A51C5973210040FC07 /* Sources */,
				C01866C01C59777B0040FC07 /* Symlink to the loaderd path */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch mp static";
			productName = libdispatch;
			productReference = C01866BD1C5973210040FC07 /* libdispatch.a */;
			productType = "com.apple.product-type.library.static";
		};
		D2AAC045055464E500DB518D /* libdispatch */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 1DEB91EB08733DB70010E9CD /* Build configuration list for PBXNativeTarget "libdispatch" */;
			buildPhases = (
				D2AAC043055464E500DB518D /* Headers */,
				D2AAC044055464E500DB518D /* Sources */,
				6EA283D61CAB933E0041B2E0 /* Copy Trace Definitions */,
				E4EB4A2B14C3720B00AA0FA9 /* Install Headers */,
				E482F1C512DBAA110030614D /* Postprocess Headers */,
				4CED8B9D0EEDF8B600AF99AB /* Install Manpages */,
			);
			buildRules = (
			);
			dependencies = (
				6EF0B27E1BA8C5BF007FA4F6 /* PBXTargetDependency */,
				E47D6ECD125FEBA10070D91C /* PBXTargetDependency */,
				E47D6ECB125FEB9D0070D91C /* PBXTargetDependency */,
				E49BB6F81E7074C100868613 /* PBXTargetDependency */,
				E4B515DB164B317700E003AF /* PBXTargetDependency */,
				C01866C21C597AEA0040FC07 /* PBXTargetDependency */,
				E437F0D614F7441F00F0B997 /* PBXTargetDependency */,
				C00B0E141C5AEED6000330B3 /* PBXTargetDependency */,
			);
			name = libdispatch;
			productName = libdispatch;
			productReference = D2AAC046055464E500DB518D /* libdispatch.dylib */;
			productType = "com.apple.product-type.library.dynamic";
		};
		E46DBC1A14EE10C80001F9F6 /* libdispatch up static */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = E46DBC5414EE10C80001F9F6 /* Build configuration list for PBXNativeTarget "libdispatch up static" */;
			buildPhases = (
				E46DBC3E14EE10C80001F9F6 /* Sources */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch up static";
			productName = libdispatch;
			productReference = E46DBC5714EE10C80001F9F6 /* libdispatch_up.a */;
			productType = "com.apple.product-type.library.static";
		};
		E49BB6CE1E70748100868613 /* libdispatch alt resolved */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = E49BB6EF1E70748100868613 /* Build configuration list for PBXNativeTarget "libdispatch alt resolved" */;
			buildPhases = (
				E49BB6CF1E70748100868613 /* Mig Headers */,
				E49BB6D01E70748100868613 /* Sources */,
				E49BB6EE1E70748100868613 /* Symlink normal variant */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch alt resolved";
			productName = libdispatch;
			productReference = E49BB6F21E70748100868613 /* libdispatch_alt.a */;
			productType = "com.apple.product-type.library.static";
		};
		E49F24A9125D57FA0057C971 /* libdispatch no resolver */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = E49F24D8125D57FA0057C971 /* Build configuration list for PBXNativeTarget "libdispatch no resolver" */;
			buildPhases = (
				E49F24AA125D57FA0057C971 /* Headers */,
				E49F24C7125D57FA0057C971 /* Sources */,
				E49F24D5125D57FA0057C971 /* Frameworks */,
				E4EB4A3014C3A14000AA0FA9 /* Install Headers */,
				E4128EB213B9612700ABB2CB /* Postprocess Headers */,
				E49F24D7125D57FA0057C971 /* Install Manpages */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch no resolver";
			productName = libdispatch;
			productReference = E49F24DF125D57FA0057C971 /* libdispatch.dylib */;
			productType = "com.apple.product-type.library.dynamic";
		};
		E4B51595164B2DA300E003AF /* libdispatch introspection */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = E4B515D3164B2DA300E003AF /* Build configuration list for PBXNativeTarget "libdispatch introspection" */;
			buildPhases = (
				E4B51596164B2DA300E003AF /* Headers */,
				E4B515BC164B2DA300E003AF /* Sources */,
				E421E5FC1716B8E10090DC9B /* Install DTrace Header */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch introspection";
			productName = libdispatch;
			productReference = E4B515D6164B2DA300E003AF /* libdispatch.dylib */;
			productType = "com.apple.product-type.library.dynamic";
		};
		E4EC118F12514302000DDBD1 /* libdispatch up resolved */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = E4EC11BC12514302000DDBD1 /* Build configuration list for PBXNativeTarget "libdispatch up resolved" */;
			buildPhases = (
				E4EC12141251461A000DDBD1 /* Mig Headers */,
				E4EC11AC12514302000DDBD1 /* Sources */,
				E4EC121212514613000DDBD1 /* Symlink normal variant */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch up resolved";
			productName = libdispatch;
			productReference = E4EC11C312514302000DDBD1 /* libdispatch_up.a */;
			productType = "com.apple.product-type.library.static";
		};
		E4EC121612514715000DDBD1 /* libdispatch mp resolved */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = E4EC122612514715000DDBD1 /* Build configuration list for PBXNativeTarget "libdispatch mp resolved" */;
			buildPhases = (
				E4EC121712514715000DDBD1 /* Mig Headers */,
				E4EC121812514715000DDBD1 /* Sources */,
				E4EC122512514715000DDBD1 /* Symlink normal variant */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch mp resolved";
			productName = libdispatch;
			productReference = E4EC122D12514715000DDBD1 /* libdispatch_mp.a */;
			productType = "com.apple.product-type.library.static";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		08FB7793FE84155DC02AAC07 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				BuildIndependentTargetsInParallel = YES;
				LastUpgradeCheck = 0900;
				TargetAttributes = {
					3F3C9326128E637B0042B1F7 = {
						ProvisioningStyle = Manual;
					};
					4552540A19B1389700B88766 = {
						ProvisioningStyle = Manual;
					};
					6E040C621C499B1B00411A2E = {
						CreatedOnToolsVersion = 7.3;
						ProvisioningStyle = Manual;
					};
					6E2ECAFD1C49C2FF00A30A32 = {
						CreatedOnToolsVersion = 7.3;
						ProvisioningStyle = Manual;
					};
					6EB4E4081BA8BCAD00D7B9D2 = {
						CreatedOnToolsVersion = 7.0;
						ProvisioningStyle = Manual;
					};
					92CBD7201BED924F006E0892 = {
						ProvisioningStyle = Manual;
					};
					92F3FECA1BEC69E500025962 = {
						CreatedOnToolsVersion = 7.1;
						ProvisioningStyle = Manual;
					};
					C00B0DF01C5AEBBE000330B3 = {
						ProvisioningStyle = Manual;
					};
					C01866A41C5973210040FC07 = {
						ProvisioningStyle = Manual;
					};
					C927F35A10FD7F0600C5AB8B = {
						ProvisioningStyle = Manual;
					};
					D2AAC045055464E500DB518D = {
						ProvisioningStyle = Manual;
					};
					E46DBC1A14EE10C80001F9F6 = {
						ProvisioningStyle = Manual;
					};
					E49F24A9125D57FA0057C971 = {
						ProvisioningStyle = Manual;
					};
					E4B51595164B2DA300E003AF = {
						ProvisioningStyle = Manual;
					};
					E4EC118F12514302000DDBD1 = {
						ProvisioningStyle = Manual;
					};
					E4EC121612514715000DDBD1 = {
						ProvisioningStyle = Manual;
					};
				};
			};
			buildConfigurationList = 1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "libdispatch" */;
			compatibilityVersion = "Xcode 3.2";
			developmentRegion = English;
			hasScannedForEncodings = 1;
			knownRegions = (
				English,
				Japanese,
				French,
				German,
			);
			mainGroup = 08FB7794FE84155DC02AAC07 /* libdispatch */;
			projectDirPath = "";
			projectReferences = (
				{
					ProductGroup = C927F36010FD7F1000C5AB8B /* Products */;
					ProjectRef = C927F35F10FD7F1000C5AB8B /* ddt.xcodeproj */;
				},
				{
					ProductGroup = 4552536F19B1384900B88766 /* Products */;
					ProjectRef = 4552536E19B1384900B88766 /* libdispatchtest.xcodeproj */;
				},
			);
			projectRoot = "";
			targets = (
				D2AAC045055464E500DB518D /* libdispatch */,
				E49F24A9125D57FA0057C971 /* libdispatch no resolver */,
				E4EC121612514715000DDBD1 /* libdispatch mp resolved */,
				E4EC118F12514302000DDBD1 /* libdispatch up resolved */,
				E49BB6CE1E70748100868613 /* libdispatch alt resolved */,
				E4B51595164B2DA300E003AF /* libdispatch introspection */,
				E46DBC1A14EE10C80001F9F6 /* libdispatch up static */,
				C01866A41C5973210040FC07 /* libdispatch mp static */,
				C00B0DF01C5AEBBE000330B3 /* libdispatch dyld stub */,
				3F3C9326128E637B0042B1F7 /* libdispatch_Sim */,
				6E2ECAFD1C49C2FF00A30A32 /* libdispatch_kernel */,
				C927F35A10FD7F0600C5AB8B /* libdispatch_tools */,
				4552540A19B1389700B88766 /* libdispatch_tests */,
				92CBD7201BED924F006E0892 /* libdispatch_tests_legacy */,
				92F3FECA1BEC69E500025962 /* darwintests */,
				6E040C621C499B1B00411A2E /* libfirehose_kernel */,
				6EB4E4081BA8BCAD00D7B9D2 /* libfirehose_server */,
			);
		};
/* End PBXProject section */

/* Begin PBXReferenceProxy section */
		4552540319B1384900B88766 /* bench */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = bench;
			remoteRef = 4552540219B1384900B88766 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		4552540519B1384900B88766 /* jsgc_bench */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = jsgc_bench;
			remoteRef = 4552540419B1384900B88766 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		4552540719B1384900B88766 /* async_bench */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = async_bench;
			remoteRef = 4552540619B1384900B88766 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		4552540919B1384900B88766 /* apply_bench */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = apply_bench;
			remoteRef = 4552540819B1384900B88766 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		C927F36710FD7F1000C5AB8B /* ddt */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = ddt;
			remoteRef = C927F36610FD7F1000C5AB8B /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
/* End PBXReferenceProxy section */

/* Begin PBXShellScriptBuildPhase section */
		4CED8B9D0EEDF8B600AF99AB /* Install Manpages */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 8;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/install-manpages.sh",
			);
			name = "Install Manpages";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 1;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		C00B0E061C5AEBBE000330B3 /* Symlink libdispatch.a -> libdispatch_dyld_target.a */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/run-on-install.sh",
			);
			name = "Symlink libdispatch.a -> libdispatch_dyld_target.a";
			outputPaths = (
				"${DSTROOT}${INSTALL_PATH}/libdispatch.a",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\" /bin/ln -sf ${PRODUCT_NAME}.a ${SCRIPT_OUTPUT_FILE_0}";
			showEnvVarsInLog = 0;
		};
		C01866C01C59777B0040FC07 /* Symlink to the loaderd path */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/run-on-install.sh",
			);
			name = "Symlink to the loaderd path";
			outputPaths = (
				"${DSTROOT}/usr/local/lib/loaderd/${PRODUCT_NAME}.a",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\" /bin/ln -sf ../../../..${INSTALL_PATH}/${PRODUCT_NAME}.a ${DSTROOT}/usr/local/lib/loaderd/${PRODUCT_NAME}.a";
			showEnvVarsInLog = 0;
		};
		E4128EB213B9612700ABB2CB /* Postprocess Headers */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 8;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/postprocess-headers.sh",
			);
			name = "Postprocess Headers";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 1;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		E421E5FC1716B8E10090DC9B /* Install DTrace Header */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/install-dtrace.sh",
				"$(SRCROOT)/src/provider.d",
			);
			name = "Install DTrace Header";
			outputPaths = (
				"$(CONFIGURATION_BUILD_DIR)/$(PUBLIC_HEADERS_FOLDER_PATH)/introspection.d",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		E482F1C512DBAA110030614D /* Postprocess Headers */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 8;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/postprocess-headers.sh",
			);
			name = "Postprocess Headers";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 1;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		E49BB6CF1E70748100868613 /* Mig Headers */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/src/protocol.defs",
				"$(SRCROOT)/src/firehose/firehose.defs",
				"$(SRCROOT)/src/firehose/firehose_reply.defs",
				"$(SRCROOT)/xcodescripts/mig-headers.sh",
			);
			name = "Mig Headers";
			outputPaths = (
				"$(DERIVED_FILE_DIR)/protocol.h",
				"$(DERIVED_FILE_DIR)/protocolServer.h",
				"$(DERIVED_FILE_DIR)/firehose.h",
				"$(DERIVED_FILE_DIR)/firehoseServer.h",
				"$(DERIVED_FILE_DIR)/firehose_reply.h",
				"$(DERIVED_FILE_DIR)/firehose_replyServer.h",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_3}\"";
			showEnvVarsInLog = 0;
		};
		E49BB6EE1E70748100868613 /* Symlink normal variant */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Symlink normal variant";
			outputPaths = (
				"$(CONFIGURATION_BUILD_DIR)/$(PRODUCT_NAME)_normal.a",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = "ln -fs \"${PRODUCT_NAME}.a\" \"${SCRIPT_OUTPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		E49F24D7125D57FA0057C971 /* Install Manpages */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 8;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/install-manpages.sh",
			);
			name = "Install Manpages";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 1;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		E4EB4A2B14C3720B00AA0FA9 /* Install Headers */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/install-headers.sh",
				"$(SRCROOT)/os/object.h",
				"$(SRCROOT)/os/object_private.h",
				"$(SRCROOT)/os/venture_private.h",
				"$(SRCROOT)/os/voucher_private.h",
				"$(SRCROOT)/os/voucher_activity_private.h",
			);
			name = "Install Headers";
			outputPaths = (
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PUBLIC_HEADERS_FOLDER_PATH)/object.h",
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PRIVATE_HEADERS_FOLDER_PATH)/object_private.h",
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PRIVATE_HEADERS_FOLDER_PATH)/venture_private.h",
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PRIVATE_HEADERS_FOLDER_PATH)/voucher_private.h",
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PRIVATE_HEADERS_FOLDER_PATH)/voucher_activity_private.h",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		E4EB4A3014C3A14000AA0FA9 /* Install Headers */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/install-headers.sh",
				"$(SRCROOT)/os/object.h",
				"$(SRCROOT)/os/object_private.h",
				"$(SRCROOT)/os/venture_private.h",
				"$(SRCROOT)/os/voucher_private.h",
				"$(SRCROOT)/os/voucher_activity_private.h",
			);
			name = "Install Headers";
			outputPaths = (
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PUBLIC_HEADERS_FOLDER_PATH)/object.h",
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PRIVATE_HEADERS_FOLDER_PATH)/object_private.h",
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PRIVATE_HEADERS_FOLDER_PATH)/venture_private.h",
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PRIVATE_HEADERS_FOLDER_PATH)/voucher_private.h",
				"$(CONFIGURATION_BUILD_DIR)/$(OS_PRIVATE_HEADERS_FOLDER_PATH)/voucher_activity_private.h",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		E4EC121212514613000DDBD1 /* Symlink normal variant */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Symlink normal variant";
			outputPaths = (
				"$(CONFIGURATION_BUILD_DIR)/$(PRODUCT_NAME)_normal.a",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = "ln -fs \"${PRODUCT_NAME}.a\" \"${SCRIPT_OUTPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
		E4EC12141251461A000DDBD1 /* Mig Headers */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/src/protocol.defs",
				"$(SRCROOT)/src/firehose/firehose.defs",
				"$(SRCROOT)/src/firehose/firehose_reply.defs",
				"$(SRCROOT)/xcodescripts/mig-headers.sh",
			);
			name = "Mig Headers";
			outputPaths = (
				"$(DERIVED_FILE_DIR)/protocol.h",
				"$(DERIVED_FILE_DIR)/protocolServer.h",
				"$(DERIVED_FILE_DIR)/firehose.h",
				"$(DERIVED_FILE_DIR)/firehoseServer.h",
				"$(DERIVED_FILE_DIR)/firehose_reply.h",
				"$(DERIVED_FILE_DIR)/firehose_replyServer.h",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_3}\"";
			showEnvVarsInLog = 0;
		};
		E4EC121712514715000DDBD1 /* Mig Headers */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/src/protocol.defs",
				"$(SRCROOT)/src/firehose/firehose.defs",
				"$(SRCROOT)/src/firehose/firehose_reply.defs",
				"$(SRCROOT)/xcodescripts/mig-headers.sh",
			);
			name = "Mig Headers";
			outputPaths = (
				"$(DERIVED_FILE_DIR)/protocol.h",
				"$(DERIVED_FILE_DIR)/protocolServer.h",
				"$(DERIVED_FILE_DIR)/firehose.h",
				"$(DERIVED_FILE_DIR)/firehoseServer.h",
				"$(DERIVED_FILE_DIR)/firehose_reply.h",
				"$(DERIVED_FILE_DIR)/firehose_replyServer.h",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_3}\"";
			showEnvVarsInLog = 0;
		};
		E4EC122512514715000DDBD1 /* Symlink normal variant */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			name = "Symlink normal variant";
			outputPaths = (
				"$(CONFIGURATION_BUILD_DIR)/$(PRODUCT_NAME)_normal.a",
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = "/bin/bash -e";
			shellScript = "ln -fs \"${PRODUCT_NAME}.a\" \"${SCRIPT_OUTPUT_FILE_0}\"";
			showEnvVarsInLog = 0;
		};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		6E040C5F1C499B1B00411A2E /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				6E040C731C499C6500411A2E /* firehose_buffer.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		6EB4E4051BA8BCAD00D7B9D2 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				6E90269C1BB9BD50004DC3AD /* firehose.defs in Sources */,
				6EF0B2781BA8C56E007FA4F6 /* firehose_reply.defs in Sources */,
				6EF0B27A1BA8C57D007FA4F6 /* firehose_server_object.m in Sources */,
				6E21F2E91BBB240E0000C6A5 /* firehose_server.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		C00B0DF11C5AEBBE000330B3 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				C00B0DF21C5AEBBE000330B3 /* protocol.defs in Sources */,
				C00B0DF71C5AEBBE000330B3 /* firehose.defs in Sources */,
				C00B0DFA1C5AEBBE000330B3 /* firehose_reply.defs in Sources */,
				C00B0DF31C5AEBBE000330B3 /* resolver.c in Sources */,
				C00B0DF41C5AEBBE000330B3 /* init.c in Sources */,
				C00B0DFE1C5AEBBE000330B3 /* object.c in Sources */,
				C00B0DF81C5AEBBE000330B3 /* block.cpp in Sources */,
				6EF2CAB31C8899ED001ABE83 /* lock.c in Sources */,
				C00B0DF91C5AEBBE000330B3 /* semaphore.c in Sources */,
				C00B0DFB1C5AEBBE000330B3 /* once.c in Sources */,
				C00B0DF51C5AEBBE000330B3 /* queue.c in Sources */,
				C00B0DFD1C5AEBBE000330B3 /* apply.c in Sources */,
				C00B0E001C5AEBBE000330B3 /* source.c in Sources */,
				6E4BACC81D48A42400B562AE /* mach.c in Sources */,
				6EA9629E1D48622C00759D53 /* event.c in Sources */,
				6EA962A61D48625500759D53 /* event_kevent.c in Sources */,
				6E4BACFC1D49A04A00B562AE /* event_epoll.c in Sources */,
				C00B0DFC1C5AEBBE000330B3 /* voucher.c in Sources */,
				C00B0DF61C5AEBBE000330B3 /* firehose_buffer.c in Sources */,
				C00B0E031C5AEBBE000330B3 /* io.c in Sources */,
				C00B0E021C5AEBBE000330B3 /* data.c in Sources */,
				C00B0E041C5AEBBE000330B3 /* transform.c in Sources */,
				C00B0E011C5AEBBE000330B3 /* time.c in Sources */,
				C00B0E051C5AEBBE000330B3 /* allocator.c in Sources */,
				C00B0DFF1C5AEBBE000330B3 /* benchmark.c in Sources */,
				E49BB70A1E70A3B000868613 /* venture.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		C01866A51C5973210040FC07 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				C01866A61C5973210040FC07 /* protocol.defs in Sources */,
				C01866AB1C5973210040FC07 /* firehose.defs in Sources */,
				C01866AE1C5973210040FC07 /* firehose_reply.defs in Sources */,
				C01866A71C5973210040FC07 /* resolver.c in Sources */,
				C01866A81C5973210040FC07 /* init.c in Sources */,
				C01866B21C5973210040FC07 /* object.c in Sources */,
				C01866AC1C5973210040FC07 /* block.cpp in Sources */,
				6EF2CAB21C8899EC001ABE83 /* lock.c in Sources */,
				C01866AD1C5973210040FC07 /* semaphore.c in Sources */,
				C01866AF1C5973210040FC07 /* once.c in Sources */,
				C01866A91C5973210040FC07 /* queue.c in Sources */,
				C01866B11C5973210040FC07 /* apply.c in Sources */,
				C01866B41C5973210040FC07 /* source.c in Sources */,
				6E4BACC71D48A42300B562AE /* mach.c in Sources */,
				6EA9629D1D48622B00759D53 /* event.c in Sources */,
				6EA962A51D48625400759D53 /* event_kevent.c in Sources */,
				6E4BACFB1D49A04A00B562AE /* event_epoll.c in Sources */,
				C01866B01C5973210040FC07 /* voucher.c in Sources */,
				C01866AA1C5973210040FC07 /* firehose_buffer.c in Sources */,
				C01866B71C5973210040FC07 /* io.c in Sources */,
				C01866B61C5973210040FC07 /* data.c in Sources */,
				C01866B81C5973210040FC07 /* transform.c in Sources */,
				C01866B51C5973210040FC07 /* time.c in Sources */,
				C01866B91C5973210040FC07 /* allocator.c in Sources */,
				C01866B31C5973210040FC07 /* benchmark.c in Sources */,
				E49BB7091E70A39700868613 /* venture.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		D2AAC044055464E500DB518D /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E43570B9126E93380097AB9F /* provider.d in Sources */,
				FC7BEDA40E8361E600161930 /* protocol.defs in Sources */,
				6ED64B471BBD89AF00C35F4D /* firehose.defs in Sources */,
				6ED64B491BBD89BC00C35F4D /* firehose_reply.defs in Sources */,
				E49F2499125D48D80057C971 /* resolver.c in Sources */,
				E44EBE3E1251659900645D88 /* init.c in Sources */,
				9661E56B0F3E7DDF00749F3E /* object.c in Sources */,
				E4FC3264145F46C9002FBDDB /* object.m in Sources */,
				E43A72501AF85BBC00BAA921 /* block.cpp in Sources */,
				6EF2CAAC1C8899D5001ABE83 /* lock.c in Sources */,
				721F5CCF0F15553500FF03A6 /* semaphore.c in Sources */,
				96DF70BE0F38FE3C0074BD99 /* once.c in Sources */,
				FC7BED990E8361E600161930 /* queue.c in Sources */,
				9676A0E10F3E755D00713ADB /* apply.c in Sources */,
				96A8AA870F41E7A400CD570B /* source.c in Sources */,
				6E4BACBD1D48A41500B562AE /* mach.c in Sources */,
				6EA962971D48622600759D53 /* event.c in Sources */,
				6EA9629F1D48625000759D53 /* event_kevent.c in Sources */,
				6E4BACF51D49A04600B562AE /* event_epoll.c in Sources */,
				E44A8E6B1805C3E0009FFDB6 /* voucher.c in Sources */,
				6ED64B441BBD898700C35F4D /* firehose_buffer.c in Sources */,
				5A27262610F26F1900751FBC /* io.c in Sources */,
				5AAB45C010D30B79004407EA /* data.c in Sources */,
				E420867016027AE500EEE210 /* data.m in Sources */,
				C9C5F80E143C1771006DC718 /* transform.c in Sources */,
				96032E4B0F5CC8C700241C5F /* time.c in Sources */,
				2BBF5A63154B64F5002B20F9 /* allocator.c in Sources */,
				965CD6350F3E806200D4E28D /* benchmark.c in Sources */,
				6E9955CF1C3B218E0071D40C /* venture.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E46DBC3E14EE10C80001F9F6 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E46DBC4014EE10C80001F9F6 /* protocol.defs in Sources */,
				6EBEC7E71BBDD30F009B1596 /* firehose.defs in Sources */,
				6EBEC7EA1BBDD326009B1596 /* firehose_reply.defs in Sources */,
				E46DBC4114EE10C80001F9F6 /* resolver.c in Sources */,
				E46DBC4214EE10C80001F9F6 /* init.c in Sources */,
				E46DBC4714EE10C80001F9F6 /* object.c in Sources */,
				E43A72881AF85BE900BAA921 /* block.cpp in Sources */,
				6EF2CAB11C8899EC001ABE83 /* lock.c in Sources */,
				E46DBC4414EE10C80001F9F6 /* semaphore.c in Sources */,
				E46DBC4514EE10C80001F9F6 /* once.c in Sources */,
				E46DBC4314EE10C80001F9F6 /* queue.c in Sources */,
				E46DBC4614EE10C80001F9F6 /* apply.c in Sources */,
				E46DBC4914EE10C80001F9F6 /* source.c in Sources */,
				6E4BACC61D48A42300B562AE /* mach.c in Sources */,
				6EA9629C1D48622A00759D53 /* event.c in Sources */,
				6EA962A41D48625300759D53 /* event_kevent.c in Sources */,
				6E4BACFA1D49A04900B562AE /* event_epoll.c in Sources */,
				E44A8E701805C3E0009FFDB6 /* voucher.c in Sources */,
				6EE664271BE2FD5C00ED7B1C /* firehose_buffer.c in Sources */,
				E46DBC4C14EE10C80001F9F6 /* io.c in Sources */,
				E46DBC4B14EE10C80001F9F6 /* data.c in Sources */,
				E46DBC4D14EE10C80001F9F6 /* transform.c in Sources */,
				E46DBC4A14EE10C80001F9F6 /* time.c in Sources */,
				2BBF5A67154B64F5002B20F9 /* allocator.c in Sources */,
				E46DBC4814EE10C80001F9F6 /* benchmark.c in Sources */,
				6E9956011C3B21980071D40C /* venture.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E49BB6D01E70748100868613 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E49BB6D11E70748100868613 /* provider.d in Sources */,
				E49BB6D21E70748100868613 /* protocol.defs in Sources */,
				E49BB6D41E70748100868613 /* firehose.defs in Sources */,
				E49BB6DD1E70748100868613 /* firehose_reply.defs in Sources */,
				E49BB6D71E70748100868613 /* resolver.c in Sources */,
				E49BB6D91E70748100868613 /* init.c in Sources */,
				E49BB6E01E70748100868613 /* object.c in Sources */,
				E49BB6EA1E70748100868613 /* object.m in Sources */,
				E49BB6E71E70748100868613 /* block.cpp in Sources */,
				E49BB6DC1E70748100868613 /* lock.c in Sources */,
				E49BB6DB1E70748100868613 /* semaphore.c in Sources */,
				E49BB6DE1E70748100868613 /* once.c in Sources */,
				E49BB6D81E70748100868613 /* mach.c in Sources */,
				E49BB6DA1E70748100868613 /* queue.c in Sources */,
				E49BB6DF1E70748100868613 /* apply.c in Sources */,
				E49BB6E31E70748100868613 /* source.c in Sources */,
				E49BB6E81E70748100868613 /* event.c in Sources */,
				E49BB6D61E70748100868613 /* event_kevent.c in Sources */,
				E49BB6E21E70748100868613 /* event_epoll.c in Sources */,
				E49BB6ED1E70748100868613 /* voucher.c in Sources */,
				E49BB6D51E70748100868613 /* firehose_buffer.c in Sources */,
				E49BB6E61E70748100868613 /* io.c in Sources */,
				E49BB6E51E70748100868613 /* data.c in Sources */,
				E49BB6EC1E70748100868613 /* data.m in Sources */,
				E49BB6E91E70748100868613 /* transform.c in Sources */,
				E49BB6E41E70748100868613 /* time.c in Sources */,
				E49BB6EB1E70748100868613 /* allocator.c in Sources */,
				E49BB6E11E70748100868613 /* benchmark.c in Sources */,
				E49BB6D31E70748100868613 /* venture.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E49F24C7125D57FA0057C971 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E43570BA126E93380097AB9F /* provider.d in Sources */,
				E49F24C8125D57FA0057C971 /* protocol.defs in Sources */,
				6ED64B461BBD89AF00C35F4D /* firehose.defs in Sources */,
				6ED64B4A1BBD89BD00C35F4D /* firehose_reply.defs in Sources */,
				E49F24C9125D57FA0057C971 /* resolver.c in Sources */,
				E49F24CA125D57FA0057C971 /* init.c in Sources */,
				E49F24CF125D57FA0057C971 /* object.c in Sources */,
				E4FC3265145F46C9002FBDDB /* object.m in Sources */,
				E43A72841AF85BCB00BAA921 /* block.cpp in Sources */,
				6EF2CAAD1C8899E9001ABE83 /* lock.c in Sources */,
				E49F24CC125D57FA0057C971 /* semaphore.c in Sources */,
				E49F24CD125D57FA0057C971 /* once.c in Sources */,
				E49F24CB125D57FA0057C971 /* queue.c in Sources */,
				E49F24CE125D57FA0057C971 /* apply.c in Sources */,
				E49F24D1125D57FA0057C971 /* source.c in Sources */,
				6E4BACC21D48A42000B562AE /* mach.c in Sources */,
				6EA962981D48622700759D53 /* event.c in Sources */,
				6EA962A01D48625100759D53 /* event_kevent.c in Sources */,
				6E4BACF61D49A04700B562AE /* event_epoll.c in Sources */,
				E44A8E6C1805C3E0009FFDB6 /* voucher.c in Sources */,
				6ED64B401BBD898300C35F4D /* firehose_buffer.c in Sources */,
				E49F24D4125D57FA0057C971 /* io.c in Sources */,
				E49F24D3125D57FA0057C971 /* data.c in Sources */,
				E420867116027AE500EEE210 /* data.m in Sources */,
				C93D6165143E190E00EB9023 /* transform.c in Sources */,
				E49F24D2125D57FA0057C971 /* time.c in Sources */,
				2BBF5A64154B64F5002B20F9 /* allocator.c in Sources */,
				E49F24D0125D57FA0057C971 /* benchmark.c in Sources */,
				6E9956051C3B219B0071D40C /* venture.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E4B515BC164B2DA300E003AF /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E4B515BD164B2DA300E003AF /* provider.d in Sources */,
				E4B515BE164B2DA300E003AF /* protocol.defs in Sources */,
				6ED64B481BBD89B100C35F4D /* firehose.defs in Sources */,
				6ED64B4B1BBD89BE00C35F4D /* firehose_reply.defs in Sources */,
				E4B515BF164B2DA300E003AF /* resolver.c in Sources */,
				E4B515C0164B2DA300E003AF /* init.c in Sources */,
				E4B515C5164B2DA300E003AF /* object.c in Sources */,
				E4B515CC164B2DA300E003AF /* object.m in Sources */,
				E43A72871AF85BCD00BAA921 /* block.cpp in Sources */,
				6EF2CAB01C8899EB001ABE83 /* lock.c in Sources */,
				E4B515C2164B2DA300E003AF /* semaphore.c in Sources */,
				E4B515C3164B2DA300E003AF /* once.c in Sources */,
				E4B515C1164B2DA300E003AF /* queue.c in Sources */,
				E4B515C4164B2DA300E003AF /* apply.c in Sources */,
				E4B515C7164B2DA300E003AF /* source.c in Sources */,
				6E4BACC51D48A42200B562AE /* mach.c in Sources */,
				6EA9629B1D48622900759D53 /* event.c in Sources */,
				6EA962A31D48625300759D53 /* event_kevent.c in Sources */,
				6E4BACF91D49A04800B562AE /* event_epoll.c in Sources */,
				E44A8E6F1805C3E0009FFDB6 /* voucher.c in Sources */,
				6ED64B431BBD898600C35F4D /* firehose_buffer.c in Sources */,
				E4B515CA164B2DA300E003AF /* io.c in Sources */,
				E4B515C9164B2DA300E003AF /* data.c in Sources */,
				E4B515CE164B2DA300E003AF /* data.m in Sources */,
				E4B515CB164B2DA300E003AF /* transform.c in Sources */,
				E4B515C8164B2DA300E003AF /* time.c in Sources */,
				E4B515CD164B2DA300E003AF /* allocator.c in Sources */,
				E4B515C6164B2DA300E003AF /* benchmark.c in Sources */,
				6E9956021C3B21990071D40C /* venture.c in Sources */,
				E4B515DD164B32E000E003AF /* introspection.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E4EC11AC12514302000DDBD1 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E417A38412A472C4004D659D /* provider.d in Sources */,
				E44EBE5412517EBE00645D88 /* protocol.defs in Sources */,
				6EBEC7E61BBDD30D009B1596 /* firehose.defs in Sources */,
				6EBEC7E91BBDD325009B1596 /* firehose_reply.defs in Sources */,
				E49F2424125D3C970057C971 /* resolver.c in Sources */,
				E44EBE5512517EBE00645D88 /* init.c in Sources */,
				E4EC11B212514302000DDBD1 /* object.c in Sources */,
				E4FC3266145F46C9002FBDDB /* object.m in Sources */,
				E43A72861AF85BCC00BAA921 /* block.cpp in Sources */,
				6EF2CAAF1C8899EB001ABE83 /* lock.c in Sources */,
				E4EC11AF12514302000DDBD1 /* semaphore.c in Sources */,
				E4EC11B012514302000DDBD1 /* once.c in Sources */,
				E4EC11AE12514302000DDBD1 /* queue.c in Sources */,
				E4EC11B112514302000DDBD1 /* apply.c in Sources */,
				E4EC11B412514302000DDBD1 /* source.c in Sources */,
				6E4BACC41D48A42200B562AE /* mach.c in Sources */,
				6EA9629A1D48622900759D53 /* event.c in Sources */,
				6EA962A21D48625200759D53 /* event_kevent.c in Sources */,
				6E4BACF81D49A04800B562AE /* event_epoll.c in Sources */,
				E44A8E6E1805C3E0009FFDB6 /* voucher.c in Sources */,
				6ED64B421BBD898500C35F4D /* firehose_buffer.c in Sources */,
				E4EC11B812514302000DDBD1 /* io.c in Sources */,
				E4EC11B712514302000DDBD1 /* data.c in Sources */,
				E420867316027AE500EEE210 /* data.m in Sources */,
				C93D6166143E190F00EB9023 /* transform.c in Sources */,
				E4EC11B512514302000DDBD1 /* time.c in Sources */,
				2BBF5A65154B64F5002B20F9 /* allocator.c in Sources */,
				E4EC11B312514302000DDBD1 /* benchmark.c in Sources */,
				6E9956031C3B219A0071D40C /* venture.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		E4EC121812514715000DDBD1 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				E417A38512A472C5004D659D /* provider.d in Sources */,
				E44EBE5612517EBE00645D88 /* protocol.defs in Sources */,
				6EBEC7E51BBDD30C009B1596 /* firehose.defs in Sources */,
				6EBEC7E81BBDD324009B1596 /* firehose_reply.defs in Sources */,
				E49F2423125D3C960057C971 /* resolver.c in Sources */,
				E44EBE5712517EBE00645D88 /* init.c in Sources */,
				E4EC121E12514715000DDBD1 /* object.c in Sources */,
				E4FC3267145F46C9002FBDDB /* object.m in Sources */,
				E43A72851AF85BCC00BAA921 /* block.cpp in Sources */,
				6EF2CAAE1C8899EA001ABE83 /* lock.c in Sources */,
				E4EC121B12514715000DDBD1 /* semaphore.c in Sources */,
				E4EC121C12514715000DDBD1 /* once.c in Sources */,
				E4EC121A12514715000DDBD1 /* queue.c in Sources */,
				E4EC121D12514715000DDBD1 /* apply.c in Sources */,
				E4EC122012514715000DDBD1 /* source.c in Sources */,
				6E4BACC31D48A42100B562AE /* mach.c in Sources */,
				6EA962991D48622800759D53 /* event.c in Sources */,
				6EA962A11D48625100759D53 /* event_kevent.c in Sources */,
				6E4BACF71D49A04700B562AE /* event_epoll.c in Sources */,
				E44A8E6D1805C3E0009FFDB6 /* voucher.c in Sources */,
				6ED64B411BBD898400C35F4D /* firehose_buffer.c in Sources */,
				E4EC122412514715000DDBD1 /* io.c in Sources */,
				E4EC122312514715000DDBD1 /* data.c in Sources */,
				E420867216027AE500EEE210 /* data.m in Sources */,
				C93D6167143E190F00EB9023 /* transform.c in Sources */,
				E4EC122112514715000DDBD1 /* time.c in Sources */,
				2BBF5A66154B64F5002B20F9 /* allocator.c in Sources */,
				E4EC121F12514715000DDBD1 /* benchmark.c in Sources */,
				6E9956041C3B219B0071D40C /* venture.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		6E2ECB021C49C31200A30A32 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 6E040C621C499B1B00411A2E /* libfirehose_kernel */;
			targetProxy = 6E2ECB011C49C31200A30A32 /* PBXContainerItemProxy */;
		};
		6EF0B27E1BA8C5BF007FA4F6 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 6EB4E4081BA8BCAD00D7B9D2 /* libfirehose_server */;
			targetProxy = 6EF0B27D1BA8C5BF007FA4F6 /* PBXContainerItemProxy */;
		};
		92CBD75A1BED926C006E0892 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = all;
			targetProxy = 92CBD7591BED926C006E0892 /* PBXContainerItemProxy */;
		};
		92F3FECF1BEC6F1000025962 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 92F3FECA1BEC69E500025962 /* darwintests */;
			targetProxy = 92F3FECE1BEC6F1000025962 /* PBXContainerItemProxy */;
		};
		C00B0E141C5AEED6000330B3 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = C00B0DF01C5AEBBE000330B3 /* libdispatch dyld stub */;
			targetProxy = C00B0E131C5AEED6000330B3 /* PBXContainerItemProxy */;
		};
		C01866C21C597AEA0040FC07 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = C01866A41C5973210040FC07 /* libdispatch mp static */;
			targetProxy = C01866C11C597AEA0040FC07 /* PBXContainerItemProxy */;
		};
		C927F36910FD7F1A00C5AB8B /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = ddt;
			targetProxy = C927F36810FD7F1A00C5AB8B /* PBXContainerItemProxy */;
		};
		E4128E4A13B94BCE00ABB2CB /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = D2AAC045055464E500DB518D /* libdispatch */;
			targetProxy = E4128E4913B94BCE00ABB2CB /* PBXContainerItemProxy */;
		};
		E437F0D614F7441F00F0B997 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E46DBC1A14EE10C80001F9F6 /* libdispatch up static */;
			targetProxy = E437F0D514F7441F00F0B997 /* PBXContainerItemProxy */;
		};
		E47D6ECB125FEB9D0070D91C /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E4EC118F12514302000DDBD1 /* libdispatch up resolved */;
			targetProxy = E47D6ECA125FEB9D0070D91C /* PBXContainerItemProxy */;
		};
		E47D6ECD125FEBA10070D91C /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E4EC121612514715000DDBD1 /* libdispatch mp resolved */;
			targetProxy = E47D6ECC125FEBA10070D91C /* PBXContainerItemProxy */;
		};
		E49BB6F81E7074C100868613 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E49BB6CE1E70748100868613 /* libdispatch alt resolved */;
			targetProxy = E49BB6F71E7074C100868613 /* PBXContainerItemProxy */;
		};
		E4B515DB164B317700E003AF /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E4B51595164B2DA300E003AF /* libdispatch introspection */;
			targetProxy = E4B515DA164B317700E003AF /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		1DEB91ED08733DB70010E9CD /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041AA125D705F0022B135 /* libdispatch-resolver.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		1DEB91F108733DB70010E9CD /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E43D93F11097917E004F6A62 /* libdispatch.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		3F3C9357128E637B0042B1F7 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
			};
			name = Release;
		};
		3F3C9358128E637B0042B1F7 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
			};
			name = Debug;
		};
		4552540C19B1389700B88766 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		4552540D19B1389700B88766 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		6E040C641C499B1B00411A2E /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 6E040C721C499C3600411A2E /* libfirehose_kernel.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		6E040C651C499B1B00411A2E /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 6E040C721C499C3600411A2E /* libfirehose_kernel.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		6E2ECAFF1C49C30000A30A32 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		6E2ECB001C49C30000A30A32 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		6EB4E40B1BA8BCAD00D7B9D2 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 6EB4E4421BA8BD7800D7B9D2 /* libfirehose.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		6EB4E40C1BA8BCAD00D7B9D2 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = 6EB4E4421BA8BD7800D7B9D2 /* libfirehose.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		92CBD7241BED924F006E0892 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		92CBD7251BED924F006E0892 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		92F3FECC1BEC69E500025962 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
			};
			name = Release;
		};
		92F3FECD1BEC69E500025962 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
			};
			name = Debug;
		};
		C00B0E081C5AEBBE000330B3 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = C00B0E121C5AEBF7000330B3 /* libdispatch-dyld-stub.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		C00B0E091C5AEBBE000330B3 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = C00B0E121C5AEBF7000330B3 /* libdispatch-dyld-stub.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		C01866BB1C5973210040FC07 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = C01866BE1C59735B0040FC07 /* libdispatch-mp-static.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		C01866BC1C5973210040FC07 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = C01866BE1C59735B0040FC07 /* libdispatch-mp-static.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		C927F35B10FD7F0600C5AB8B /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
			};
			name = Release;
		};
		C927F35C10FD7F0600C5AB8B /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
			};
			name = Debug;
		};
		E46DBC5514EE10C80001F9F6 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E46DBC5814EE11BC0001F9F6 /* libdispatch-up-static.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		E46DBC5614EE10C80001F9F6 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E46DBC5814EE11BC0001F9F6 /* libdispatch-up-static.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		E49BB6F01E70748100868613 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */;
			buildSettings = {
				DISPATCH_RESOLVED_VARIANT = alt;
			};
			name = Release;
		};
		E49BB6F11E70748100868613 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */;
			buildSettings = {
				DISPATCH_RESOLVED_VARIANT = alt;
			};
			name = Debug;
		};
		E49F24D9125D57FA0057C971 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				WARNING_CFLAGS = (
					"-Weverything",
					"$(inherited)",
				);
			};
			name = Release;
		};
		E49F24DA125D57FA0057C971 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ONLY_ACTIVE_ARCH = YES;
				WARNING_CFLAGS = (
					"-Weverything",
					"$(inherited)",
				);
			};
			name = Debug;
		};
		E4B515D4164B2DA300E003AF /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E4B515D9164B2E9B00E003AF /* libdispatch-introspection.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		E4B515D5164B2DA300E003AF /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E4B515D9164B2E9B00E003AF /* libdispatch-introspection.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		E4EB382D1089033000C33AD4 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E43D93F11097917E004F6A62 /* libdispatch.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		E4EB382E1089033000C33AD4 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041AA125D705F0022B135 /* libdispatch-resolver.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		E4EC11BD12514302000DDBD1 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */;
			buildSettings = {
				DISPATCH_RESOLVED_VARIANT = up;
			};
			name = Release;
		};
		E4EC11BE12514302000DDBD1 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */;
			buildSettings = {
				DISPATCH_RESOLVED_VARIANT = up;
			};
			name = Debug;
		};
		E4EC122712514715000DDBD1 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */;
			buildSettings = {
				DISPATCH_RESOLVED_VARIANT = mp;
			};
			name = Release;
		};
		E4EC122812514715000DDBD1 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */;
			buildSettings = {
				DISPATCH_RESOLVED_VARIANT = mp;
			};
			name = Debug;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		1DEB91EB08733DB70010E9CD /* Build configuration list for PBXNativeTarget "libdispatch" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1DEB91ED08733DB70010E9CD /* Release */,
				E4EB382E1089033000C33AD4 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "libdispatch" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1DEB91F108733DB70010E9CD /* Release */,
				E4EB382D1089033000C33AD4 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		3F3C9356128E637B0042B1F7 /* Build configuration list for PBXAggregateTarget "libdispatch_Sim" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				3F3C9357128E637B0042B1F7 /* Release */,
				3F3C9358128E637B0042B1F7 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		4552540B19B1389700B88766 /* Build configuration list for PBXAggregateTarget "libdispatch_tests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				4552540C19B1389700B88766 /* Release */,
				4552540D19B1389700B88766 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		6E040C6A1C499B1B00411A2E /* Build configuration list for PBXNativeTarget "libfirehose_kernel" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				6E040C641C499B1B00411A2E /* Release */,
				6E040C651C499B1B00411A2E /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		6E2ECAFE1C49C30000A30A32 /* Build configuration list for PBXAggregateTarget "libdispatch_kernel" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				6E2ECAFF1C49C30000A30A32 /* Release */,
				6E2ECB001C49C30000A30A32 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		6EB4E40A1BA8BCAD00D7B9D2 /* Build configuration list for PBXNativeTarget "libfirehose_server" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				6EB4E40B1BA8BCAD00D7B9D2 /* Release */,
				6EB4E40C1BA8BCAD00D7B9D2 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		92CBD7231BED924F006E0892 /* Build configuration list for PBXAggregateTarget "libdispatch_tests_legacy" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				92CBD7241BED924F006E0892 /* Release */,
				92CBD7251BED924F006E0892 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		92F3FECB1BEC69E500025962 /* Build configuration list for PBXLegacyTarget "darwintests" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				92F3FECC1BEC69E500025962 /* Release */,
				92F3FECD1BEC69E500025962 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		C00B0E071C5AEBBE000330B3 /* Build configuration list for PBXNativeTarget "libdispatch dyld stub" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				C00B0E081C5AEBBE000330B3 /* Release */,
				C00B0E091C5AEBBE000330B3 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		C01866BA1C5973210040FC07 /* Build configuration list for PBXNativeTarget "libdispatch mp static" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				C01866BB1C5973210040FC07 /* Release */,
				C01866BC1C5973210040FC07 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		C927F35E10FD7F0B00C5AB8B /* Build configuration list for PBXAggregateTarget "libdispatch_tools" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				C927F35B10FD7F0600C5AB8B /* Release */,
				C927F35C10FD7F0600C5AB8B /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		E46DBC5414EE10C80001F9F6 /* Build configuration list for PBXNativeTarget "libdispatch up static" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				E46DBC5514EE10C80001F9F6 /* Release */,
				E46DBC5614EE10C80001F9F6 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		E49BB6EF1E70748100868613 /* Build configuration list for PBXNativeTarget "libdispatch alt resolved" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				E49BB6F01E70748100868613 /* Release */,
				E49BB6F11E70748100868613 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		E49F24D8125D57FA0057C971 /* Build configuration list for PBXNativeTarget "libdispatch no resolver" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				E49F24D9125D57FA0057C971 /* Release */,
				E49F24DA125D57FA0057C971 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		E4B515D3164B2DA300E003AF /* Build configuration list for PBXNativeTarget "libdispatch introspection" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				E4B515D4164B2DA300E003AF /* Release */,
				E4B515D5164B2DA300E003AF /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		E4EC11BC12514302000DDBD1 /* Build configuration list for PBXNativeTarget "libdispatch up resolved" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				E4EC11BD12514302000DDBD1 /* Release */,
				E4EC11BE12514302000DDBD1 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		E4EC122612514715000DDBD1 /* Build configuration list for PBXNativeTarget "libdispatch mp resolved" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				E4EC122712514715000DDBD1 /* Release */,
				E4EC122812514715000DDBD1 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 08FB7793FE84155DC02AAC07 /* Project object */;
}
