// !$*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;
		};
		6E43553E215B5D9D00C13177 /* libdispatch_introspection */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 6E435541215B5D9D00C13177 /* Build configuration list for PBXAggregateTarget "libdispatch_introspection" */;
			buildPhases = (
			);
			dependencies = (
				6EE5083B21701B9100833569 /* PBXTargetDependency */,
			);
			name = libdispatch_introspection;
			productName = libdispatch_introspection;
		};
		6EA833C22162D6380045EFDC /* libdispatch_introspection_Sim */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 6EA833C32162D6380045EFDC /* Build configuration list for PBXAggregateTarget "libdispatch_introspection_Sim" */;
			buildPhases = (
			);
			dependencies = (
				6EE5083D21701B9600833569 /* PBXTargetDependency */,
			);
			name = libdispatch_introspection_Sim;
			productName = libdispatch_introspection_Sim;
		};
		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;
		};
		9BEBA56F20127D3300E6FD0D /* libdispatch_tools_Sim */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 9BEBA57620127D3300E6FD0D /* Build configuration list for PBXAggregateTarget "libdispatch_tools_Sim" */;
			buildPhases = (
			);
			dependencies = (
				9BEBA57820127D4400E6FD0D /* PBXTargetDependency */,
			);
			name = libdispatch_tools_Sim;
			productName = libdispatch_tools_Sim;
		};
		C927F35A10FD7F0600C5AB8B /* libdispatch_tools */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = C927F35E10FD7F0B00C5AB8B /* Build configuration list for PBXAggregateTarget "libdispatch_tools" */;
			buildPhases = (
			);
			dependencies = (
				9B2A11A32032494E0060E7D4 /* PBXTargetDependency */,
				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 */; };
		2BBF5A66154B64F5002B20F9 /* 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 */; };
		6E4BACC51D48A42200B562AE /* 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 */; };
		6E4BACF91D49A04800B562AE /* 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 */; };
		6E5662E11F8C2E3E00BC2474 /* workqueue_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E5662DC1F8C2E3E00BC2474 /* workqueue_internal.h */; };
		6E5662E21F8C2E4F00BC2474 /* workqueue_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E5662DC1F8C2E3E00BC2474 /* workqueue_internal.h */; };
		6E5662E31F8C2E5100BC2474 /* workqueue_internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E5662DC1F8C2E3E00BC2474 /* workqueue_internal.h */; };
		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 */; };
		6E7018211F4EB51B0077C1DC /* workloop_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E70181C1F4EB51B0077C1DC /* workloop_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		6E7018221F4EB5220077C1DC /* workloop_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E70181C1F4EB51B0077C1DC /* workloop_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		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 */; };
		6E9956021C3B21990071D40C /* 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 */; };
		6E9C6CA720F9848100EA81C0 /* yield.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9C6CA220F9848000EA81C0 /* yield.c */; };
		6E9C6CA820F9848C00EA81C0 /* yield.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9C6CA220F9848000EA81C0 /* yield.c */; };
		6E9C6CA920F9848D00EA81C0 /* yield.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9C6CA220F9848000EA81C0 /* yield.c */; };
		6E9C6CAA20F9848D00EA81C0 /* yield.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9C6CA220F9848000EA81C0 /* yield.c */; };
		6E9C6CAB20F9848E00EA81C0 /* yield.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9C6CA220F9848000EA81C0 /* yield.c */; };
		6E9C6CAC20F9848E00EA81C0 /* yield.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9C6CA220F9848000EA81C0 /* yield.c */; };
		6E9C6CAD20F9848F00EA81C0 /* yield.c in Sources */ = {isa = PBXBuildFile; fileRef = 6E9C6CA220F9848000EA81C0 /* yield.c */; };
		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 */; };
		6EA9629B1D48622900759D53 /* 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 */; };
		6EA962A31D48625300759D53 /* 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 */; };
		6EBEC7E81BBDD324009B1596 /* 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 */; };
		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, ); }; };
		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 */; };
		6EF2CAB01C8899EB001ABE83 /* 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 */; };
		B683588F1FA77F5A00AA0D58 /* time_private.h in Headers */ = {isa = PBXBuildFile; fileRef = B683588A1FA77F4900AA0D58 /* time_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		B68358901FA77F5B00AA0D58 /* time_private.h in Headers */ = {isa = PBXBuildFile; fileRef = B683588A1FA77F4900AA0D58 /* time_private.h */; settings = {ATTRIBUTES = (Private, ); }; };
		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 */; };
		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 */; };
		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 */; };
		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 */; };
		E43A72871AF85BCD00BAA921 /* 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 */; };
		E44A8E6F1805C3E0009FFDB6 /* 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 */; };
		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 */; };
		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 */; };
		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 */; };
		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 */; };
		E4FC3267145F46C9002FBDDB /* object.m in Sources */ = {isa = PBXBuildFile; fileRef = E4FC3263145F46C9002FBDDB /* object.m */; };
		F7DC045B2060BBBE00C90737 /* target.h in Headers */ = {isa = PBXBuildFile; fileRef = F7DC045A2060BBBE00C90737 /* target.h */; };
		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;
		};
		6EE5083A21701B9100833569 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = E4B51595164B2DA300E003AF;
			remoteInfo = "libdispatch introspection";
		};
		6EE5083C21701B9600833569 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = E4B51595164B2DA300E003AF;
			remoteInfo = "libdispatch introspection";
		};
		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;
		};
		9B2A11A22032494E0060E7D4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 9B6A42E01FE098430000D146 /* queue-tip.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = 9BECABC71E944C0400ED341E;
			remoteInfo = "queue-tip";
		};
		9B2A11A92032494E0060E7D4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 9B6A42E01FE098430000D146 /* queue-tip.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = 9BECABC81E944C0400ED341E;
			remoteInfo = "queue-tip";
		};
		9BEBA57720127D4400E6FD0D /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = C927F35F10FD7F1000C5AB8B /* ddt.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = FCFA5A9F10D1AE050074F59A;
			remoteInfo = ddt;
		};
		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;
		};
		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 armv81 resolved";
		};
/* 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>"; };
		6E2464E21F5E67E20031ADD9 /* check-order.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "check-order.sh"; sourceTree = "<group>"; };
		6E29394C1FB9526E00FDAC90 /* libdispatch.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = libdispatch.plist; 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>"; };
		6E49BF2420E34B43002624FC /* libdispatch.clean */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = libdispatch.clean; sourceTree = "<group>"; };
		6E49BF2920E34B44002624FC /* libdispatch.dirty */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = libdispatch.dirty; 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>"; };
		6E5662DC1F8C2E3E00BC2474 /* workqueue_internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = workqueue_internal.h; sourceTree = "<group>"; };
		6E5662E41F8C2E5B00BC2474 /* workqueue.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = workqueue.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>"; };
		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>"; };
		6E70181C1F4EB51B0077C1DC /* workloop_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = workloop_private.h; 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>"; };
		6E9C6CA220F9848000EA81C0 /* yield.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = yield.c; path = shims/yield.c; 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; };
		9B6A42E01FE098430000D146 /* queue-tip.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "queue-tip.xcodeproj"; path = "tools/queue-tip/queue-tip.xcodeproj"; sourceTree = "<group>"; };
		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>"; };
		B683588A1FA77F4900AA0D58 /* time_private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = time_private.h; sourceTree = "<group>"; };
		B68358911FA77FFD00AA0D58 /* dispatch_time.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = dispatch_time.c; sourceTree = "<group>"; };
		B69878521F06F8790088F94F /* dispatch_signals.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = dispatch_signals.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>"; };
		B6FA01801F0AD522004479BF /* dispatch_pthread_root_queue.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = dispatch_pthread_root_queue.c; 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>"; };
		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_armv81.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libdispatch_armv81.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>"; };
		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>"; };
		E4FB8E90218CD7F8004B7A25 /* install-plists.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = "install-plists.sh"; 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>"; };
		F7DC045A2060BBBE00C90737 /* target.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = target.h; 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 */,
				9B6A42E01FE098430000D146 /* queue-tip.xcodeproj */,
				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 */,
				6E9C6CA220F9848000EA81C0 /* yield.c */,
				6EA283D01CAB93270041B2E0 /* libdispatch.codes */,
				6E29394C1FB9526E00FDAC90 /* libdispatch.plist */,
				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 */,
				E49BB6F21E70748100868613 /* libdispatch_armv81.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 */,
				6E5662DC1F8C2E3E00BC2474 /* workqueue_internal.h */,
			);
			path = event;
			sourceTree = "<group>";
		};
		6E5ACCAF1D3BF2A0007DA2B4 /* event */ = {
			isa = PBXGroup;
			children = (
				6E5ACCBD1D3C6719007DA2B4 /* event.c */,
				6E5ACCB01D3C4CFB007DA2B4 /* event_kevent.c */,
				6EA7937D1D456D1300929B1B /* event_epoll.c */,
				6E5662E41F8C2E5B00BC2474 /* workqueue.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 */,
				B6FA01801F0AD522004479BF /* dispatch_pthread_root_queue.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 */,
				B69878521F06F8790088F94F /* dispatch_signals.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 */,
				B68358911FA77FFD00AA0D58 /* dispatch_time.c */,
				6E326AE61C2392E8002A6505 /* dispatch_timer.c */,
				6E326A8F1C2245C4002A6505 /* dispatch_transform.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>";
		};
		9B6A42E11FE098430000D146 /* Products */ = {
			isa = PBXGroup;
			children = (
				9B2A11AA2032494E0060E7D4 /* queue-tip */,
			);
			name = Products;
			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 */,
				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 */,
				6E49BF2420E34B43002624FC /* libdispatch.clean */,
				6E49BF2920E34B44002624FC /* libdispatch.dirty */,
				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 = (
				6E2464E21F5E67E20031ADD9 /* check-order.sh */,
				E49F251D125D630A0057C971 /* install-manpages.sh */,
				E4EB4A2A14C36F4E00AA0FA9 /* install-headers.sh */,
				E421E5FB1716B8730090DC9B /* install-dtrace.sh */,
				E4FB8E90218CD7F8004B7A25 /* install-plists.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 */,
				F7DC045A2060BBBE00C90737 /* target.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 */,
				6E70181C1F4EB51B0077C1DC /* workloop_private.h */,
				FCEF047F0F5661960067401F /* source_private.h */,
				E4ECBAA415253C25002C313C /* mach_private.h */,
				B683588A1FA77F4900AA0D58 /* time_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 */,
				F7DC045B2060BBBE00C90737 /* target.h in Headers */,
				961B99360F3E83980006BC96 /* benchmark.h in Headers */,
				FC7BED9E0E8361E600161930 /* internal.h in Headers */,
				6E7018211F4EB51B0077C1DC /* workloop_private.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 */,
				B683588F1FA77F5A00AA0D58 /* time_private.h in Headers */,
				6E5662E11F8C2E3E00BC2474 /* workqueue_internal.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 */,
				6E7018221F4EB5220077C1DC /* workloop_private.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 */,
				6E5662E21F8C2E4F00BC2474 /* workqueue_internal.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 */,
				B68358901FA77F5B00AA0D58 /* time_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 */,
				6E5662E31F8C2E5100BC2474 /* workqueue_internal.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 */,
				6E2464DD1F5E67900031ADD9 /* Validate symbol ordering */,
				E4FB8E8F218CD68A004B7A25 /* Install Plists */,
			);
			buildRules = (
			);
			dependencies = (
				6EF0B27E1BA8C5BF007FA4F6 /* PBXTargetDependency */,
				E47D6ECD125FEBA10070D91C /* PBXTargetDependency */,
				E49BB6F81E7074C100868613 /* PBXTargetDependency */,
				C01866C21C597AEA0040FC07 /* PBXTargetDependency */,
				C00B0E141C5AEED6000330B3 /* PBXTargetDependency */,
			);
			name = libdispatch;
			productName = libdispatch;
			productReference = D2AAC046055464E500DB518D /* libdispatch.dylib */;
			productType = "com.apple.product-type.library.dynamic";
		};
		E49BB6CE1E70748100868613 /* libdispatch armv81 resolved */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = E49BB6EF1E70748100868613 /* Build configuration list for PBXNativeTarget "libdispatch armv81 resolved" */;
			buildPhases = (
				E49BB6CF1E70748100868613 /* Mig Headers */,
				E49BB6D01E70748100868613 /* Sources */,
				E49BB6EE1E70748100868613 /* Symlink normal variant */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = "libdispatch armv81 resolved";
			productName = libdispatch;
			productReference = E49BB6F21E70748100868613 /* libdispatch_armv81.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";
		};
		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;
				DefaultBuildSystemTypeForWorkspace = Latest;
				LastUpgradeCheck = 1010;
				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;
					};
					9BEBA56F20127D3300E6FD0D = {
						CreatedOnToolsVersion = 9.3;
						ProvisioningStyle = Automatic;
					};
					C00B0DF01C5AEBBE000330B3 = {
						ProvisioningStyle = Manual;
					};
					C01866A41C5973210040FC07 = {
						ProvisioningStyle = Manual;
					};
					C927F35A10FD7F0600C5AB8B = {
						ProvisioningStyle = Manual;
					};
					D2AAC045055464E500DB518D = {
						ProvisioningStyle = Manual;
					};
					E49F24A9125D57FA0057C971 = {
						ProvisioningStyle = Manual;
					};
					E4B51595164B2DA300E003AF = {
						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 */;
				},
				{
					ProductGroup = 9B6A42E11FE098430000D146 /* Products */;
					ProjectRef = 9B6A42E01FE098430000D146 /* queue-tip.xcodeproj */;
				},
			);
			projectRoot = "";
			targets = (
				D2AAC045055464E500DB518D /* libdispatch */,
				E49F24A9125D57FA0057C971 /* libdispatch no resolver */,
				E4EC121612514715000DDBD1 /* libdispatch mp resolved */,
				E49BB6CE1E70748100868613 /* libdispatch armv81 resolved */,
				E4B51595164B2DA300E003AF /* libdispatch introspection */,
				C01866A41C5973210040FC07 /* libdispatch mp static */,
				C00B0DF01C5AEBBE000330B3 /* libdispatch dyld stub */,
				6E43553E215B5D9D00C13177 /* libdispatch_introspection */,
				6EA833C22162D6380045EFDC /* libdispatch_introspection_Sim */,
				3F3C9326128E637B0042B1F7 /* libdispatch_Sim */,
				6E2ECAFD1C49C2FF00A30A32 /* libdispatch_kernel */,
				C927F35A10FD7F0600C5AB8B /* libdispatch_tools */,
				9BEBA56F20127D3300E6FD0D /* libdispatch_tools_Sim */,
				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;
		};
		9B2A11AA2032494E0060E7D4 /* queue-tip */ = {
			isa = PBXReferenceProxy;
			fileType = "compiled.mach-o.executable";
			path = "queue-tip";
			remoteRef = 9B2A11A92032494E0060E7D4 /* 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;
		};
		6E2464DD1F5E67900031ADD9 /* Validate symbol ordering */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 8;
			files = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodeconfig/libdispatch.order",
				"$(SRCROOT)/xcodeconfig/libdispatch.dirty",
				"$(SRCROOT)/xcodeconfig/libdispatch.clean",
			);
			name = "Validate symbol ordering";
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 1;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SRCROOT}/xcodescripts/check-order.sh\"\n";
			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}\"\n";
			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}\"\n";
			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;
		};
		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;
		};
		E4FB8E8F218CD68A004B7A25 /* Install Plists */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 8;
			files = (
			);
			inputFileListPaths = (
			);
			inputPaths = (
				"$(SRCROOT)/xcodescripts/install-plists.sh",
				"$(SRCROOT)/src/libdispatch.plist",
			);
			name = "Install Plists";
			outputFileListPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 1;
			shellPath = "/bin/bash -e";
			shellScript = ". \"${SCRIPT_INPUT_FILE_0}\"\n";
			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 = (
				6E9C6CAD20F9848F00EA81C0 /* yield.c in Sources */,
				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 = (
				6E9C6CAC20F9848E00EA81C0 /* yield.c in Sources */,
				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 */,
				6E9C6CA720F9848100EA81C0 /* yield.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;
		};
		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 */,
				6E9C6CAA20F9848D00EA81C0 /* yield.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 */,
				6E9C6CA820F9848C00EA81C0 /* yield.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 */,
				6E9C6CAB20F9848E00EA81C0 /* yield.c 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;
		};
		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 */,
				6E9C6CA920F9848D00EA81C0 /* yield.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 */;
		};
		6EE5083B21701B9100833569 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E4B51595164B2DA300E003AF /* libdispatch introspection */;
			targetProxy = 6EE5083A21701B9100833569 /* PBXContainerItemProxy */;
		};
		6EE5083D21701B9600833569 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E4B51595164B2DA300E003AF /* libdispatch introspection */;
			targetProxy = 6EE5083C21701B9600833569 /* 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 */;
		};
		9B2A11A32032494E0060E7D4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "queue-tip";
			targetProxy = 9B2A11A22032494E0060E7D4 /* PBXContainerItemProxy */;
		};
		9BEBA57820127D4400E6FD0D /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = ddt;
			targetProxy = 9BEBA57720127D4400E6FD0D /* 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 */;
		};
		E47D6ECD125FEBA10070D91C /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E4EC121612514715000DDBD1 /* libdispatch mp resolved */;
			targetProxy = E47D6ECC125FEBA10070D91C /* PBXContainerItemProxy */;
		};
		E49BB6F81E7074C100868613 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = E49BB6CE1E70748100868613 /* libdispatch armv81 resolved */;
			targetProxy = E49BB6F71E7074C100868613 /* 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;
		};
		6E435542215B5D9D00C13177 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		6E435543215B5D9D00C13177 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		6EA833C42162D6380045EFDC /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		6EA833C52162D6380045EFDC /* 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;
		};
		9BEBA57020127D3300E6FD0D /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		9BEBA57120127D3300E6FD0D /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			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;
		};
		E49BB6F01E70748100868613 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */;
			buildSettings = {
				DISPATCH_RESOLVED_VARIANT = armv81;
			};
			name = Release;
		};
		E49BB6F11E70748100868613 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = E40041A9125D70590022B135 /* libdispatch-resolved.xcconfig */;
			buildSettings = {
				DISPATCH_RESOLVED_VARIANT = armv81;
			};
			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;
		};
		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;
		};
		6E435541215B5D9D00C13177 /* Build configuration list for PBXAggregateTarget "libdispatch_introspection" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				6E435542215B5D9D00C13177 /* Release */,
				6E435543215B5D9D00C13177 /* Debug */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		6EA833C32162D6380045EFDC /* Build configuration list for PBXAggregateTarget "libdispatch_introspection_Sim" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				6EA833C42162D6380045EFDC /* Release */,
				6EA833C52162D6380045EFDC /* 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;
		};
		9BEBA57620127D3300E6FD0D /* Build configuration list for PBXAggregateTarget "libdispatch_tools_Sim" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				9BEBA57020127D3300E6FD0D /* Release */,
				9BEBA57120127D3300E6FD0D /* 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;
		};
		E49BB6EF1E70748100868613 /* Build configuration list for PBXNativeTarget "libdispatch armv81 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;
		};
		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 */;
}
