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

/* Begin PBXAggregateTarget section */
		5325BDD921DFF4F500A0DEE1 /* Apply Configuration to XCFileLists */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = 5325BDDD21DFF4F500A0DEE1 /* Build configuration list for PBXAggregateTarget "Apply Configuration to XCFileLists" */;
			buildPhases = (
				5325BDDE21DFF4F800A0DEE1 /* ShellScript */,
			);
			dependencies = (
			);
			name = "Apply Configuration to XCFileLists";
			productName = "Apply Configuration to XCFileLists";
		};
		A115CCB41B9D769D00E89159 /* All */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = A115CCB51B9D769D00E89159 /* Build configuration list for PBXAggregateTarget "All" */;
			buildPhases = (
			);
			dependencies = (
				A115CCBC1B9D76C400E89159 /* PBXTargetDependency */,
				A115CCBA1B9D76BF00E89159 /* PBXTargetDependency */,
			);
			name = All;
			productName = All;
		};
		BC952D7711F3BF5D003398B4 /* Derived Sources */ = {
			isa = PBXAggregateTarget;
			buildConfigurationList = BC952D7D11F3BF6A003398B4 /* Build configuration list for PBXAggregateTarget "Derived Sources" */;
			buildPhases = (
				BC952D8211F3BF78003398B4 /* Generate Derived Sources */,
			);
			dependencies = (
			);
			name = "Derived Sources";
			productName = "Derived Sources";
		};
/* End PBXAggregateTarget section */

/* Begin PBXBuildFile section */
		0F18E6E51D6B9B9E0027E547 /* UIScriptContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F18E6DD1D6B9AAF0027E547 /* UIScriptContext.cpp */; };
		0F18E6E61D6B9BA20027E547 /* UIScriptController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F18E6DF1D6B9AAF0027E547 /* UIScriptController.cpp */; };
		0F18E7181D6BC4560027E547 /* JSWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F18E7151D6BC4560027E547 /* JSWrapper.cpp */; };
		0F4B08731D5BE88D00EC1B78 /* Launch.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 0F4B08721D5BE88D00EC1B78 /* Launch.storyboard */; };
		0F5169CC1445222D00E0A9D7 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0F5169CA1445222D00E0A9D7 /* WebKit.framework */; };
		0F622CE91BBB3A1A00838AD3 /* TestOptions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F622CE81BBB3A1A00838AD3 /* TestOptions.cpp */; };
		0F6E89031D6BC5A2008ED0FA /* JSWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F18E7151D6BC4560027E547 /* JSWrapper.cpp */; };
		0F73B5511BA78968004B3EF4 /* JSUIScriptController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F73B54F1BA78968004B3EF4 /* JSUIScriptController.cpp */; };
		0F73B5521BA78968004B3EF4 /* JSUIScriptController.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F73B5501BA78968004B3EF4 /* JSUIScriptController.h */; };
		0F73B55C1BA89042004B3EF4 /* UIScriptControllerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F73B55B1BA89042004B3EF4 /* UIScriptControllerIOS.mm */; };
		0F87B6131BACAD82004EC572 /* UIScriptControllerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F87B6111BACAD6F004EC572 /* UIScriptControllerMac.mm */; };
		0F87B6171BACC4C0004EC572 /* TestRunnerWKWebView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F87B6151BACC4B9004EC572 /* TestRunnerWKWebView.mm */; };
		0FEB90A01905A834000FDBF3 /* InjectedBundlePageCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FEB909E1905A776000FDBF3 /* InjectedBundlePageCocoa.mm */; };
		0FEB90A51905C016000FDBF3 /* CrashReporterInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FEB90A31905BC6A000FDBF3 /* CrashReporterInfo.mm */; };
		0FEBF85A1BB61DF20028722D /* HIDEventGenerator.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FEBF8591BB61DF20028722D /* HIDEventGenerator.mm */; };
		1CA211C91BCA107300B2101F /* FontWithFeatures.otf in Resources */ = {isa = PBXBuildFile; fileRef = 1CA211C71BCA107300B2101F /* FontWithFeatures.otf */; };
		1CA211CA1BCA107300B2101F /* FontWithFeatures.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1CA211C81BCA107300B2101F /* FontWithFeatures.ttf */; };
		1CBA02961FD87DEC00179C7D /* FakeHelvetica-Helvetica2-500.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1CBA02951FD86EA100179C7D /* FakeHelvetica-Helvetica2-500.ttf */; };
		1CBA02971FD87DEE00179C7D /* FakeHelvetica-Helvetica2-400.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1CBA02921FD86EA100179C7D /* FakeHelvetica-Helvetica2-400.ttf */; };
		1CBA02981FD87DF000179C7D /* FakeHelvetica-Helvetica-500.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1CBA02931FD86EA100179C7D /* FakeHelvetica-Helvetica-500.ttf */; };
		1CBA02991FD87DF300179C7D /* FakeHelvetica-Helvetica-400.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1CBA02941FD86EA100179C7D /* FakeHelvetica-Helvetica-400.ttf */; };
		1CEA84DD203782ED00440D08 /* FakeHelvetica-ArmenianCharacter.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 1CEA84DC203782ED00440D08 /* FakeHelvetica-ArmenianCharacter.ttf */; };
		29210EAE144CACB700835BB5 /* AccessibilityUIElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29210EA9144CACB200835BB5 /* AccessibilityUIElement.cpp */; };
		29210EB0144CACBD00835BB5 /* AccessibilityController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29210EA2144CAAA500835BB5 /* AccessibilityController.cpp */; };
		29210EB4144CACD500835BB5 /* AccessibilityTextMarker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29210EB1144CACD400835BB5 /* AccessibilityTextMarker.cpp */; };
		29210EB5144CACD500835BB5 /* AccessibilityTextMarkerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 29210EB3144CACD400835BB5 /* AccessibilityTextMarkerMac.mm */; };
		29210EDA144CC3EA00835BB5 /* AccessibilityUIElementMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 29210EAB144CACB200835BB5 /* AccessibilityUIElementMac.mm */; };
		29210EDA144CC3EA00835BB6 /* AccessibilityCommonMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 29210EAB144CACB200835BB6 /* AccessibilityCommonMac.mm */; };
		29210EDB144CD47900835BB5 /* JSAccessibilityController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 583913D014335E95008307E5 /* JSAccessibilityController.cpp */; };
		29210EE1144CDB2600835BB5 /* JSAccessibilityUIElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29210EDB146727E711835BB5 /* JSAccessibilityUIElement.cpp */; };
		29A8FCCB145EF02E009045A6 /* JSAccessibilityTextMarker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29210EE1144CDE6789815EE5 /* JSAccessibilityTextMarker.cpp */; };
		29A8FCDD145F0337009045A6 /* JSAccessibilityTextMarkerRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29A8FCE1345E7021006AA5A6 /* JSAccessibilityTextMarkerRange.cpp */; };
		29A8FCE2145F037B009045A6 /* AccessibilityTextMarkerRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 29A8FCE1145F037B009045A6 /* AccessibilityTextMarkerRange.cpp */; };
		29A8FCE5145F0464009045A6 /* AccessibilityTextMarkerRangeMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 29A8FCE4145F0464009045A6 /* AccessibilityTextMarkerRangeMac.mm */; };
		2D058E0922E2EE2200E4C145 /* UIScriptControllerCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D058E0822E2EE2200E4C145 /* UIScriptControllerCocoa.h */; };
		2D058E0B22E2EF6D00E4C145 /* UIScriptControllerMac.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D058E0A22E2EF6D00E4C145 /* UIScriptControllerMac.h */; };
		2DB6187E1D7D58D400978D19 /* CoreGraphicsTestSPI.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DB6187D1D7D58D400978D19 /* CoreGraphicsTestSPI.h */; };
		2DD4C49A1D6E7D3B0007379C /* EventSerializerMac.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DD4C4981D6E7D3B0007379C /* EventSerializerMac.h */; };
		2DD4C49B1D6E7D3B0007379C /* EventSerializerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DD4C4991D6E7D3B0007379C /* EventSerializerMac.mm */; };
		2DFA98481D7F70CF00AFF2C9 /* SharedEventStreamsMac.h in Headers */ = {isa = PBXBuildFile; fileRef = 2DFA98461D7F70CF00AFF2C9 /* SharedEventStreamsMac.h */; };
		2DFA98491D7F70CF00AFF2C9 /* SharedEventStreamsMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DFA98471D7F70CF00AFF2C9 /* SharedEventStreamsMac.mm */; };
		2E2A765D2370C8D1008F9FFE /* PlatformViewHelpers.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E2A765C2370C8A0008F9FFE /* PlatformViewHelpers.mm */; };
		2E34C90018B68808000067BB /* WebKitTestRunnerInjectedBundle.bundle in Copy Plug-Ins */ = {isa = PBXBuildFile; fileRef = BC25186211D15D54002EBC01 /* WebKitTestRunnerInjectedBundle.bundle */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
		2E63ED8A1891AD7E002A7AFC /* AccessibilityControllerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E63ED751891ACE9002A7AFC /* AccessibilityControllerIOS.mm */; };
		2E63ED8B1891AD7E002A7AFC /* AccessibilityTextMarkerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E63ED771891ACE9002A7AFC /* AccessibilityTextMarkerIOS.mm */; };
		2E63ED8E1891AD7E002A7AFC /* EventSenderProxyIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E63ED7A1891ACE9002A7AFC /* EventSenderProxyIOS.mm */; };
		2E63ED8F1891AD7E002A7AFC /* InjectedBundleIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E63ED7B1891ACE9002A7AFC /* InjectedBundleIOS.mm */; };
		2E63ED911891ADAD002A7AFC /* PlatformWebViewIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2EE52D131890A9FB0010ED21 /* PlatformWebViewIOS.mm */; };
		2E63ED921891ADAD002A7AFC /* TestControllerIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2EE52D141890A9FB0010ED21 /* TestControllerIOS.mm */; };
		2E63ED941891ADAD002A7AFC /* mainIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2EE52D161890A9FB0010ED21 /* mainIOS.mm */; };
		2E63EDA11891B291002A7AFC /* AccessibilityUIElementIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E63ED781891ACE9002A7AFC /* AccessibilityUIElementIOS.mm */; };
		2E63EDA61891BDC0002A7AFC /* TestRunner.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC9981711D3F51E0017BCA2 /* TestRunner.cpp */; };
		2E749BF21891EBFA007FC175 /* EventSenderProxyIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2E63ED7A1891ACE9002A7AFC /* EventSenderProxyIOS.mm */; };
		31DA8A3D1E7205CC00E1DF2F /* IOSLayoutTestCommunication.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3148A0531E6F85B600D3B316 /* IOSLayoutTestCommunication.cpp */; };
		41C5378E21F13414008B1FAD /* TestWebsiteDataStoreDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41C5378D21F1333C008B1FAD /* TestWebsiteDataStoreDelegate.mm */; };
		41D5B62622DD9D36000F4C4A /* FakeHelvetica-SingleExtendedCharacter.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 41D5B62522DD9D36000F4C4A /* FakeHelvetica-SingleExtendedCharacter.ttf */; };
		4430AE191F82C4FD0099915A /* GeneratedTouchesDebugWindow.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4430AE171F82C4EE0099915A /* GeneratedTouchesDebugWindow.mm */; };
		51058AD51D678820009A538C /* libWebCoreTestSupport.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 41230E16138C78BF00BCCFCA /* libWebCoreTestSupport.dylib */; };
		51058AD61D678825009A538C /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0F5169CA1445222D00E0A9D7 /* WebKit.framework */; };
		5641E2D014335E95008307E5 /* JSTextInputController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5641E2CE14335E95008307E5 /* JSTextInputController.cpp */; };
		5664A49A14326384008881BE /* TextInputController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5664A49814326384008881BE /* TextInputController.cpp */; };
		5670B8281386FCA5002EB355 /* EventSenderProxy.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5670B8271386FCA5002EB355 /* EventSenderProxy.mm */; };
		57A0062E22976EEB00AD08BD /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 570E75A42152DA2C00324B6E /* Security.framework */; };
		57A0062F22976EF800AD08BD /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 570E75A42152DA2C00324B6E /* Security.framework */; };
		6510A78211EC643800410867 /* AHEM____.TTF in Resources */ = {isa = PBXBuildFile; fileRef = 6510A77711EC643800410867 /* AHEM____.TTF */; };
		6510A78411EC643800410867 /* WebKitWeightWatcher100.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A77911EC643800410867 /* WebKitWeightWatcher100.ttf */; };
		6510A78511EC643800410867 /* WebKitWeightWatcher200.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A77A11EC643800410867 /* WebKitWeightWatcher200.ttf */; };
		6510A78611EC643800410867 /* WebKitWeightWatcher300.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A77B11EC643800410867 /* WebKitWeightWatcher300.ttf */; };
		6510A78711EC643800410867 /* WebKitWeightWatcher400.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A77C11EC643800410867 /* WebKitWeightWatcher400.ttf */; };
		6510A78811EC643800410867 /* WebKitWeightWatcher500.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A77D11EC643800410867 /* WebKitWeightWatcher500.ttf */; };
		6510A78911EC643800410867 /* WebKitWeightWatcher600.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A77E11EC643800410867 /* WebKitWeightWatcher600.ttf */; };
		6510A78A11EC643800410867 /* WebKitWeightWatcher700.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A77F11EC643800410867 /* WebKitWeightWatcher700.ttf */; };
		6510A78B11EC643800410867 /* WebKitWeightWatcher800.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A78011EC643800410867 /* WebKitWeightWatcher800.ttf */; };
		6510A78C11EC643800410867 /* WebKitWeightWatcher900.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6510A78111EC643800410867 /* WebKitWeightWatcher900.ttf */; };
		65EB85A011EC67CC0034D300 /* ActivateFontsCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 65EB859F11EC67CC0034D300 /* ActivateFontsCocoa.mm */; };
		8034C6621487636400AC32E9 /* AccessibilityControllerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 8034C6611487636400AC32E9 /* AccessibilityControllerMac.mm */; };
		8097338A14874A5A008156D9 /* AccessibilityNotificationHandler.mm in Sources */ = {isa = PBXBuildFile; fileRef = 8097338914874A5A008156D9 /* AccessibilityNotificationHandler.mm */; };
		9376417A210D737200A3DAAE /* WebKitTestRunnerWindow.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93764176210D736000A3DAAE /* WebKitTestRunnerWindow.mm */; };
		A185103A1B9AE0DA00744AEB /* CrashReporterInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FEB90A31905BC6A000FDBF3 /* CrashReporterInfo.mm */; };
		A185103B1B9AE0E200744AEB /* TestControllerCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DCE2CD11B84524500C7F832 /* TestControllerCocoa.mm */; };
		A185103C1B9AE0FE00744AEB /* Options.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 841CC00D181185BF0042E9B6 /* Options.cpp */; };
		A185103D1B9AE10600744AEB /* TestInvocationCG.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC9192041333E4F8003011DC /* TestInvocationCG.cpp */; };
		A185103E1B9AE12200744AEB /* CyclicRedundancyCheck.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5322FB4113FDA0CD0041ABCC /* CyclicRedundancyCheck.cpp */; };
		A185103F1B9AE12900744AEB /* GeolocationProviderMock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26D758E5160BECDC00268472 /* GeolocationProviderMock.cpp */; };
		A18510401B9AE13100744AEB /* PixelDumpSupport.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5322FB4413FDA0EA0041ABCC /* PixelDumpSupport.cpp */; };
		A18510411B9AE13800744AEB /* TestController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC793430118F7F19005EA8E2 /* TestController.cpp */; };
		A18510421B9AE13E00744AEB /* TestInvocation.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCD7D2F711921278006DB7EE /* TestInvocation.cpp */; };
		A18510431B9AE14500744AEB /* WebNotificationProvider.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3164C8EF15D1ADA100EF1FE0 /* WebNotificationProvider.cpp */; };
		A18510441B9AE14A00744AEB /* WorkQueueManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4429FC5E1627089600F66D8B /* WorkQueueManager.cpp */; };
		A664BC7613A5F3A9009A7B25 /* libWebCoreTestSupport.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 41230E16138C78BF00BCCFCA /* libWebCoreTestSupport.dylib */; };
		BC14E4DB120E02D000826C0C /* GCController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC14E4D9120E02D000826C0C /* GCController.cpp */; };
		BC14E4EA120E03D800826C0C /* JSGCController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC14E4E8120E03D800826C0C /* JSGCController.cpp */; };
		BC25194011D15D8B002EBC01 /* JavaScriptCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BCDA2B991191051F00C3BC47 /* JavaScriptCore.framework */; };
		BC251A3E11D16831002EBC01 /* InjectedBundleMain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC25184611D15767002EBC01 /* InjectedBundleMain.cpp */; };
		BC793400118F7C84005EA8E2 /* main.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC7933FF118F7C84005EA8E2 /* main.mm */; };
		BC7934E811906846005EA8E2 /* PlatformWebViewMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC7934E711906846005EA8E2 /* PlatformWebViewMac.mm */; };
		BC8C795C11D2785D004535A1 /* TestControllerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC8C795B11D2785D004535A1 /* TestControllerMac.mm */; };
		BC8DAD7B1316D91000EC96FC /* InjectedBundleMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC8DAD771316D7B900EC96FC /* InjectedBundleMac.mm */; };
		BC8FD8CA120E527F00F3E71A /* EventSendingController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC8FD8C9120E527F00F3E71A /* EventSendingController.cpp */; };
		BC8FD8D2120E545B00F3E71A /* JSEventSendingController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC8FD8D0120E545B00F3E71A /* JSEventSendingController.cpp */; };
		BC952F1F11F3C652003398B4 /* JSTestRunner.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC952F1D11F3C652003398B4 /* JSTestRunner.cpp */; };
		BCC997A411D3C8F60017BCA2 /* InjectedBundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC997A011D3C8F60017BCA2 /* InjectedBundle.cpp */; };
		BCC997A511D3C8F60017BCA2 /* InjectedBundlePage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC997A211D3C8F60017BCA2 /* InjectedBundlePage.cpp */; };
		C0CE720B1247C93300BC0EC4 /* TestRunnerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = C0CE720A1247C93300BC0EC4 /* TestRunnerMac.mm */; };
		E132AA3A17CD5F1000611DF0 /* WebKitTestRunnerDraggingInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = E132AA3817CD5F1000611DF0 /* WebKitTestRunnerDraggingInfo.mm */; };
		E132AA3D17CE776F00611DF0 /* WebKitTestRunnerEvent.mm in Sources */ = {isa = PBXBuildFile; fileRef = E132AA3B17CE776F00611DF0 /* WebKitTestRunnerEvent.mm */; };
		E1C642C317CBCC7300D66A3C /* PoseAsClass.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1C642C117CBCC7300D66A3C /* PoseAsClass.mm */; };
		E1C642C617CBCD4C00D66A3C /* WebKitTestRunnerPasteboard.mm in Sources */ = {isa = PBXBuildFile; fileRef = E1C642C417CBCD4C00D66A3C /* WebKitTestRunnerPasteboard.mm */; };
		F44A531721B899E200DBB99C /* ClassMethodSwizzler.mm in Sources */ = {isa = PBXBuildFile; fileRef = F44A531421B899DA00DBB99C /* ClassMethodSwizzler.mm */; };
		F44A531821B899E500DBB99C /* InstanceMethodSwizzler.mm in Sources */ = {isa = PBXBuildFile; fileRef = F44A531621B899DA00DBB99C /* InstanceMethodSwizzler.mm */; };
		F46240B1217013E500917B16 /* UIScriptControllerCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = F46240AF2170128300917B16 /* UIScriptControllerCocoa.mm */; };
		F4C3578C20E8444600FA0748 /* LayoutTestSpellChecker.mm in Sources */ = {isa = PBXBuildFile; fileRef = F4C3578A20E8444000FA0748 /* LayoutTestSpellChecker.mm */; };
		F4FED324235823A3003C139C /* NSPasteboardAdditions.mm in Sources */ = {isa = PBXBuildFile; fileRef = F4FED3222358215E003C139C /* NSPasteboardAdditions.mm */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		A115CCB91B9D76BF00E89159 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 8DD76F960486AA7600D96B5E;
			remoteInfo = WebKitTestRunner;
		};
		A115CCBB1B9D76C400E89159 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = 2EE52CDF1890A9A80010ED21;
			remoteInfo = WebKitTestRunnerApp;
		};
		A18510311B9ADE5B00744AEB /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = BC25186111D15D54002EBC01;
			remoteInfo = WebKitTestRunnerInjectedBundle;
		};
		A18510331B9ADE6200744AEB /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = A18510261B9ADE4800744AEB;
			remoteInfo = "WebKitTestRunner (Library)";
		};
		A18510351B9ADE6D00744AEB /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = A18510261B9ADE4800744AEB;
			remoteInfo = "WebKitTestRunner (Library)";
		};
		BC952ED611F3C38B003398B4 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
			proxyType = 1;
			remoteGlobalIDString = BC952D7711F3BF5D003398B4;
			remoteInfo = "Derived Sources";
		};
/* End PBXContainerItemProxy section */

/* Begin PBXCopyFilesBuildPhase section */
		CEC209031D36E36A00261596 /* Copy Plug-Ins */ = {
			isa = PBXCopyFilesBuildPhase;
			buildActionMask = 2147483647;
			dstPath = "";
			dstSubfolderSpec = 13;
			files = (
				2E34C90018B68808000067BB /* WebKitTestRunnerInjectedBundle.bundle in Copy Plug-Ins */,
			);
			name = "Copy Plug-Ins";
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXCopyFilesBuildPhase section */

/* Begin PBXFileReference section */
		0F18E6DD1D6B9AAF0027E547 /* UIScriptContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = UIScriptContext.cpp; path = ../TestRunnerShared/UIScriptContext/UIScriptContext.cpp; sourceTree = "<group>"; };
		0F18E6DE1D6B9AAF0027E547 /* UIScriptContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UIScriptContext.h; path = ../TestRunnerShared/UIScriptContext/UIScriptContext.h; sourceTree = "<group>"; };
		0F18E6DF1D6B9AAF0027E547 /* UIScriptController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = UIScriptController.cpp; path = ../TestRunnerShared/UIScriptContext/UIScriptController.cpp; sourceTree = "<group>"; };
		0F18E6E01D6B9AAF0027E547 /* UIScriptController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UIScriptController.h; path = ../TestRunnerShared/UIScriptContext/UIScriptController.h; sourceTree = "<group>"; };
		0F18E6E31D6B9ABF0027E547 /* UIScriptController.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = UIScriptController.idl; path = ../TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl; sourceTree = "<group>"; };
		0F18E7141D6BC4560027E547 /* JSWrappable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = JSWrappable.h; path = ../TestRunnerShared/Bindings/JSWrappable.h; sourceTree = "<group>"; };
		0F18E7151D6BC4560027E547 /* JSWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = JSWrapper.cpp; path = ../TestRunnerShared/Bindings/JSWrapper.cpp; sourceTree = "<group>"; };
		0F18E7161D6BC4560027E547 /* JSWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = JSWrapper.h; path = ../TestRunnerShared/Bindings/JSWrapper.h; sourceTree = "<group>"; };
		0F2109C7189C650D00F879A3 /* BaseTarget.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = BaseTarget.xcconfig; sourceTree = "<group>"; };
		0F4B08721D5BE88D00EC1B78 /* Launch.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = Launch.storyboard; path = ios/Launch.storyboard; sourceTree = SOURCE_ROOT; };
		0F5169CA1445222D00E0A9D7 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = WebKit.framework; sourceTree = BUILT_PRODUCTS_DIR; };
		0F622CE81BBB3A1A00838AD3 /* TestOptions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TestOptions.cpp; sourceTree = "<group>"; };
		0F73B54F1BA78968004B3EF4 /* JSUIScriptController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSUIScriptController.cpp; sourceTree = "<group>"; };
		0F73B5501BA78968004B3EF4 /* JSUIScriptController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSUIScriptController.h; sourceTree = "<group>"; };
		0F73B5571BA7929E004B3EF4 /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
		0F73B55B1BA89042004B3EF4 /* UIScriptControllerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UIScriptControllerIOS.mm; sourceTree = "<group>"; };
		0F87B6111BACAD6F004EC572 /* UIScriptControllerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = UIScriptControllerMac.mm; sourceTree = "<group>"; };
		0F87B6141BACC4B9004EC572 /* TestRunnerWKWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestRunnerWKWebView.h; sourceTree = "<group>"; };
		0F87B6151BACC4B9004EC572 /* TestRunnerWKWebView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TestRunnerWKWebView.mm; sourceTree = "<group>"; };
		0FEB909E1905A776000FDBF3 /* InjectedBundlePageCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InjectedBundlePageCocoa.mm; sourceTree = "<group>"; };
		0FEB90A21905BC6A000FDBF3 /* CrashReporterInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CrashReporterInfo.h; sourceTree = "<group>"; };
		0FEB90A31905BC6A000FDBF3 /* CrashReporterInfo.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = CrashReporterInfo.mm; sourceTree = "<group>"; };
		0FEBF8581BB61DF20028722D /* HIDEventGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HIDEventGenerator.h; sourceTree = "<group>"; };
		0FEBF8591BB61DF20028722D /* HIDEventGenerator.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = HIDEventGenerator.mm; sourceTree = "<group>"; };
		1A3326051B75396500F89F62 /* TestOptions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TestOptions.h; sourceTree = "<group>"; };
		1CA211C71BCA107300B2101F /* FontWithFeatures.otf */ = {isa = PBXFileReference; lastKnownFileType = file; path = FontWithFeatures.otf; sourceTree = "<group>"; };
		1CA211C81BCA107300B2101F /* FontWithFeatures.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = FontWithFeatures.ttf; sourceTree = "<group>"; };
		1CBA02921FD86EA100179C7D /* FakeHelvetica-Helvetica2-400.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "FakeHelvetica-Helvetica2-400.ttf"; path = "fonts/FakeHelvetica-Helvetica2-400.ttf"; sourceTree = "<group>"; };
		1CBA02931FD86EA100179C7D /* FakeHelvetica-Helvetica-500.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "FakeHelvetica-Helvetica-500.ttf"; path = "fonts/FakeHelvetica-Helvetica-500.ttf"; sourceTree = "<group>"; };
		1CBA02941FD86EA100179C7D /* FakeHelvetica-Helvetica-400.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "FakeHelvetica-Helvetica-400.ttf"; path = "fonts/FakeHelvetica-Helvetica-400.ttf"; sourceTree = "<group>"; };
		1CBA02951FD86EA100179C7D /* FakeHelvetica-Helvetica2-500.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "FakeHelvetica-Helvetica2-500.ttf"; path = "fonts/FakeHelvetica-Helvetica2-500.ttf"; sourceTree = "<group>"; };
		1CEA84DC203782ED00440D08 /* FakeHelvetica-ArmenianCharacter.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "FakeHelvetica-ArmenianCharacter.ttf"; sourceTree = "<group>"; };
		26D758E5160BECDC00268472 /* GeolocationProviderMock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GeolocationProviderMock.cpp; sourceTree = "<group>"; };
		26D758E6160BECDD00268472 /* GeolocationProviderMock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GeolocationProviderMock.h; sourceTree = "<group>"; };
		29210EA2144CAAA500835BB5 /* AccessibilityController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AccessibilityController.cpp; sourceTree = "<group>"; };
		29210EA3144CAAA500835BB5 /* AccessibilityController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilityController.h; sourceTree = "<group>"; };
		29210EA8144CAB8800835BB5 /* AccessibilityController.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AccessibilityController.idl; sourceTree = "<group>"; };
		29210EA9144CACB200835BB5 /* AccessibilityUIElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AccessibilityUIElement.cpp; sourceTree = "<group>"; };
		29210EAA144CACB200835BB5 /* AccessibilityUIElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilityUIElement.h; sourceTree = "<group>"; };
		29210EAB144CACB200835BB5 /* AccessibilityUIElementMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityUIElementMac.mm; sourceTree = "<group>"; };
		29210EAB144CACB200835BB6 /* AccessibilityCommonMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityCommonMac.mm; sourceTree = "<group>"; };
		29210EB1144CACD400835BB5 /* AccessibilityTextMarker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AccessibilityTextMarker.cpp; sourceTree = "<group>"; };
		29210EB2144CACD400835BB5 /* AccessibilityTextMarker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilityTextMarker.h; sourceTree = "<group>"; };
		29210EB3144CACD400835BB5 /* AccessibilityTextMarkerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AccessibilityTextMarkerMac.mm; path = mac/AccessibilityTextMarkerMac.mm; sourceTree = "<group>"; };
		29210EDB146727E711835BB5 /* JSAccessibilityUIElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSAccessibilityUIElement.cpp; sourceTree = "<group>"; };
		29210EDB146727E811835BB5 /* JSAccessibilityUIElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSAccessibilityUIElement.h; sourceTree = "<group>"; };
		29210EDC144CD56E00835BB5 /* AccessibilityUIElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AccessibilityUIElement.idl; sourceTree = "<group>"; };
		29210EE1144CDE6789815EE5 /* JSAccessibilityTextMarker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSAccessibilityTextMarker.cpp; sourceTree = "<group>"; };
		29210EE1145CDE6789815EE5 /* JSAccessibilityTextMarker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSAccessibilityTextMarker.h; sourceTree = "<group>"; };
		299E2AA41E3DEE140065DC30 /* AccessibilityCommonMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilityCommonMac.h; sourceTree = "<group>"; };
		29A8FCC5145B93C6009045A6 /* AccessibilityTextMarker.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = AccessibilityTextMarker.idl; sourceTree = "<group>"; };
		29A8FCD2145EF8F2009045A6 /* AccessibilityTextMarkerRange.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = AccessibilityTextMarkerRange.idl; sourceTree = "<group>"; };
		29A8FCDF145F0358009045A6 /* AccessibilityTextMarkerRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilityTextMarkerRange.h; sourceTree = "<group>"; };
		29A8FCE1145F037B009045A6 /* AccessibilityTextMarkerRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AccessibilityTextMarkerRange.cpp; sourceTree = "<group>"; };
		29A8FCE1345E7021006AA5A6 /* JSAccessibilityTextMarkerRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSAccessibilityTextMarkerRange.cpp; sourceTree = "<group>"; };
		29A8FCE1345E7021006AA5A7 /* JSAccessibilityTextMarkerRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSAccessibilityTextMarkerRange.h; sourceTree = "<group>"; };
		29A8FCE4145F0464009045A6 /* AccessibilityTextMarkerRangeMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityTextMarkerRangeMac.mm; sourceTree = "<group>"; };
		2D058E0822E2EE2200E4C145 /* UIScriptControllerCocoa.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIScriptControllerCocoa.h; sourceTree = "<group>"; };
		2D058E0A22E2EF6D00E4C145 /* UIScriptControllerMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UIScriptControllerMac.h; sourceTree = "<group>"; };
		2D0BEE1722EAD1360092B738 /* UIScriptControllerIOS.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UIScriptControllerIOS.h; sourceTree = "<group>"; };
		2D0FF14A2192C78300C975D6 /* PencilKitTestSPI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = PencilKitTestSPI.h; path = ../TestRunnerShared/spi/PencilKitTestSPI.h; sourceTree = "<group>"; };
		2DB6187D1D7D58D400978D19 /* CoreGraphicsTestSPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CoreGraphicsTestSPI.h; path = ../TestRunnerShared/spi/CoreGraphicsTestSPI.h; sourceTree = "<group>"; };
		2DCE2CD11B84524500C7F832 /* TestControllerCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TestControllerCocoa.mm; sourceTree = "<group>"; };
		2DD4C4981D6E7D3B0007379C /* EventSerializerMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EventSerializerMac.h; path = mac/EventSerializerMac.h; sourceTree = "<group>"; };
		2DD4C4991D6E7D3B0007379C /* EventSerializerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = EventSerializerMac.mm; path = mac/EventSerializerMac.mm; sourceTree = "<group>"; };
		2DFA98461D7F70CF00AFF2C9 /* SharedEventStreamsMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SharedEventStreamsMac.h; path = mac/SharedEventStreamsMac.h; sourceTree = "<group>"; };
		2DFA98471D7F70CF00AFF2C9 /* SharedEventStreamsMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = SharedEventStreamsMac.mm; path = mac/SharedEventStreamsMac.mm; sourceTree = "<group>"; };
		2E2A765B2370C8A0008F9FFE /* PlatformViewHelpers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PlatformViewHelpers.h; path = ../TestRunnerShared/cocoa/PlatformViewHelpers.h; sourceTree = "<group>"; };
		2E2A765C2370C8A0008F9FFE /* PlatformViewHelpers.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PlatformViewHelpers.mm; path = ../TestRunnerShared/cocoa/PlatformViewHelpers.mm; sourceTree = "<group>"; };
		2E63ED751891ACE9002A7AFC /* AccessibilityControllerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityControllerIOS.mm; sourceTree = "<group>"; };
		2E63ED761891ACE9002A7AFC /* AccessibilityNotificationHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilityNotificationHandler.h; sourceTree = "<group>"; };
		2E63ED771891ACE9002A7AFC /* AccessibilityTextMarkerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityTextMarkerIOS.mm; sourceTree = "<group>"; };
		2E63ED781891ACE9002A7AFC /* AccessibilityUIElementIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityUIElementIOS.mm; sourceTree = "<group>"; };
		2E63ED7A1891ACE9002A7AFC /* EventSenderProxyIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EventSenderProxyIOS.mm; sourceTree = "<group>"; };
		2E63ED7B1891ACE9002A7AFC /* InjectedBundleIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InjectedBundleIOS.mm; sourceTree = "<group>"; };
		2EE52CE01890A9A80010ED21 /* WebKitTestRunnerApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WebKitTestRunnerApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
		2EE52CE21890A9A80010ED21 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
		2EE52CE41890A9A80010ED21 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
		2EE52CEA1890A9A80010ED21 /* WebKitTestRunnerApp-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "WebKitTestRunnerApp-Info.plist"; path = "WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist"; sourceTree = "<group>"; };
		2EE52D131890A9FB0010ED21 /* PlatformWebViewIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PlatformWebViewIOS.mm; sourceTree = "<group>"; };
		2EE52D141890A9FB0010ED21 /* TestControllerIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TestControllerIOS.mm; sourceTree = "<group>"; };
		2EE52D161890A9FB0010ED21 /* mainIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = mainIOS.mm; path = ../ios/mainIOS.mm; sourceTree = "<group>"; };
		3110BE0F15BA011400D216AC /* WebNotificationProvider.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebNotificationProvider.h; sourceTree = "<group>"; };
		311183AA212B1AC70077BCE0 /* WebKitTestRunnerApp-watchOS.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = "WebKitTestRunnerApp-watchOS.entitlements"; sourceTree = "<group>"; };
		3148A0531E6F85B600D3B316 /* IOSLayoutTestCommunication.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IOSLayoutTestCommunication.cpp; path = ../TestRunnerShared/IOSLayoutTestCommunication.cpp; sourceTree = "<group>"; };
		3148A0541E6F85B600D3B316 /* IOSLayoutTestCommunication.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IOSLayoutTestCommunication.h; path = ../TestRunnerShared/IOSLayoutTestCommunication.h; sourceTree = "<group>"; };
		3164C8EF15D1ADA100EF1FE0 /* WebNotificationProvider.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebNotificationProvider.cpp; sourceTree = "<group>"; };
		378D442213346D00006A777B /* config.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = config.h; sourceTree = "<group>"; };
		41230E16138C78BF00BCCFCA /* libWebCoreTestSupport.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; path = libWebCoreTestSupport.dylib; sourceTree = BUILT_PRODUCTS_DIR; };
		4181731B138AD39D0057AAA4 /* WebCoreTestSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebCoreTestSupport.h; path = WebCoreTestSupport/WebCoreTestSupport.h; sourceTree = BUILT_PRODUCTS_DIR; };
		41C5378C21F1333C008B1FAD /* TestWebsiteDataStoreDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestWebsiteDataStoreDelegate.h; sourceTree = "<group>"; };
		41C5378D21F1333C008B1FAD /* TestWebsiteDataStoreDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TestWebsiteDataStoreDelegate.mm; sourceTree = "<group>"; };
		41D5B62522DD9D36000F4C4A /* FakeHelvetica-SingleExtendedCharacter.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "FakeHelvetica-SingleExtendedCharacter.ttf"; path = "fonts/FakeHelvetica-SingleExtendedCharacter.ttf"; sourceTree = "<group>"; };
		4429FC5E1627089600F66D8B /* WorkQueueManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WorkQueueManager.cpp; sourceTree = "<group>"; };
		4429FC611627089600F66D8B /* WorkQueueManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WorkQueueManager.h; sourceTree = "<group>"; };
		4430AE171F82C4EE0099915A /* GeneratedTouchesDebugWindow.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = GeneratedTouchesDebugWindow.mm; sourceTree = "<group>"; };
		4430AE181F82C4EF0099915A /* GeneratedTouchesDebugWindow.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedTouchesDebugWindow.h; sourceTree = "<group>"; };
		49AEEF692407278200C87E4C /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		5322FB4113FDA0CD0041ABCC /* CyclicRedundancyCheck.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CyclicRedundancyCheck.cpp; sourceTree = "<group>"; };
		5322FB4213FDA0CD0041ABCC /* CyclicRedundancyCheck.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CyclicRedundancyCheck.h; sourceTree = "<group>"; };
		5322FB4413FDA0EA0041ABCC /* PixelDumpSupport.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PixelDumpSupport.cpp; sourceTree = "<group>"; };
		5322FB4513FDA0EA0041ABCC /* PixelDumpSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PixelDumpSupport.h; sourceTree = "<group>"; };
		5641E2CE14335E95008307E5 /* JSTextInputController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSTextInputController.cpp; sourceTree = "<group>"; };
		5641E2CF14335E95008307E5 /* JSTextInputController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSTextInputController.h; sourceTree = "<group>"; };
		5664A49614326377008881BE /* TextInputController.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = TextInputController.idl; sourceTree = "<group>"; };
		5664A49814326384008881BE /* TextInputController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextInputController.cpp; sourceTree = "<group>"; };
		5664A49914326384008881BE /* TextInputController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextInputController.h; sourceTree = "<group>"; };
		5670B8261386FC13002EB355 /* EventSenderProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventSenderProxy.h; sourceTree = "<group>"; };
		5670B8271386FCA5002EB355 /* EventSenderProxy.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EventSenderProxy.mm; sourceTree = "<group>"; };
		570E75A42152DA2C00324B6E /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; };
		57A0062C22976E4D00AD08BD /* WebKitTestRunner.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = WebKitTestRunner.entitlements; sourceTree = "<group>"; };
		583913D014335E95008307E5 /* JSAccessibilityController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSAccessibilityController.cpp; sourceTree = "<group>"; };
		583913D114335E95008307E5 /* JSAccessibilityController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSAccessibilityController.h; sourceTree = "<group>"; };
		6510A77711EC643800410867 /* AHEM____.TTF */ = {isa = PBXFileReference; lastKnownFileType = file; name = "AHEM____.TTF"; path = "fonts/AHEM____.TTF"; sourceTree = "<group>"; };
		6510A77911EC643800410867 /* WebKitWeightWatcher100.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher100.ttf; path = fonts/WebKitWeightWatcher100.ttf; sourceTree = "<group>"; };
		6510A77A11EC643800410867 /* WebKitWeightWatcher200.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher200.ttf; path = fonts/WebKitWeightWatcher200.ttf; sourceTree = "<group>"; };
		6510A77B11EC643800410867 /* WebKitWeightWatcher300.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher300.ttf; path = fonts/WebKitWeightWatcher300.ttf; sourceTree = "<group>"; };
		6510A77C11EC643800410867 /* WebKitWeightWatcher400.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher400.ttf; path = fonts/WebKitWeightWatcher400.ttf; sourceTree = "<group>"; };
		6510A77D11EC643800410867 /* WebKitWeightWatcher500.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher500.ttf; path = fonts/WebKitWeightWatcher500.ttf; sourceTree = "<group>"; };
		6510A77E11EC643800410867 /* WebKitWeightWatcher600.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher600.ttf; path = fonts/WebKitWeightWatcher600.ttf; sourceTree = "<group>"; };
		6510A77F11EC643800410867 /* WebKitWeightWatcher700.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher700.ttf; path = fonts/WebKitWeightWatcher700.ttf; sourceTree = "<group>"; };
		6510A78011EC643800410867 /* WebKitWeightWatcher800.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher800.ttf; path = fonts/WebKitWeightWatcher800.ttf; sourceTree = "<group>"; };
		6510A78111EC643800410867 /* WebKitWeightWatcher900.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = WebKitWeightWatcher900.ttf; path = fonts/WebKitWeightWatcher900.ttf; sourceTree = "<group>"; };
		65EB859D11EC67CC0034D300 /* ActivateFonts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActivateFonts.h; sourceTree = "<group>"; };
		65EB859F11EC67CC0034D300 /* ActivateFontsCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ActivateFontsCocoa.mm; sourceTree = "<group>"; };
		8034C6611487636400AC32E9 /* AccessibilityControllerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AccessibilityControllerMac.mm; sourceTree = "<group>"; };
		8097338814874A5A008156D9 /* AccessibilityNotificationHandler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AccessibilityNotificationHandler.h; path = mac/AccessibilityNotificationHandler.h; sourceTree = "<group>"; };
		8097338914874A5A008156D9 /* AccessibilityNotificationHandler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AccessibilityNotificationHandler.mm; path = mac/AccessibilityNotificationHandler.mm; sourceTree = "<group>"; };
		841CC00D181185BF0042E9B6 /* Options.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Options.cpp; sourceTree = "<group>"; };
		841CC00E181185BF0042E9B6 /* Options.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Options.h; sourceTree = "<group>"; };
		8DD76FA10486AA7600D96B5E /* WebKitTestRunner */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = WebKitTestRunner; sourceTree = BUILT_PRODUCTS_DIR; };
		93764176210D736000A3DAAE /* WebKitTestRunnerWindow.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebKitTestRunnerWindow.mm; sourceTree = "<group>"; };
		93764177210D736100A3DAAE /* WebKitTestRunnerWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitTestRunnerWindow.h; sourceTree = "<group>"; };
		9B0D132E2036D346008FC8FB /* WebKitTestRunnerApp-iOS.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = "WebKitTestRunnerApp-iOS.entitlements"; sourceTree = "<group>"; };
		9B36A270209453A0003E0651 /* WhatToDump.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WhatToDump.h; sourceTree = "<group>"; };
		A18510271B9ADE4800744AEB /* libWebKitTestRunner.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libWebKitTestRunner.a; sourceTree = BUILT_PRODUCTS_DIR; };
		A18510381B9ADF2200744AEB /* WebKitTestRunner.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = WebKitTestRunner.xcconfig; sourceTree = "<group>"; };
		A18510391B9ADFF800744AEB /* WebKitTestRunnerApp.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = WebKitTestRunnerApp.xcconfig; sourceTree = "<group>"; };
		A1B89B94221E026B00EB4CEA /* SDKVariant.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = SDKVariant.xcconfig; sourceTree = "<group>"; };
		BC14E4D8120E02D000826C0C /* GCController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GCController.h; sourceTree = "<group>"; };
		BC14E4D9120E02D000826C0C /* GCController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = GCController.cpp; sourceTree = "<group>"; };
		BC14E4E1120E032000826C0C /* GCController.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = GCController.idl; sourceTree = "<group>"; };
		BC14E4E8120E03D800826C0C /* JSGCController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSGCController.cpp; sourceTree = "<group>"; };
		BC14E4E9120E03D800826C0C /* JSGCController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSGCController.h; sourceTree = "<group>"; };
		BC25184611D15767002EBC01 /* InjectedBundleMain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundleMain.cpp; sourceTree = "<group>"; };
		BC25186211D15D54002EBC01 /* WebKitTestRunnerInjectedBundle.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WebKitTestRunnerInjectedBundle.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
		BC25186311D15D54002EBC01 /* InjectedBundle-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "InjectedBundle-Info.plist"; sourceTree = "<group>"; };
		BC25197111D15E61002EBC01 /* InjectedBundle.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = InjectedBundle.xcconfig; sourceTree = "<group>"; };
		BC251A1711D16774002EBC01 /* WebKitTestRunnerPrefix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitTestRunnerPrefix.h; sourceTree = "<group>"; };
		BC251A1811D16795002EBC01 /* WebKitTestRunnerLibrary.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = WebKitTestRunnerLibrary.xcconfig; sourceTree = "<group>"; };
		BC7933FF118F7C84005EA8E2 /* main.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = main.mm; sourceTree = "<group>"; };
		BC793426118F7D3C005EA8E2 /* Base.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Base.xcconfig; sourceTree = "<group>"; };
		BC793427118F7DAF005EA8E2 /* DebugRelease.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = DebugRelease.xcconfig; sourceTree = "<group>"; };
		BC79342F118F7F19005EA8E2 /* TestController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestController.h; sourceTree = "<group>"; };
		BC793430118F7F19005EA8E2 /* TestController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TestController.cpp; sourceTree = "<group>"; };
		BC7934A411906584005EA8E2 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; };
		BC7934DD119066EC005EA8E2 /* PlatformWebView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlatformWebView.h; sourceTree = "<group>"; };
		BC7934E711906846005EA8E2 /* PlatformWebViewMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PlatformWebViewMac.mm; sourceTree = "<group>"; };
		BC8C795B11D2785D004535A1 /* TestControllerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TestControllerMac.mm; sourceTree = "<group>"; };
		BC8DAD771316D7B900EC96FC /* InjectedBundleMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InjectedBundleMac.mm; sourceTree = "<group>"; };
		BC8FD8C8120E527F00F3E71A /* EventSendingController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventSendingController.h; sourceTree = "<group>"; };
		BC8FD8C9120E527F00F3E71A /* EventSendingController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EventSendingController.cpp; sourceTree = "<group>"; };
		BC8FD8CB120E52B000F3E71A /* EventSendingController.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = EventSendingController.idl; sourceTree = "<group>"; };
		BC8FD8D0120E545B00F3E71A /* JSEventSendingController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSEventSendingController.cpp; sourceTree = "<group>"; };
		BC8FD8D1120E545B00F3E71A /* JSEventSendingController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSEventSendingController.h; sourceTree = "<group>"; };
		BC9192041333E4F8003011DC /* TestInvocationCG.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TestInvocationCG.cpp; path = cg/TestInvocationCG.cpp; sourceTree = "<group>"; };
		BC952EC511F3C10F003398B4 /* DerivedSources.make */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DerivedSources.make; sourceTree = "<group>"; };
		BC952ED211F3C29F003398B4 /* TestRunner.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = TestRunner.idl; sourceTree = "<group>"; };
		BC952ED311F3C318003398B4 /* CodeGeneratorTestRunner.pm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; path = CodeGeneratorTestRunner.pm; sourceTree = "<group>"; };
		BC952F1D11F3C652003398B4 /* JSTestRunner.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSTestRunner.cpp; sourceTree = "<group>"; };
		BC952F1E11F3C652003398B4 /* JSTestRunner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSTestRunner.h; sourceTree = "<group>"; };
		BC99A4841208901A007E9F08 /* StringFunctions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StringFunctions.h; sourceTree = "<group>"; };
		BCC997A011D3C8F60017BCA2 /* InjectedBundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundle.cpp; sourceTree = "<group>"; };
		BCC997A111D3C8F60017BCA2 /* InjectedBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundle.h; sourceTree = "<group>"; };
		BCC997A211D3C8F60017BCA2 /* InjectedBundlePage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundlePage.cpp; sourceTree = "<group>"; };
		BCC997A311D3C8F60017BCA2 /* InjectedBundlePage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundlePage.h; sourceTree = "<group>"; };
		BCC9981611D3F51E0017BCA2 /* TestRunner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestRunner.h; sourceTree = "<group>"; };
		BCC9981711D3F51E0017BCA2 /* TestRunner.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TestRunner.cpp; sourceTree = "<group>"; };
		BCD7D2F611921278006DB7EE /* TestInvocation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestInvocation.h; sourceTree = "<group>"; };
		BCD7D2F711921278006DB7EE /* TestInvocation.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TestInvocation.cpp; sourceTree = "<group>"; };
		BCDA2B991191051F00C3BC47 /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = JavaScriptCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
		C0CE720A1247C93300BC0EC4 /* TestRunnerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = TestRunnerMac.mm; path = mac/TestRunnerMac.mm; sourceTree = "<group>"; };
		E132AA3817CD5F1000611DF0 /* WebKitTestRunnerDraggingInfo.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebKitTestRunnerDraggingInfo.mm; sourceTree = "<group>"; };
		E132AA3917CD5F1000611DF0 /* WebKitTestRunnerDraggingInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitTestRunnerDraggingInfo.h; sourceTree = "<group>"; };
		E132AA3B17CE776F00611DF0 /* WebKitTestRunnerEvent.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebKitTestRunnerEvent.mm; sourceTree = "<group>"; };
		E132AA3C17CE776F00611DF0 /* WebKitTestRunnerEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitTestRunnerEvent.h; sourceTree = "<group>"; };
		E1BA671D1742DA5A00C20251 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
		E1C642C117CBCC7300D66A3C /* PoseAsClass.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PoseAsClass.mm; sourceTree = "<group>"; };
		E1C642C217CBCC7300D66A3C /* PoseAsClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PoseAsClass.h; sourceTree = "<group>"; };
		E1C642C417CBCD4C00D66A3C /* WebKitTestRunnerPasteboard.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebKitTestRunnerPasteboard.mm; sourceTree = "<group>"; };
		E1C642C517CBCD4C00D66A3C /* WebKitTestRunnerPasteboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitTestRunnerPasteboard.h; sourceTree = "<group>"; };
		F44A531321B899DA00DBB99C /* InstanceMethodSwizzler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = InstanceMethodSwizzler.h; path = ../TestRunnerShared/cocoa/InstanceMethodSwizzler.h; sourceTree = "<group>"; };
		F44A531421B899DA00DBB99C /* ClassMethodSwizzler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = ClassMethodSwizzler.mm; path = ../TestRunnerShared/cocoa/ClassMethodSwizzler.mm; sourceTree = "<group>"; };
		F44A531521B899DA00DBB99C /* ClassMethodSwizzler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ClassMethodSwizzler.h; path = ../TestRunnerShared/cocoa/ClassMethodSwizzler.h; sourceTree = "<group>"; };
		F44A531621B899DA00DBB99C /* InstanceMethodSwizzler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = InstanceMethodSwizzler.mm; path = ../TestRunnerShared/cocoa/InstanceMethodSwizzler.mm; sourceTree = "<group>"; };
		F46240AF2170128300917B16 /* UIScriptControllerCocoa.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = UIScriptControllerCocoa.mm; sourceTree = "<group>"; };
		F4C3578A20E8444000FA0748 /* LayoutTestSpellChecker.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = LayoutTestSpellChecker.mm; path = ../TestRunnerShared/cocoa/LayoutTestSpellChecker.mm; sourceTree = "<group>"; };
		F4C3578B20E8444000FA0748 /* LayoutTestSpellChecker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LayoutTestSpellChecker.h; path = ../TestRunnerShared/cocoa/LayoutTestSpellChecker.h; sourceTree = "<group>"; };
		F4FED3212358215E003C139C /* NSPasteboardAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NSPasteboardAdditions.h; path = ../TestRunnerShared/mac/NSPasteboardAdditions.h; sourceTree = "<group>"; };
		F4FED3222358215E003C139C /* NSPasteboardAdditions.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = NSPasteboardAdditions.mm; path = ../TestRunnerShared/mac/NSPasteboardAdditions.mm; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		2EE52CDD1890A9A80010ED21 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				57A0062F22976EF800AD08BD /* Security.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		8DD76F9B0486AA7600D96B5E /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				51058AD51D678820009A538C /* libWebCoreTestSupport.dylib in Frameworks */,
				57A0062E22976EEB00AD08BD /* Security.framework in Frameworks */,
				51058AD61D678825009A538C /* WebKit.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		A18510241B9ADE4800744AEB /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		BC25186011D15D54002EBC01 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				BC25194011D15D8B002EBC01 /* JavaScriptCore.framework in Frameworks */,
				A664BC7613A5F3A9009A7B25 /* libWebCoreTestSupport.dylib in Frameworks */,
				0F5169CC1445222D00E0A9D7 /* WebKit.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		08FB7794FE84155DC02AAC07 /* WebKitTestRunner */ = {
			isa = PBXGroup;
			children = (
				49AEEF692407278200C87E4C /* Info.plist */,
				0F18E71A1D6BC4BC0027E547 /* TestRunnerShared */,
				BC952EC511F3C10F003398B4 /* DerivedSources.make */,
				2EE52CEA1890A9A80010ED21 /* WebKitTestRunnerApp-Info.plist */,
				BC99CBF11207642D00FDEE76 /* Shared */,
				08FB7795FE84155DC02AAC07 /* TestRunner */,
				BC25183511D1571D002EBC01 /* InjectedBundle */,
				BC793401118F7C8A005EA8E2 /* Configurations */,
				08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */,
				BC25194411D15DBE002EBC01 /* Resources */,
				2EE52CE81890A9A80010ED21 /* WebKitTestRunnerApp */,
				2EE52CE11890A9A80010ED21 /* Frameworks */,
				1AB674ADFE9D54B511CA2CBB /* Products */,
			);
			name = WebKitTestRunner;
			sourceTree = "<group>";
		};
		08FB7795FE84155DC02AAC07 /* TestRunner */ = {
			isa = PBXGroup;
			children = (
				BC9192021333E4CD003011DC /* cg */,
				0FEB90A11905BC4A000FDBF3 /* cocoa */,
				2EE52D121890A9FB0010ED21 /* ios */,
				BC7933FE118F7C74005EA8E2 /* mac */,
				5322FB4113FDA0CD0041ABCC /* CyclicRedundancyCheck.cpp */,
				5322FB4213FDA0CD0041ABCC /* CyclicRedundancyCheck.h */,
				5670B8261386FC13002EB355 /* EventSenderProxy.h */,
				26D758E5160BECDC00268472 /* GeolocationProviderMock.cpp */,
				26D758E6160BECDD00268472 /* GeolocationProviderMock.h */,
				841CC00D181185BF0042E9B6 /* Options.cpp */,
				841CC00E181185BF0042E9B6 /* Options.h */,
				5322FB4413FDA0EA0041ABCC /* PixelDumpSupport.cpp */,
				5322FB4513FDA0EA0041ABCC /* PixelDumpSupport.h */,
				BC7934DD119066EC005EA8E2 /* PlatformWebView.h */,
				BC793430118F7F19005EA8E2 /* TestController.cpp */,
				BC79342F118F7F19005EA8E2 /* TestController.h */,
				BCD7D2F711921278006DB7EE /* TestInvocation.cpp */,
				BCD7D2F611921278006DB7EE /* TestInvocation.h */,
				0F622CE81BBB3A1A00838AD3 /* TestOptions.cpp */,
				1A3326051B75396500F89F62 /* TestOptions.h */,
				BC251A1711D16774002EBC01 /* WebKitTestRunnerPrefix.h */,
				3164C8EF15D1ADA100EF1FE0 /* WebNotificationProvider.cpp */,
				3110BE0F15BA011400D216AC /* WebNotificationProvider.h */,
				4429FC5E1627089600F66D8B /* WorkQueueManager.cpp */,
				4429FC611627089600F66D8B /* WorkQueueManager.h */,
			);
			name = TestRunner;
			sourceTree = "<group>";
		};
		08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */ = {
			isa = PBXGroup;
			children = (
				E1BA671D1742DA5A00C20251 /* Carbon.framework */,
				BC7934A411906584005EA8E2 /* Cocoa.framework */,
				BCDA2B991191051F00C3BC47 /* JavaScriptCore.framework */,
				41230E16138C78BF00BCCFCA /* libWebCoreTestSupport.dylib */,
				4181731B138AD39D0057AAA4 /* WebCoreTestSupport.h */,
				0F5169CA1445222D00E0A9D7 /* WebKit.framework */,
			);
			name = "External Frameworks and Libraries";
			sourceTree = "<group>";
		};
		0F18E71A1D6BC4BC0027E547 /* TestRunnerShared */ = {
			isa = PBXGroup;
			children = (
				0F18E71B1D6BC4E60027E547 /* Bindings */,
				F4B6C31620E84369008AC225 /* cocoa */,
				F4FED31D23582120003C139C /* mac */,
				0F73B5471BA782FE004B3EF4 /* UIScriptContext */,
				3148A0531E6F85B600D3B316 /* IOSLayoutTestCommunication.cpp */,
				3148A0541E6F85B600D3B316 /* IOSLayoutTestCommunication.h */,
			);
			name = TestRunnerShared;
			sourceTree = "<group>";
		};
		0F18E71B1D6BC4E60027E547 /* Bindings */ = {
			isa = PBXGroup;
			children = (
				0F18E7141D6BC4560027E547 /* JSWrappable.h */,
				0F18E7151D6BC4560027E547 /* JSWrapper.cpp */,
				0F18E7161D6BC4560027E547 /* JSWrapper.h */,
			);
			name = Bindings;
			sourceTree = "<group>";
		};
		0F73B5471BA782FE004B3EF4 /* UIScriptContext */ = {
			isa = PBXGroup;
			children = (
				0F73B54B1BA78350004B3EF4 /* Bindings */,
				0F73B54E1BA78954004B3EF4 /* Derived Sources */,
				2DD4C4971D6E7D3B0007379C /* Event Serialization */,
				2DB6187F1D7D598800978D19 /* spi */,
				0F18E6DD1D6B9AAF0027E547 /* UIScriptContext.cpp */,
				0F18E6DE1D6B9AAF0027E547 /* UIScriptContext.h */,
				0F18E6DF1D6B9AAF0027E547 /* UIScriptController.cpp */,
				0F18E6E01D6B9AAF0027E547 /* UIScriptController.h */,
			);
			name = UIScriptContext;
			sourceTree = "<group>";
		};
		0F73B54B1BA78350004B3EF4 /* Bindings */ = {
			isa = PBXGroup;
			children = (
				0F18E6E31D6B9ABF0027E547 /* UIScriptController.idl */,
			);
			name = Bindings;
			sourceTree = "<group>";
		};
		0F73B54E1BA78954004B3EF4 /* Derived Sources */ = {
			isa = PBXGroup;
			children = (
				0F73B54F1BA78968004B3EF4 /* JSUIScriptController.cpp */,
				0F73B5501BA78968004B3EF4 /* JSUIScriptController.h */,
			);
			name = "Derived Sources";
			path = DerivedSources/WebKitTestRunner;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		0FEB909D1905A75D000FDBF3 /* cocoa */ = {
			isa = PBXGroup;
			children = (
				65EB859F11EC67CC0034D300 /* ActivateFontsCocoa.mm */,
				0FEB909E1905A776000FDBF3 /* InjectedBundlePageCocoa.mm */,
			);
			path = cocoa;
			sourceTree = "<group>";
		};
		0FEB90A11905BC4A000FDBF3 /* cocoa */ = {
			isa = PBXGroup;
			children = (
				0FEB90A21905BC6A000FDBF3 /* CrashReporterInfo.h */,
				0FEB90A31905BC6A000FDBF3 /* CrashReporterInfo.mm */,
				2DCE2CD11B84524500C7F832 /* TestControllerCocoa.mm */,
				0F87B6141BACC4B9004EC572 /* TestRunnerWKWebView.h */,
				0F87B6151BACC4B9004EC572 /* TestRunnerWKWebView.mm */,
				41C5378C21F1333C008B1FAD /* TestWebsiteDataStoreDelegate.h */,
				41C5378D21F1333C008B1FAD /* TestWebsiteDataStoreDelegate.mm */,
				2D058E0822E2EE2200E4C145 /* UIScriptControllerCocoa.h */,
				F46240AF2170128300917B16 /* UIScriptControllerCocoa.mm */,
			);
			path = cocoa;
			sourceTree = "<group>";
		};
		1AB674ADFE9D54B511CA2CBB /* Products */ = {
			isa = PBXGroup;
			children = (
				8DD76FA10486AA7600D96B5E /* WebKitTestRunner */,
				A18510271B9ADE4800744AEB /* libWebKitTestRunner.a */,
				2EE52CE01890A9A80010ED21 /* WebKitTestRunnerApp.app */,
				BC25186211D15D54002EBC01 /* WebKitTestRunnerInjectedBundle.bundle */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		29A8FCE0145F035D009045A6 /* Accessibility */ = {
			isa = PBXGroup;
			children = (
				29210EA2144CAAA500835BB5 /* AccessibilityController.cpp */,
				29210EA3144CAAA500835BB5 /* AccessibilityController.h */,
				8097338814874A5A008156D9 /* AccessibilityNotificationHandler.h */,
				8097338914874A5A008156D9 /* AccessibilityNotificationHandler.mm */,
				29210EB1144CACD400835BB5 /* AccessibilityTextMarker.cpp */,
				29210EB2144CACD400835BB5 /* AccessibilityTextMarker.h */,
				29210EB3144CACD400835BB5 /* AccessibilityTextMarkerMac.mm */,
				29A8FCE1145F037B009045A6 /* AccessibilityTextMarkerRange.cpp */,
				29A8FCDF145F0358009045A6 /* AccessibilityTextMarkerRange.h */,
				29210EA9144CACB200835BB5 /* AccessibilityUIElement.cpp */,
				29210EAA144CACB200835BB5 /* AccessibilityUIElement.h */,
			);
			name = Accessibility;
			sourceTree = "<group>";
		};
		2DB6187F1D7D598800978D19 /* spi */ = {
			isa = PBXGroup;
			children = (
				2DB6187D1D7D58D400978D19 /* CoreGraphicsTestSPI.h */,
				2D0FF14A2192C78300C975D6 /* PencilKitTestSPI.h */,
			);
			name = spi;
			sourceTree = "<group>";
		};
		2DD4C4971D6E7D3B0007379C /* Event Serialization */ = {
			isa = PBXGroup;
			children = (
				2DFA984A1D7F79E000AFF2C9 /* mac */,
			);
			name = "Event Serialization";
			path = ../TestRunnerShared/EventSerialization;
			sourceTree = "<group>";
		};
		2DFA984A1D7F79E000AFF2C9 /* mac */ = {
			isa = PBXGroup;
			children = (
				2DD4C4981D6E7D3B0007379C /* EventSerializerMac.h */,
				2DD4C4991D6E7D3B0007379C /* EventSerializerMac.mm */,
				2DFA98461D7F70CF00AFF2C9 /* SharedEventStreamsMac.h */,
				2DFA98471D7F70CF00AFF2C9 /* SharedEventStreamsMac.mm */,
			);
			name = mac;
			sourceTree = "<group>";
		};
		2E63ED741891ACE9002A7AFC /* ios */ = {
			isa = PBXGroup;
			children = (
				2E63ED751891ACE9002A7AFC /* AccessibilityControllerIOS.mm */,
				2E63ED761891ACE9002A7AFC /* AccessibilityNotificationHandler.h */,
				2E63ED771891ACE9002A7AFC /* AccessibilityTextMarkerIOS.mm */,
				2E63ED781891ACE9002A7AFC /* AccessibilityUIElementIOS.mm */,
				2E63ED7A1891ACE9002A7AFC /* EventSenderProxyIOS.mm */,
				2E63ED7B1891ACE9002A7AFC /* InjectedBundleIOS.mm */,
			);
			path = ios;
			sourceTree = "<group>";
		};
		2EE52CE11890A9A80010ED21 /* Frameworks */ = {
			isa = PBXGroup;
			children = (
				2EE52CE41890A9A80010ED21 /* CoreGraphics.framework */,
				2EE52CE21890A9A80010ED21 /* Foundation.framework */,
				0F73B5571BA7929E004B3EF4 /* JavaScriptCore.framework */,
				570E75A42152DA2C00324B6E /* Security.framework */,
			);
			name = Frameworks;
			sourceTree = "<group>";
		};
		2EE52CE81890A9A80010ED21 /* WebKitTestRunnerApp */ = {
			isa = PBXGroup;
			children = (
				0F4B08721D5BE88D00EC1B78 /* Launch.storyboard */,
				2EE52D161890A9FB0010ED21 /* mainIOS.mm */,
			);
			path = WebKitTestRunnerApp;
			sourceTree = "<group>";
		};
		2EE52D121890A9FB0010ED21 /* ios */ = {
			isa = PBXGroup;
			children = (
				4430AE181F82C4EF0099915A /* GeneratedTouchesDebugWindow.h */,
				4430AE171F82C4EE0099915A /* GeneratedTouchesDebugWindow.mm */,
				0FEBF8581BB61DF20028722D /* HIDEventGenerator.h */,
				0FEBF8591BB61DF20028722D /* HIDEventGenerator.mm */,
				2EE52D131890A9FB0010ED21 /* PlatformWebViewIOS.mm */,
				2EE52D141890A9FB0010ED21 /* TestControllerIOS.mm */,
				2D0BEE1722EAD1360092B738 /* UIScriptControllerIOS.h */,
				0F73B55B1BA89042004B3EF4 /* UIScriptControllerIOS.mm */,
			);
			path = ios;
			sourceTree = "<group>";
		};
		65EB859E11EC67CC0034D300 /* mac */ = {
			isa = PBXGroup;
			children = (
				299E2AA41E3DEE140065DC30 /* AccessibilityCommonMac.h */,
				29210EAB144CACB200835BB6 /* AccessibilityCommonMac.mm */,
				8034C6611487636400AC32E9 /* AccessibilityControllerMac.mm */,
				29A8FCE4145F0464009045A6 /* AccessibilityTextMarkerRangeMac.mm */,
				29210EAB144CACB200835BB5 /* AccessibilityUIElementMac.mm */,
				BC8DAD771316D7B900EC96FC /* InjectedBundleMac.mm */,
			);
			path = mac;
			sourceTree = "<group>";
		};
		BC14E4E0120E02F900826C0C /* Controllers */ = {
			isa = PBXGroup;
			children = (
				29A8FCE0145F035D009045A6 /* Accessibility */,
				BC8FD8C9120E527F00F3E71A /* EventSendingController.cpp */,
				BC8FD8C8120E527F00F3E71A /* EventSendingController.h */,
				BC14E4D9120E02D000826C0C /* GCController.cpp */,
				BC14E4D8120E02D000826C0C /* GCController.h */,
				BCC9981711D3F51E0017BCA2 /* TestRunner.cpp */,
				BCC9981611D3F51E0017BCA2 /* TestRunner.h */,
				C0CE720A1247C93300BC0EC4 /* TestRunnerMac.mm */,
				5664A49814326384008881BE /* TextInputController.cpp */,
				5664A49914326384008881BE /* TextInputController.h */,
			);
			name = Controllers;
			sourceTree = "<group>";
		};
		BC25183511D1571D002EBC01 /* InjectedBundle */ = {
			isa = PBXGroup;
			children = (
				BC952C0A11F3B939003398B4 /* Bindings */,
				0FEB909D1905A75D000FDBF3 /* cocoa */,
				BC14E4E0120E02F900826C0C /* Controllers */,
				BC952D3A11F3BF1F003398B4 /* Derived Sources */,
				2E63ED741891ACE9002A7AFC /* ios */,
				65EB859E11EC67CC0034D300 /* mac */,
				65EB859D11EC67CC0034D300 /* ActivateFonts.h */,
				BCC997A011D3C8F60017BCA2 /* InjectedBundle.cpp */,
				BCC997A111D3C8F60017BCA2 /* InjectedBundle.h */,
				BC25184611D15767002EBC01 /* InjectedBundleMain.cpp */,
				BCC997A211D3C8F60017BCA2 /* InjectedBundlePage.cpp */,
				BCC997A311D3C8F60017BCA2 /* InjectedBundlePage.h */,
			);
			path = InjectedBundle;
			sourceTree = "<group>";
		};
		BC25194411D15DBE002EBC01 /* Resources */ = {
			isa = PBXGroup;
			children = (
				6510A77711EC643800410867 /* AHEM____.TTF */,
				1CEA84DC203782ED00440D08 /* FakeHelvetica-ArmenianCharacter.ttf */,
				1CBA02941FD86EA100179C7D /* FakeHelvetica-Helvetica-400.ttf */,
				1CBA02931FD86EA100179C7D /* FakeHelvetica-Helvetica-500.ttf */,
				1CBA02921FD86EA100179C7D /* FakeHelvetica-Helvetica2-400.ttf */,
				1CBA02951FD86EA100179C7D /* FakeHelvetica-Helvetica2-500.ttf */,
				41D5B62522DD9D36000F4C4A /* FakeHelvetica-SingleExtendedCharacter.ttf */,
				1CA211C71BCA107300B2101F /* FontWithFeatures.otf */,
				1CA211C81BCA107300B2101F /* FontWithFeatures.ttf */,
				BC25186311D15D54002EBC01 /* InjectedBundle-Info.plist */,
				6510A77911EC643800410867 /* WebKitWeightWatcher100.ttf */,
				6510A77A11EC643800410867 /* WebKitWeightWatcher200.ttf */,
				6510A77B11EC643800410867 /* WebKitWeightWatcher300.ttf */,
				6510A77C11EC643800410867 /* WebKitWeightWatcher400.ttf */,
				6510A77D11EC643800410867 /* WebKitWeightWatcher500.ttf */,
				6510A77E11EC643800410867 /* WebKitWeightWatcher600.ttf */,
				6510A77F11EC643800410867 /* WebKitWeightWatcher700.ttf */,
				6510A78011EC643800410867 /* WebKitWeightWatcher800.ttf */,
				6510A78111EC643800410867 /* WebKitWeightWatcher900.ttf */,
			);
			name = Resources;
			sourceTree = "<group>";
		};
		BC7933FE118F7C74005EA8E2 /* mac */ = {
			isa = PBXGroup;
			children = (
				5670B8271386FCA5002EB355 /* EventSenderProxy.mm */,
				BC7933FF118F7C84005EA8E2 /* main.mm */,
				BC7934E711906846005EA8E2 /* PlatformWebViewMac.mm */,
				E1C642C217CBCC7300D66A3C /* PoseAsClass.h */,
				E1C642C117CBCC7300D66A3C /* PoseAsClass.mm */,
				BC8C795B11D2785D004535A1 /* TestControllerMac.mm */,
				2D058E0A22E2EF6D00E4C145 /* UIScriptControllerMac.h */,
				0F87B6111BACAD6F004EC572 /* UIScriptControllerMac.mm */,
				E132AA3917CD5F1000611DF0 /* WebKitTestRunnerDraggingInfo.h */,
				E132AA3817CD5F1000611DF0 /* WebKitTestRunnerDraggingInfo.mm */,
				E132AA3C17CE776F00611DF0 /* WebKitTestRunnerEvent.h */,
				E132AA3B17CE776F00611DF0 /* WebKitTestRunnerEvent.mm */,
				E1C642C517CBCD4C00D66A3C /* WebKitTestRunnerPasteboard.h */,
				E1C642C417CBCD4C00D66A3C /* WebKitTestRunnerPasteboard.mm */,
				93764177210D736100A3DAAE /* WebKitTestRunnerWindow.h */,
				93764176210D736000A3DAAE /* WebKitTestRunnerWindow.mm */,
			);
			path = mac;
			sourceTree = "<group>";
		};
		BC793401118F7C8A005EA8E2 /* Configurations */ = {
			isa = PBXGroup;
			children = (
				BC793426118F7D3C005EA8E2 /* Base.xcconfig */,
				0F2109C7189C650D00F879A3 /* BaseTarget.xcconfig */,
				BC793427118F7DAF005EA8E2 /* DebugRelease.xcconfig */,
				BC25197111D15E61002EBC01 /* InjectedBundle.xcconfig */,
				A1B89B94221E026B00EB4CEA /* SDKVariant.xcconfig */,
				57A0062C22976E4D00AD08BD /* WebKitTestRunner.entitlements */,
				A18510381B9ADF2200744AEB /* WebKitTestRunner.xcconfig */,
				9B0D132E2036D346008FC8FB /* WebKitTestRunnerApp-iOS.entitlements */,
				311183AA212B1AC70077BCE0 /* WebKitTestRunnerApp-watchOS.entitlements */,
				A18510391B9ADFF800744AEB /* WebKitTestRunnerApp.xcconfig */,
				BC251A1811D16795002EBC01 /* WebKitTestRunnerLibrary.xcconfig */,
			);
			path = Configurations;
			sourceTree = "<group>";
		};
		BC9192021333E4CD003011DC /* cg */ = {
			isa = PBXGroup;
			children = (
				BC9192041333E4F8003011DC /* TestInvocationCG.cpp */,
			);
			name = cg;
			sourceTree = "<group>";
		};
		BC952C0A11F3B939003398B4 /* Bindings */ = {
			isa = PBXGroup;
			children = (
				29210EA8144CAB8800835BB5 /* AccessibilityController.idl */,
				29A8FCC5145B93C6009045A6 /* AccessibilityTextMarker.idl */,
				29A8FCD2145EF8F2009045A6 /* AccessibilityTextMarkerRange.idl */,
				29210EDC144CD56E00835BB5 /* AccessibilityUIElement.idl */,
				BC952ED311F3C318003398B4 /* CodeGeneratorTestRunner.pm */,
				BC8FD8CB120E52B000F3E71A /* EventSendingController.idl */,
				BC14E4E1120E032000826C0C /* GCController.idl */,
				BC952ED211F3C29F003398B4 /* TestRunner.idl */,
				5664A49614326377008881BE /* TextInputController.idl */,
			);
			path = Bindings;
			sourceTree = "<group>";
		};
		BC952D3A11F3BF1F003398B4 /* Derived Sources */ = {
			isa = PBXGroup;
			children = (
				583913D014335E95008307E5 /* JSAccessibilityController.cpp */,
				583913D114335E95008307E5 /* JSAccessibilityController.h */,
				29210EE1144CDE6789815EE5 /* JSAccessibilityTextMarker.cpp */,
				29210EE1145CDE6789815EE5 /* JSAccessibilityTextMarker.h */,
				29A8FCE1345E7021006AA5A6 /* JSAccessibilityTextMarkerRange.cpp */,
				29A8FCE1345E7021006AA5A7 /* JSAccessibilityTextMarkerRange.h */,
				29210EDB146727E711835BB5 /* JSAccessibilityUIElement.cpp */,
				29210EDB146727E811835BB5 /* JSAccessibilityUIElement.h */,
				BC8FD8D0120E545B00F3E71A /* JSEventSendingController.cpp */,
				BC8FD8D1120E545B00F3E71A /* JSEventSendingController.h */,
				BC14E4E8120E03D800826C0C /* JSGCController.cpp */,
				BC14E4E9120E03D800826C0C /* JSGCController.h */,
				BC952F1D11F3C652003398B4 /* JSTestRunner.cpp */,
				BC952F1E11F3C652003398B4 /* JSTestRunner.h */,
				5641E2CE14335E95008307E5 /* JSTextInputController.cpp */,
				5641E2CF14335E95008307E5 /* JSTextInputController.h */,
			);
			name = "Derived Sources";
			path = DerivedSources/WebKitTestRunner;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		BC99CBF11207642D00FDEE76 /* Shared */ = {
			isa = PBXGroup;
			children = (
				378D442213346D00006A777B /* config.h */,
				BC99A4841208901A007E9F08 /* StringFunctions.h */,
				9B36A270209453A0003E0651 /* WhatToDump.h */,
			);
			name = Shared;
			sourceTree = "<group>";
		};
		F4B6C31620E84369008AC225 /* cocoa */ = {
			isa = PBXGroup;
			children = (
				F44A531521B899DA00DBB99C /* ClassMethodSwizzler.h */,
				F44A531421B899DA00DBB99C /* ClassMethodSwizzler.mm */,
				F44A531321B899DA00DBB99C /* InstanceMethodSwizzler.h */,
				F44A531621B899DA00DBB99C /* InstanceMethodSwizzler.mm */,
				F4C3578B20E8444000FA0748 /* LayoutTestSpellChecker.h */,
				F4C3578A20E8444000FA0748 /* LayoutTestSpellChecker.mm */,
				2E2A765B2370C8A0008F9FFE /* PlatformViewHelpers.h */,
				2E2A765C2370C8A0008F9FFE /* PlatformViewHelpers.mm */,
			);
			name = cocoa;
			sourceTree = "<group>";
		};
		F4FED31D23582120003C139C /* mac */ = {
			isa = PBXGroup;
			children = (
				F4FED3212358215E003C139C /* NSPasteboardAdditions.h */,
				F4FED3222358215E003C139C /* NSPasteboardAdditions.mm */,
			);
			name = mac;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXHeadersBuildPhase section */
		A18510251B9ADE4800744AEB /* Headers */ = {
			isa = PBXHeadersBuildPhase;
			buildActionMask = 2147483647;
			files = (
				2DB6187E1D7D58D400978D19 /* CoreGraphicsTestSPI.h in Headers */,
				2DD4C49A1D6E7D3B0007379C /* EventSerializerMac.h in Headers */,
				0F73B5521BA78968004B3EF4 /* JSUIScriptController.h in Headers */,
				2DFA98481D7F70CF00AFF2C9 /* SharedEventStreamsMac.h in Headers */,
				2D058E0922E2EE2200E4C145 /* UIScriptControllerCocoa.h in Headers */,
				2D058E0B22E2EF6D00E4C145 /* UIScriptControllerMac.h in Headers */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXHeadersBuildPhase section */

/* Begin PBXNativeTarget section */
		2EE52CDF1890A9A80010ED21 /* WebKitTestRunnerApp */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 2EE52D0F1890A9A90010ED21 /* Build configuration list for PBXNativeTarget "WebKitTestRunnerApp" */;
			buildPhases = (
				2EE52CDC1890A9A80010ED21 /* Sources */,
				2EE52CDD1890A9A80010ED21 /* Frameworks */,
				2EE52CDE1890A9A80010ED21 /* Resources */,
				CEC209031D36E36A00261596 /* Copy Plug-Ins */,
			);
			buildRules = (
			);
			dependencies = (
				A18510361B9ADE6D00744AEB /* PBXTargetDependency */,
			);
			name = WebKitTestRunnerApp;
			productName = WebKitTestRunnerApp;
			productReference = 2EE52CE01890A9A80010ED21 /* WebKitTestRunnerApp.app */;
			productType = "com.apple.product-type.application";
		};
		8DD76F960486AA7600D96B5E /* WebKitTestRunner */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 1DEB927408733DD40010E9CD /* Build configuration list for PBXNativeTarget "WebKitTestRunner" */;
			buildPhases = (
				8DD76F990486AA7600D96B5E /* Sources */,
				8DD76F9B0486AA7600D96B5E /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				A18510341B9ADE6200744AEB /* PBXTargetDependency */,
			);
			name = WebKitTestRunner;
			productInstallPath = "$(HOME)/bin";
			productName = WebKitTestRunner;
			productReference = 8DD76FA10486AA7600D96B5E /* WebKitTestRunner */;
			productType = "com.apple.product-type.tool";
		};
		A18510261B9ADE4800744AEB /* WebKitTestRunner (Library) */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = A185102D1B9ADE4800744AEB /* Build configuration list for PBXNativeTarget "WebKitTestRunner (Library)" */;
			buildPhases = (
				A18510231B9ADE4800744AEB /* Sources */,
				A18510241B9ADE4800744AEB /* Frameworks */,
				A18510251B9ADE4800744AEB /* Headers */,
			);
			buildRules = (
			);
			dependencies = (
				A18510321B9ADE5B00744AEB /* PBXTargetDependency */,
			);
			name = "WebKitTestRunner (Library)";
			productName = WebKitTestRunnerLibrary;
			productReference = A18510271B9ADE4800744AEB /* libWebKitTestRunner.a */;
			productType = "com.apple.product-type.library.static";
		};
		BC25186111D15D54002EBC01 /* WebKitTestRunnerInjectedBundle */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = BC25186611D15D55002EBC01 /* Build configuration list for PBXNativeTarget "WebKitTestRunnerInjectedBundle" */;
			buildPhases = (
				BC25185E11D15D54002EBC01 /* Resources */,
				BC25185F11D15D54002EBC01 /* Sources */,
				BC25186011D15D54002EBC01 /* Frameworks */,
				53A8193A21E52973000B93AB /* Check .xcfilelists */,
			);
			buildRules = (
			);
			dependencies = (
				BC952ED711F3C38B003398B4 /* PBXTargetDependency */,
			);
			name = WebKitTestRunnerInjectedBundle;
			productName = InjectedBundle;
			productReference = BC25186211D15D54002EBC01 /* WebKitTestRunnerInjectedBundle.bundle */;
			productType = "com.apple.product-type.bundle";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		08FB7793FE84155DC02AAC07 /* Project object */ = {
			isa = PBXProject;
			attributes = {
				DefaultBuildSystemTypeForWorkspace = Original;
				LastSwiftUpdateCheck = 0700;
				LastUpgradeCheck = 1140;
				TargetAttributes = {
					5325BDD921DFF4F500A0DEE1 = {
						CreatedOnToolsVersion = 10.1;
					};
					A115CCB41B9D769D00E89159 = {
						CreatedOnToolsVersion = 7.0;
					};
					A18510261B9ADE4800744AEB = {
						CreatedOnToolsVersion = 7.0;
					};
				};
			};
			buildConfigurationList = 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "WebKitTestRunner" */;
			compatibilityVersion = "Xcode 3.1";
			developmentRegion = en;
			hasScannedForEncodings = 1;
			knownRegions = (
				en,
				Base,
			);
			mainGroup = 08FB7794FE84155DC02AAC07 /* WebKitTestRunner */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				A115CCB41B9D769D00E89159 /* All */,
				8DD76F960486AA7600D96B5E /* WebKitTestRunner */,
				2EE52CDF1890A9A80010ED21 /* WebKitTestRunnerApp */,
				BC25186111D15D54002EBC01 /* WebKitTestRunnerInjectedBundle */,
				BC952D7711F3BF5D003398B4 /* Derived Sources */,
				A18510261B9ADE4800744AEB /* WebKitTestRunner (Library) */,
				5325BDD921DFF4F500A0DEE1 /* Apply Configuration to XCFileLists */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		2EE52CDE1890A9A80010ED21 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				0F4B08731D5BE88D00EC1B78 /* Launch.storyboard in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		BC25185E11D15D54002EBC01 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				6510A78211EC643800410867 /* AHEM____.TTF in Resources */,
				1CEA84DD203782ED00440D08 /* FakeHelvetica-ArmenianCharacter.ttf in Resources */,
				1CBA02991FD87DF300179C7D /* FakeHelvetica-Helvetica-400.ttf in Resources */,
				1CBA02981FD87DF000179C7D /* FakeHelvetica-Helvetica-500.ttf in Resources */,
				1CBA02971FD87DEE00179C7D /* FakeHelvetica-Helvetica2-400.ttf in Resources */,
				1CBA02961FD87DEC00179C7D /* FakeHelvetica-Helvetica2-500.ttf in Resources */,
				41D5B62622DD9D36000F4C4A /* FakeHelvetica-SingleExtendedCharacter.ttf in Resources */,
				1CA211C91BCA107300B2101F /* FontWithFeatures.otf in Resources */,
				1CA211CA1BCA107300B2101F /* FontWithFeatures.ttf in Resources */,
				6510A78411EC643800410867 /* WebKitWeightWatcher100.ttf in Resources */,
				6510A78511EC643800410867 /* WebKitWeightWatcher200.ttf in Resources */,
				6510A78611EC643800410867 /* WebKitWeightWatcher300.ttf in Resources */,
				6510A78711EC643800410867 /* WebKitWeightWatcher400.ttf in Resources */,
				6510A78811EC643800410867 /* WebKitWeightWatcher500.ttf in Resources */,
				6510A78911EC643800410867 /* WebKitWeightWatcher600.ttf in Resources */,
				6510A78A11EC643800410867 /* WebKitWeightWatcher700.ttf in Resources */,
				6510A78B11EC643800410867 /* WebKitWeightWatcher800.ttf in Resources */,
				6510A78C11EC643800410867 /* WebKitWeightWatcher900.ttf in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
		5325BDDE21DFF4F800A0DEE1 /* ShellScript */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputFileListPaths = (
			);
			inputPaths = (
			);
			outputFileListPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "eval \"${WK_SUBLAUNCH_SCRIPT_PARAMETERS[@]}\"\n";
		};
		53A8193A21E52973000B93AB /* Check .xcfilelists */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputFileListPaths = (
			);
			inputPaths = (
			);
			name = "Check .xcfilelists";
			outputFileListPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "Scripts/check-xcfilelists.sh\n";
		};
		BC952D8211F3BF78003398B4 /* Generate Derived Sources */ = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputFileListPaths = (
				"$(SRCROOT)/DerivedSources-input.xcfilelist",
			);
			inputPaths = (
			);
			name = "Generate Derived Sources";
			outputFileListPaths = (
				"$(SRCROOT)/DerivedSources-output.xcfilelist",
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "Scripts/generate-derived-sources.sh\n";
		};
/* End PBXShellScriptBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		2EE52CDC1890A9A80010ED21 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				2E749BF21891EBFA007FC175 /* EventSenderProxyIOS.mm in Sources */,
				4430AE191F82C4FD0099915A /* GeneratedTouchesDebugWindow.mm in Sources */,
				0FEBF85A1BB61DF20028722D /* HIDEventGenerator.mm in Sources */,
				2E63ED941891ADAD002A7AFC /* mainIOS.mm in Sources */,
				2E63ED911891ADAD002A7AFC /* PlatformWebViewIOS.mm in Sources */,
				2E63ED921891ADAD002A7AFC /* TestControllerIOS.mm in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		8DD76F990486AA7600D96B5E /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				5670B8281386FCA5002EB355 /* EventSenderProxy.mm in Sources */,
				BC793400118F7C84005EA8E2 /* main.mm in Sources */,
				F4FED324235823A3003C139C /* NSPasteboardAdditions.mm in Sources */,
				BC7934E811906846005EA8E2 /* PlatformWebViewMac.mm in Sources */,
				E1C642C317CBCC7300D66A3C /* PoseAsClass.mm in Sources */,
				BC8C795C11D2785D004535A1 /* TestControllerMac.mm in Sources */,
				0F87B6131BACAD82004EC572 /* UIScriptControllerMac.mm in Sources */,
				E132AA3A17CD5F1000611DF0 /* WebKitTestRunnerDraggingInfo.mm in Sources */,
				E132AA3D17CE776F00611DF0 /* WebKitTestRunnerEvent.mm in Sources */,
				E1C642C617CBCD4C00D66A3C /* WebKitTestRunnerPasteboard.mm in Sources */,
				9376417A210D737200A3DAAE /* WebKitTestRunnerWindow.mm in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		A18510231B9ADE4800744AEB /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				F44A531721B899E200DBB99C /* ClassMethodSwizzler.mm in Sources */,
				A185103A1B9AE0DA00744AEB /* CrashReporterInfo.mm in Sources */,
				A185103E1B9AE12200744AEB /* CyclicRedundancyCheck.cpp in Sources */,
				2DD4C49B1D6E7D3B0007379C /* EventSerializerMac.mm in Sources */,
				A185103F1B9AE12900744AEB /* GeolocationProviderMock.cpp in Sources */,
				F44A531821B899E500DBB99C /* InstanceMethodSwizzler.mm in Sources */,
				31DA8A3D1E7205CC00E1DF2F /* IOSLayoutTestCommunication.cpp in Sources */,
				0F73B5511BA78968004B3EF4 /* JSUIScriptController.cpp in Sources */,
				0F18E7181D6BC4560027E547 /* JSWrapper.cpp in Sources */,
				F4C3578C20E8444600FA0748 /* LayoutTestSpellChecker.mm in Sources */,
				A185103C1B9AE0FE00744AEB /* Options.cpp in Sources */,
				A18510401B9AE13100744AEB /* PixelDumpSupport.cpp in Sources */,
				2E2A765D2370C8D1008F9FFE /* PlatformViewHelpers.mm in Sources */,
				2DFA98491D7F70CF00AFF2C9 /* SharedEventStreamsMac.mm in Sources */,
				A18510411B9AE13800744AEB /* TestController.cpp in Sources */,
				A185103B1B9AE0E200744AEB /* TestControllerCocoa.mm in Sources */,
				A18510421B9AE13E00744AEB /* TestInvocation.cpp in Sources */,
				A185103D1B9AE10600744AEB /* TestInvocationCG.cpp in Sources */,
				0F622CE91BBB3A1A00838AD3 /* TestOptions.cpp in Sources */,
				0F87B6171BACC4C0004EC572 /* TestRunnerWKWebView.mm in Sources */,
				41C5378E21F13414008B1FAD /* TestWebsiteDataStoreDelegate.mm in Sources */,
				0F18E6E51D6B9B9E0027E547 /* UIScriptContext.cpp in Sources */,
				0F18E6E61D6B9BA20027E547 /* UIScriptController.cpp in Sources */,
				F46240B1217013E500917B16 /* UIScriptControllerCocoa.mm in Sources */,
				0F73B55C1BA89042004B3EF4 /* UIScriptControllerIOS.mm in Sources */,
				A18510431B9AE14500744AEB /* WebNotificationProvider.cpp in Sources */,
				A18510441B9AE14A00744AEB /* WorkQueueManager.cpp in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
		BC25185F11D15D54002EBC01 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				29210EDA144CC3EA00835BB6 /* AccessibilityCommonMac.mm in Sources */,
				29210EB0144CACBD00835BB5 /* AccessibilityController.cpp in Sources */,
				2E63ED8A1891AD7E002A7AFC /* AccessibilityControllerIOS.mm in Sources */,
				8034C6621487636400AC32E9 /* AccessibilityControllerMac.mm in Sources */,
				8097338A14874A5A008156D9 /* AccessibilityNotificationHandler.mm in Sources */,
				29210EB4144CACD500835BB5 /* AccessibilityTextMarker.cpp in Sources */,
				2E63ED8B1891AD7E002A7AFC /* AccessibilityTextMarkerIOS.mm in Sources */,
				29210EB5144CACD500835BB5 /* AccessibilityTextMarkerMac.mm in Sources */,
				29A8FCE2145F037B009045A6 /* AccessibilityTextMarkerRange.cpp in Sources */,
				29A8FCE5145F0464009045A6 /* AccessibilityTextMarkerRangeMac.mm in Sources */,
				29210EAE144CACB700835BB5 /* AccessibilityUIElement.cpp in Sources */,
				2E63EDA11891B291002A7AFC /* AccessibilityUIElementIOS.mm in Sources */,
				29210EDA144CC3EA00835BB5 /* AccessibilityUIElementMac.mm in Sources */,
				65EB85A011EC67CC0034D300 /* ActivateFontsCocoa.mm in Sources */,
				0FEB90A51905C016000FDBF3 /* CrashReporterInfo.mm in Sources */,
				2E63ED8E1891AD7E002A7AFC /* EventSenderProxyIOS.mm in Sources */,
				BC8FD8CA120E527F00F3E71A /* EventSendingController.cpp in Sources */,
				BC14E4DB120E02D000826C0C /* GCController.cpp in Sources */,
				BCC997A411D3C8F60017BCA2 /* InjectedBundle.cpp in Sources */,
				2E63ED8F1891AD7E002A7AFC /* InjectedBundleIOS.mm in Sources */,
				BC8DAD7B1316D91000EC96FC /* InjectedBundleMac.mm in Sources */,
				BC251A3E11D16831002EBC01 /* InjectedBundleMain.cpp in Sources */,
				BCC997A511D3C8F60017BCA2 /* InjectedBundlePage.cpp in Sources */,
				0FEB90A01905A834000FDBF3 /* InjectedBundlePageCocoa.mm in Sources */,
				29210EDB144CD47900835BB5 /* JSAccessibilityController.cpp in Sources */,
				29A8FCCB145EF02E009045A6 /* JSAccessibilityTextMarker.cpp in Sources */,
				29A8FCDD145F0337009045A6 /* JSAccessibilityTextMarkerRange.cpp in Sources */,
				29210EE1144CDB2600835BB5 /* JSAccessibilityUIElement.cpp in Sources */,
				BC8FD8D2120E545B00F3E71A /* JSEventSendingController.cpp in Sources */,
				BC14E4EA120E03D800826C0C /* JSGCController.cpp in Sources */,
				BC952F1F11F3C652003398B4 /* JSTestRunner.cpp in Sources */,
				5641E2D014335E95008307E5 /* JSTextInputController.cpp in Sources */,
				0F6E89031D6BC5A2008ED0FA /* JSWrapper.cpp in Sources */,
				2E63EDA61891BDC0002A7AFC /* TestRunner.cpp in Sources */,
				C0CE720B1247C93300BC0EC4 /* TestRunnerMac.mm in Sources */,
				5664A49A14326384008881BE /* TextInputController.cpp in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		A115CCBA1B9D76BF00E89159 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 8DD76F960486AA7600D96B5E /* WebKitTestRunner */;
			targetProxy = A115CCB91B9D76BF00E89159 /* PBXContainerItemProxy */;
		};
		A115CCBC1B9D76C400E89159 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = 2EE52CDF1890A9A80010ED21 /* WebKitTestRunnerApp */;
			targetProxy = A115CCBB1B9D76C400E89159 /* PBXContainerItemProxy */;
		};
		A18510321B9ADE5B00744AEB /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = BC25186111D15D54002EBC01 /* WebKitTestRunnerInjectedBundle */;
			targetProxy = A18510311B9ADE5B00744AEB /* PBXContainerItemProxy */;
		};
		A18510341B9ADE6200744AEB /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = A18510261B9ADE4800744AEB /* WebKitTestRunner (Library) */;
			targetProxy = A18510331B9ADE6200744AEB /* PBXContainerItemProxy */;
		};
		A18510361B9ADE6D00744AEB /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = A18510261B9ADE4800744AEB /* WebKitTestRunner (Library) */;
			targetProxy = A18510351B9ADE6D00744AEB /* PBXContainerItemProxy */;
		};
		BC952ED711F3C38B003398B4 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			target = BC952D7711F3BF5D003398B4 /* Derived Sources */;
			targetProxy = BC952ED611F3C38B003398B4 /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin XCBuildConfiguration section */
		1DEB927508733DD40010E9CD /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510381B9ADF2200744AEB /* WebKitTestRunner.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		1DEB927608733DD40010E9CD /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510381B9ADF2200744AEB /* WebKitTestRunner.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		1DEB927908733DD40010E9CD /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC793427118F7DAF005EA8E2 /* DebugRelease.xcconfig */;
			buildSettings = {
				DEBUG_DEFINES = "$(DEBUG_DEFINES_debug)";
				GCC_OPTIMIZATION_LEVEL = 0;
			};
			name = Debug;
		};
		1DEB927A08733DD40010E9CD /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC793427118F7DAF005EA8E2 /* DebugRelease.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		2EE52D091890A9A90010ED21 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510391B9ADFF800744AEB /* WebKitTestRunnerApp.xcconfig */;
			buildSettings = {
				ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
				INFOPLIST_FILE = "WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist";
				PRODUCT_NAME = "$(TARGET_NAME)";
				WRAPPER_EXTENSION = app;
			};
			name = Debug;
		};
		2EE52D0A1890A9A90010ED21 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510391B9ADFF800744AEB /* WebKitTestRunnerApp.xcconfig */;
			buildSettings = {
				ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
				INFOPLIST_FILE = "WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist";
				PRODUCT_NAME = "$(TARGET_NAME)";
				WRAPPER_EXTENSION = app;
			};
			name = Release;
		};
		2EE52D0B1890A9A90010ED21 /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510391B9ADFF800744AEB /* WebKitTestRunnerApp.xcconfig */;
			buildSettings = {
				ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
				INFOPLIST_FILE = "WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist";
				PRODUCT_NAME = "$(TARGET_NAME)";
				WRAPPER_EXTENSION = app;
			};
			name = Production;
		};
		5325BDDA21DFF4F500A0DEE1 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510381B9ADF2200744AEB /* WebKitTestRunner.xcconfig */;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		5325BDDB21DFF4F500A0DEE1 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510381B9ADF2200744AEB /* WebKitTestRunner.xcconfig */;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		5325BDDC21DFF4F500A0DEE1 /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510381B9ADF2200744AEB /* WebKitTestRunner.xcconfig */;
			buildSettings = {
				CODE_SIGN_STYLE = Automatic;
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Production;
		};
		A115CCB61B9D769D00E89159 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Debug;
		};
		A115CCB71B9D769D00E89159 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Release;
		};
		A115CCB81B9D769D00E89159 /* Production */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "$(TARGET_NAME)";
			};
			name = Production;
		};
		A185102E1B9ADE4800744AEB /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC251A1811D16795002EBC01 /* WebKitTestRunnerLibrary.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		A185102F1B9ADE4800744AEB /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC251A1811D16795002EBC01 /* WebKitTestRunnerLibrary.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		A18510301B9ADE4800744AEB /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC251A1811D16795002EBC01 /* WebKitTestRunnerLibrary.xcconfig */;
			buildSettings = {
			};
			name = Production;
		};
		BC25186411D15D55002EBC01 /* Debug */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC25197111D15E61002EBC01 /* InjectedBundle.xcconfig */;
			buildSettings = {
			};
			name = Debug;
		};
		BC25186511D15D55002EBC01 /* Release */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC25197111D15E61002EBC01 /* InjectedBundle.xcconfig */;
			buildSettings = {
			};
			name = Release;
		};
		BC646D6D136A3A8700B35DED /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC793426118F7D3C005EA8E2 /* Base.xcconfig */;
			buildSettings = {
			};
			name = Production;
		};
		BC646D6E136A3A8700B35DED /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = A18510381B9ADF2200744AEB /* WebKitTestRunner.xcconfig */;
			buildSettings = {
			};
			name = Production;
		};
		BC646D6F136A3A8700B35DED /* Production */ = {
			isa = XCBuildConfiguration;
			baseConfigurationReference = BC25197111D15E61002EBC01 /* InjectedBundle.xcconfig */;
			buildSettings = {
			};
			name = Production;
		};
		BC646D70136A3A8700B35DED /* Production */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "Derived Sources";
			};
			name = Production;
		};
		BC952D7811F3BF5E003398B4 /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "Derived Sources";
			};
			name = Debug;
		};
		BC952D7911F3BF5E003398B4 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				PRODUCT_NAME = "Derived Sources";
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		1DEB927408733DD40010E9CD /* Build configuration list for PBXNativeTarget "WebKitTestRunner" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1DEB927508733DD40010E9CD /* Debug */,
				1DEB927608733DD40010E9CD /* Release */,
				BC646D6E136A3A8700B35DED /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "WebKitTestRunner" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				1DEB927908733DD40010E9CD /* Debug */,
				1DEB927A08733DD40010E9CD /* Release */,
				BC646D6D136A3A8700B35DED /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		2EE52D0F1890A9A90010ED21 /* Build configuration list for PBXNativeTarget "WebKitTestRunnerApp" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				2EE52D091890A9A90010ED21 /* Debug */,
				2EE52D0A1890A9A90010ED21 /* Release */,
				2EE52D0B1890A9A90010ED21 /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		5325BDDD21DFF4F500A0DEE1 /* Build configuration list for PBXAggregateTarget "Apply Configuration to XCFileLists" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				5325BDDA21DFF4F500A0DEE1 /* Debug */,
				5325BDDB21DFF4F500A0DEE1 /* Release */,
				5325BDDC21DFF4F500A0DEE1 /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		A115CCB51B9D769D00E89159 /* Build configuration list for PBXAggregateTarget "All" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				A115CCB61B9D769D00E89159 /* Debug */,
				A115CCB71B9D769D00E89159 /* Release */,
				A115CCB81B9D769D00E89159 /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		A185102D1B9ADE4800744AEB /* Build configuration list for PBXNativeTarget "WebKitTestRunner (Library)" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				A185102E1B9ADE4800744AEB /* Debug */,
				A185102F1B9ADE4800744AEB /* Release */,
				A18510301B9ADE4800744AEB /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		BC25186611D15D55002EBC01 /* Build configuration list for PBXNativeTarget "WebKitTestRunnerInjectedBundle" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				BC25186411D15D55002EBC01 /* Debug */,
				BC25186511D15D55002EBC01 /* Release */,
				BC646D6F136A3A8700B35DED /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
		BC952D7D11F3BF6A003398B4 /* Build configuration list for PBXAggregateTarget "Derived Sources" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				BC952D7811F3BF5E003398B4 /* Debug */,
				BC952D7911F3BF5E003398B4 /* Release */,
				BC646D70136A3A8700B35DED /* Production */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Production;
		};
/* End XCConfigurationList section */
	};
	rootObject = 08FB7793FE84155DC02AAC07 /* Project object */;
}
