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

/* Begin PBXBuildFile section */
		0008AEE10DABF08F00477EFB /* libgiflib.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0008AEDE0DABF01400477EFB /* libgiflib.a */; };
		00152A800EE71EB60068F9B2 /* SkDumpCanvas.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00152A7F0EE71EB60068F9B2 /* SkDumpCanvas.cpp */; };
		0017F2CF0D6F3933008D9B31 /* libgraphics.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C440D3E999300651393 /* libgraphics.a */; };
		0017F2D00D6F393F008D9B31 /* libcorecg.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C2C0D3E999300651393 /* libcorecg.a */; };
		0017F2D60D6F3949008D9B31 /* libviews.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C5E0D3E999300651393 /* libviews.a */; };
		006860100D8A1C8B00CD71AA /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0068600F0D8A1C8A00CD71AA /* OpenGL.framework */; };
		006860290D8A1DFB00CD71AA /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 006860280D8A1DFB00CD71AA /* AGL.framework */; };
		0081D7800EE45EF100AB0A0A /* SampleRegion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F60EDCAF2000F77EA2 /* SampleRegion.cpp */; };
		0082BE7C0EE414DE00DEE451 /* SkSetPoly3To3.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0082BE790EE414DE00DEE451 /* SkSetPoly3To3.cpp */; };
		009A74250DA11C5D00876C03 /* libGL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 009A740E0DA11B1F00876C03 /* libGL.a */; };
		00B7E3030EDCAF2000F77EA2 /* SampleAll.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2D70EDCAF2000F77EA2 /* SampleAll.cpp */; };
		00B7E3040EDCAF2000F77EA2 /* SampleApp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2D80EDCAF2000F77EA2 /* SampleApp.cpp */; };
		00B7E3050EDCAF2000F77EA2 /* SampleArc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2D90EDCAF2000F77EA2 /* SampleArc.cpp */; };
		00B7E3060EDCAF2000F77EA2 /* SampleBitmapRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2DA0EDCAF2000F77EA2 /* SampleBitmapRect.cpp */; };
		00B7E3070EDCAF2000F77EA2 /* SampleCamera.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2DB0EDCAF2000F77EA2 /* SampleCamera.cpp */; };
		00B7E3080EDCAF2000F77EA2 /* SampleCircle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2DC0EDCAF2000F77EA2 /* SampleCircle.cpp */; };
		00B7E3090EDCAF2000F77EA2 /* SampleCull.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2DE0EDCAF2000F77EA2 /* SampleCull.cpp */; };
		00B7E30A0EDCAF2000F77EA2 /* SampleDither.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2DF0EDCAF2000F77EA2 /* SampleDither.cpp */; };
		00B7E30B0EDCAF2000F77EA2 /* SampleDrawLooper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2E00EDCAF2000F77EA2 /* SampleDrawLooper.cpp */; };
		00B7E30C0EDCAF2000F77EA2 /* SampleEmboss.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2E10EDCAF2000F77EA2 /* SampleEmboss.cpp */; };
		00B7E30D0EDCAF2000F77EA2 /* SampleEncode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2E20EDCAF2000F77EA2 /* SampleEncode.cpp */; };
		00B7E30F0EDCAF2000F77EA2 /* SampleFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2E40EDCAF2000F77EA2 /* SampleFilter.cpp */; };
		00B7E3100EDCAF2000F77EA2 /* SampleFilter2.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2E50EDCAF2000F77EA2 /* SampleFilter2.cpp */; };
		00B7E3110EDCAF2000F77EA2 /* SampleFontCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2E60EDCAF2000F77EA2 /* SampleFontCache.cpp */; };
		00B7E3130EDCAF2000F77EA2 /* SampleImage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2E80EDCAF2000F77EA2 /* SampleImage.cpp */; };
		00B7E3140EDCAF2000F77EA2 /* SampleImageDir.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2E90EDCAF2000F77EA2 /* SampleImageDir.cpp */; };
		00B7E3150EDCAF2000F77EA2 /* SampleLayers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2EA0EDCAF2000F77EA2 /* SampleLayers.cpp */; };
		00B7E3160EDCAF2000F77EA2 /* SampleLines.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2EB0EDCAF2000F77EA2 /* SampleLines.cpp */; };
		00B7E3170EDCAF2000F77EA2 /* SampleMeasure.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2EC0EDCAF2000F77EA2 /* SampleMeasure.cpp */; };
		00B7E3180EDCAF2000F77EA2 /* SampleNinePatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2ED0EDCAF2000F77EA2 /* SampleNinePatch.cpp */; };
		00B7E3190EDCAF2000F77EA2 /* SampleOverflow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2EE0EDCAF2000F77EA2 /* SampleOverflow.cpp */; };
		00B7E31A0EDCAF2000F77EA2 /* SamplePageFlip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2EF0EDCAF2000F77EA2 /* SamplePageFlip.cpp */; };
		00B7E31B0EDCAF2000F77EA2 /* SamplePatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F00EDCAF2000F77EA2 /* SamplePatch.cpp */; };
		00B7E31C0EDCAF2000F77EA2 /* SamplePath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F10EDCAF2000F77EA2 /* SamplePath.cpp */; };
		00B7E31D0EDCAF2000F77EA2 /* SamplePathEffects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F20EDCAF2000F77EA2 /* SamplePathEffects.cpp */; };
		00B7E31E0EDCAF2000F77EA2 /* SamplePicture.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F30EDCAF2000F77EA2 /* SamplePicture.cpp */; };
		00B7E31F0EDCAF2000F77EA2 /* SamplePoints.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F40EDCAF2000F77EA2 /* SamplePoints.cpp */; };
		00B7E3200EDCAF2000F77EA2 /* SamplePolyToPoly.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F50EDCAF2000F77EA2 /* SamplePolyToPoly.cpp */; };
		00B7E3220EDCAF2000F77EA2 /* SampleShaders.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F70EDCAF2000F77EA2 /* SampleShaders.cpp */; };
		00B7E3230EDCAF2000F77EA2 /* SampleStrokeText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F80EDCAF2000F77EA2 /* SampleStrokeText.cpp */; };
		00B7E3240EDCAF2000F77EA2 /* SampleTests.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2F90EDCAF2000F77EA2 /* SampleTests.cpp */; };
		00B7E3250EDCAF2000F77EA2 /* SampleText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2FA0EDCAF2000F77EA2 /* SampleText.cpp */; };
		00B7E3260EDCAF2000F77EA2 /* SampleTextAlpha.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2FB0EDCAF2000F77EA2 /* SampleTextAlpha.cpp */; };
		00B7E3270EDCAF2000F77EA2 /* SampleTextEffects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2FC0EDCAF2000F77EA2 /* SampleTextEffects.cpp */; };
		00B7E3280EDCAF2000F77EA2 /* SampleTextOnPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2FD0EDCAF2000F77EA2 /* SampleTextOnPath.cpp */; };
		00B7E3290EDCAF2000F77EA2 /* SampleTiling.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2FE0EDCAF2000F77EA2 /* SampleTiling.cpp */; };
		00B7E32A0EDCAF2000F77EA2 /* SampleTypeface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E2FF0EDCAF2000F77EA2 /* SampleTypeface.cpp */; };
		00B7E32B0EDCAF2000F77EA2 /* SampleVertices.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E3000EDCAF2000F77EA2 /* SampleVertices.cpp */; };
		00B7E32C0EDCAF2000F77EA2 /* SampleXfermodes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E3010EDCAF2000F77EA2 /* SampleXfermodes.cpp */; };
		00B7E32D0EDCAF2000F77EA2 /* vertexdump.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E3020EDCAF2000F77EA2 /* vertexdump.cpp */; };
		00B7E3560EDCB03600F77EA2 /* test.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E3520EDCB03600F77EA2 /* test.cpp */; };
		00B7E3570EDCB03600F77EA2 /* test_drawcolor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E3540EDCB03600F77EA2 /* test_drawcolor.cpp */; };
		00B7E3580EDCB03600F77EA2 /* test_drawrect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E3550EDCB03600F77EA2 /* test_drawrect.cpp */; };
		00D12E4D0DAD3D0A003918C5 /* libanimator.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0013C7920D94043200B41703 /* libanimator.a */; };
		00ED8CD70D3E9FD900651393 /* libexpat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C320D3E999300651393 /* libexpat.a */; };
		00ED8CD80D3E9FDB00651393 /* libfreetype.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C380D3E999300651393 /* libfreetype.a */; };
		00ED8CDB0D3E9FE300651393 /* libjpeg.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C480D3E999300651393 /* libjpeg.a */; };
		00ED8CDC0D3E9FE500651393 /* liblibpng.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C4C0D3E999300651393 /* liblibpng.a */; };
		00ED8CDD0D3E9FE700651393 /* libports-mac.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C520D3E999300651393 /* libports-mac.a */; };
		00ED8CDE0D3E9FEA00651393 /* libports.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C580D3E999300651393 /* libports.a */; };
		00ED8CE00D3E9FEF00651393 /* libzlib.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00ED8C620D3E999300651393 /* libzlib.a */; };
		8D0C4E8D0486CD37000505A6 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */; };
		8D0C4E8E0486CD37000505A6 /* main.nib in Resources */ = {isa = PBXBuildFile; fileRef = 02345980000FD03B11CA0E72 /* main.nib */; };
		8D0C4E920486CD37000505A6 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 20286C33FDCF999611CA2CEA /* Carbon.framework */; };
/* End PBXBuildFile section */

/* Begin PBXContainerItemProxy section */
		0008AEDD0DABF01400477EFB /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0008AED90DABF01300477EFB /* giflib.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = giflib;
		};
		0008AF0F0DABF9BD00477EFB /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0008AED90DABF01300477EFB /* giflib.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = giflib;
		};
		0013C7910D94043200B41703 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0013C78A0D94043200B41703 /* animator.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = animator;
		};
		0013C7940D94044800B41703 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 0013C78A0D94043200B41703 /* animator.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = animator;
		};
		009A740D0DA11B1F00876C03 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 009A74060DA11B1F00876C03 /* GL.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = GL;
		};
		009A741C0DA11BAE00876C03 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 009A74060DA11B1F00876C03 /* GL.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = GL;
		};
		00ED8C2B0D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C060D3E999300651393 /* corecg.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = corecg;
		};
		00ED8C310D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C090D3E999300651393 /* expat.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = expat;
		};
		00ED8C370D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C0C0D3E999300651393 /* freetype2.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = freetype;
		};
		00ED8C430D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C120D3E999300651393 /* graphics.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC06F0554671400DB518D;
			remoteInfo = graphics;
		};
		00ED8C470D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C150D3E999300651393 /* jpeg.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = jpeg;
		};
		00ED8C4B0D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C180D3E999300651393 /* libpng.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = libpng;
		};
		00ED8C510D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C1B0D3E999300651393 /* ports-mac.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = "ports-mac";
		};
		00ED8C570D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C1E0D3E999300651393 /* ports.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = ports;
		};
		00ED8C5D0D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C210D3E999300651393 /* views.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = views;
		};
		00ED8C610D3E999300651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C240D3E999300651393 /* zlib.xcodeproj */;
			proxyType = 2;
			remoteGlobalIDString = D2AAC046055464E500DB518D;
			remoteInfo = zlib;
		};
		00ED8C9D0D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C1B0D3E999300651393 /* ports-mac.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = "ports-mac";
		};
		00ED8C9F0D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C1E0D3E999300651393 /* ports.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = ports;
		};
		00ED8CA10D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C150D3E999300651393 /* jpeg.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = jpeg;
		};
		00ED8CA30D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C120D3E999300651393 /* graphics.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC06E0554671400DB518D;
			remoteInfo = graphics;
		};
		00ED8CA70D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C090D3E999300651393 /* expat.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = expat;
		};
		00ED8CA90D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C210D3E999300651393 /* views.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = views;
		};
		00ED8CAB0D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C060D3E999300651393 /* corecg.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = corecg;
		};
		00ED8CAD0D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C240D3E999300651393 /* zlib.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = zlib;
		};
		00ED8CAF0D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C0C0D3E999300651393 /* freetype2.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = freetype;
		};
		00ED8CB10D3E9AFA00651393 /* PBXContainerItemProxy */ = {
			isa = PBXContainerItemProxy;
			containerPortal = 00ED8C180D3E999300651393 /* libpng.xcodeproj */;
			proxyType = 1;
			remoteGlobalIDString = D2AAC045055464E500DB518D;
			remoteInfo = libpng;
		};
/* End PBXContainerItemProxy section */

/* Begin PBXFileReference section */
		0008AED90DABF01300477EFB /* giflib.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = giflib.xcodeproj; path = ../giflib.xcodeproj; sourceTree = SOURCE_ROOT; };
		0013C78A0D94043200B41703 /* animator.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = animator.xcodeproj; path = ../animator.xcodeproj; sourceTree = SOURCE_ROOT; };
		00152A7F0EE71EB60068F9B2 /* SkDumpCanvas.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkDumpCanvas.cpp; path = ../../libsgl/effects/SkDumpCanvas.cpp; sourceTree = SOURCE_ROOT; };
		00152A810EE71EEC0068F9B2 /* SkDumpCanvas.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkDumpCanvas.h; path = ../../include/graphics/SkDumpCanvas.h; sourceTree = SOURCE_ROOT; };
		0068600F0D8A1C8A00CD71AA /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = SDKs/MacOSX10.5.sdk/System/Library/Frameworks/OpenGL.framework; sourceTree = SYSTEM_DEVELOPER_DIR; };
		006860280D8A1DFB00CD71AA /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = SDKs/MacOSX10.5.sdk/System/Library/Frameworks/AGL.framework; sourceTree = SYSTEM_DEVELOPER_DIR; };
		0082BE790EE414DE00DEE451 /* SkSetPoly3To3.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkSetPoly3To3.cpp; path = ../../test/SkSetPoly3To3.cpp; sourceTree = SOURCE_ROOT; };
		0082BE7A0EE414DE00DEE451 /* SkSetPoly3To3_A.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkSetPoly3To3_A.cpp; path = ../../test/SkSetPoly3To3_A.cpp; sourceTree = SOURCE_ROOT; };
		0082BE7B0EE414DE00DEE451 /* SkSetPoly3To3_D.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SkSetPoly3To3_D.cpp; path = ../../test/SkSetPoly3To3_D.cpp; sourceTree = SOURCE_ROOT; };
		009A74060DA11B1F00876C03 /* GL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = GL.xcodeproj; path = ../GL.xcodeproj; sourceTree = SOURCE_ROOT; };
		00B7E2D70EDCAF2000F77EA2 /* SampleAll.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleAll.cpp; path = ../../Samples/SampleAll.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2D80EDCAF2000F77EA2 /* SampleApp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleApp.cpp; path = ../../Samples/SampleApp.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2D90EDCAF2000F77EA2 /* SampleArc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleArc.cpp; path = ../../Samples/SampleArc.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2DA0EDCAF2000F77EA2 /* SampleBitmapRect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleBitmapRect.cpp; path = ../../Samples/SampleBitmapRect.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2DB0EDCAF2000F77EA2 /* SampleCamera.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleCamera.cpp; path = ../../Samples/SampleCamera.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2DC0EDCAF2000F77EA2 /* SampleCircle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleCircle.cpp; path = ../../Samples/SampleCircle.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2DD0EDCAF2000F77EA2 /* SampleCode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SampleCode.h; path = ../../Samples/SampleCode.h; sourceTree = SOURCE_ROOT; };
		00B7E2DE0EDCAF2000F77EA2 /* SampleCull.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleCull.cpp; path = ../../Samples/SampleCull.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2DF0EDCAF2000F77EA2 /* SampleDither.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleDither.cpp; path = ../../Samples/SampleDither.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E00EDCAF2000F77EA2 /* SampleDrawLooper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleDrawLooper.cpp; path = ../../Samples/SampleDrawLooper.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E10EDCAF2000F77EA2 /* SampleEmboss.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleEmboss.cpp; path = ../../Samples/SampleEmboss.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E20EDCAF2000F77EA2 /* SampleEncode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleEncode.cpp; path = ../../Samples/SampleEncode.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E30EDCAF2000F77EA2 /* SampleFillType.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFillType.cpp; path = ../../Samples/SampleFillType.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E40EDCAF2000F77EA2 /* SampleFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFilter.cpp; path = ../../Samples/SampleFilter.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E50EDCAF2000F77EA2 /* SampleFilter2.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFilter2.cpp; path = ../../Samples/SampleFilter2.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E60EDCAF2000F77EA2 /* SampleFontCache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFontCache.cpp; path = ../../Samples/SampleFontCache.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E70EDCAF2000F77EA2 /* SampleGL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleGL.cpp; path = ../../Samples/SampleGL.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E80EDCAF2000F77EA2 /* SampleImage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleImage.cpp; path = ../../Samples/SampleImage.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2E90EDCAF2000F77EA2 /* SampleImageDir.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleImageDir.cpp; path = ../../Samples/SampleImageDir.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2EA0EDCAF2000F77EA2 /* SampleLayers.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleLayers.cpp; path = ../../Samples/SampleLayers.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2EB0EDCAF2000F77EA2 /* SampleLines.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleLines.cpp; path = ../../Samples/SampleLines.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2EC0EDCAF2000F77EA2 /* SampleMeasure.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleMeasure.cpp; path = ../../Samples/SampleMeasure.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2ED0EDCAF2000F77EA2 /* SampleNinePatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleNinePatch.cpp; path = ../../Samples/SampleNinePatch.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2EE0EDCAF2000F77EA2 /* SampleOverflow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleOverflow.cpp; path = ../../Samples/SampleOverflow.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2EF0EDCAF2000F77EA2 /* SamplePageFlip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePageFlip.cpp; path = ../../Samples/SamplePageFlip.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F00EDCAF2000F77EA2 /* SamplePatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePatch.cpp; path = ../../Samples/SamplePatch.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F10EDCAF2000F77EA2 /* SamplePath.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePath.cpp; path = ../../Samples/SamplePath.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F20EDCAF2000F77EA2 /* SamplePathEffects.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePathEffects.cpp; path = ../../Samples/SamplePathEffects.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F30EDCAF2000F77EA2 /* SamplePicture.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePicture.cpp; path = ../../Samples/SamplePicture.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F40EDCAF2000F77EA2 /* SamplePoints.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePoints.cpp; path = ../../Samples/SamplePoints.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F50EDCAF2000F77EA2 /* SamplePolyToPoly.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePolyToPoly.cpp; path = ../../Samples/SamplePolyToPoly.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F60EDCAF2000F77EA2 /* SampleRegion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleRegion.cpp; path = ../../Samples/SampleRegion.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F70EDCAF2000F77EA2 /* SampleShaders.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleShaders.cpp; path = ../../Samples/SampleShaders.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F80EDCAF2000F77EA2 /* SampleStrokeText.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleStrokeText.cpp; path = ../../Samples/SampleStrokeText.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2F90EDCAF2000F77EA2 /* SampleTests.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTests.cpp; path = ../../Samples/SampleTests.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2FA0EDCAF2000F77EA2 /* SampleText.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleText.cpp; path = ../../Samples/SampleText.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2FB0EDCAF2000F77EA2 /* SampleTextAlpha.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTextAlpha.cpp; path = ../../Samples/SampleTextAlpha.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2FC0EDCAF2000F77EA2 /* SampleTextEffects.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTextEffects.cpp; path = ../../Samples/SampleTextEffects.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2FD0EDCAF2000F77EA2 /* SampleTextOnPath.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTextOnPath.cpp; path = ../../Samples/SampleTextOnPath.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2FE0EDCAF2000F77EA2 /* SampleTiling.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTiling.cpp; path = ../../Samples/SampleTiling.cpp; sourceTree = SOURCE_ROOT; };
		00B7E2FF0EDCAF2000F77EA2 /* SampleTypeface.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTypeface.cpp; path = ../../Samples/SampleTypeface.cpp; sourceTree = SOURCE_ROOT; };
		00B7E3000EDCAF2000F77EA2 /* SampleVertices.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleVertices.cpp; path = ../../Samples/SampleVertices.cpp; sourceTree = SOURCE_ROOT; };
		00B7E3010EDCAF2000F77EA2 /* SampleXfermodes.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleXfermodes.cpp; path = ../../Samples/SampleXfermodes.cpp; sourceTree = SOURCE_ROOT; };
		00B7E3020EDCAF2000F77EA2 /* vertexdump.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = vertexdump.cpp; path = ../../Samples/vertexdump.cpp; sourceTree = SOURCE_ROOT; };
		00B7E3430EDCAFA600F77EA2 /* SkGeometry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SkGeometry.h; path = ../../libsgl/sgl/SkGeometry.h; sourceTree = SOURCE_ROOT; };
		00B7E3520EDCB03600F77EA2 /* test.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = test.cpp; path = ../../test/test.cpp; sourceTree = SOURCE_ROOT; };
		00B7E3530EDCB03600F77EA2 /* test.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = test.h; path = ../../test/test.h; sourceTree = SOURCE_ROOT; };
		00B7E3540EDCB03600F77EA2 /* test_drawcolor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = test_drawcolor.cpp; path = ../../test/test_drawcolor.cpp; sourceTree = SOURCE_ROOT; };
		00B7E3550EDCB03600F77EA2 /* test_drawrect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = test_drawrect.cpp; path = ../../test/test_drawrect.cpp; sourceTree = SOURCE_ROOT; };
		00ED8C060D3E999300651393 /* corecg.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = corecg.xcodeproj; path = ../corecg.xcodeproj; sourceTree = SOURCE_ROOT; };
		00ED8C090D3E999300651393 /* expat.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = expat.xcodeproj; path = ../expat.xcodeproj; sourceTree = SOURCE_ROOT; };
		00ED8C0C0D3E999300651393 /* freetype2.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = freetype2.xcodeproj; path = ../freetype2.xcodeproj; sourceTree = SOURCE_ROOT; };
		00ED8C120D3E999300651393 /* graphics.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = graphics.xcodeproj; path = ../graphics.xcodeproj; sourceTree = SOURCE_ROOT; };
		00ED8C150D3E999300651393 /* jpeg.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = jpeg.xcodeproj; path = ../jpeg.xcodeproj; sourceTree = SOURCE_ROOT; };
		00ED8C180D3E999300651393 /* libpng.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = libpng.xcodeproj; path = ../libpng.xcodeproj; sourceTree = SOURCE_ROOT; };
		00ED8C1B0D3E999300651393 /* ports-mac.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = "ports-mac.xcodeproj"; path = "../ports-mac.xcodeproj"; sourceTree = SOURCE_ROOT; };
		00ED8C1E0D3E999300651393 /* ports.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ports.xcodeproj; path = ../ports.xcodeproj; sourceTree = SOURCE_ROOT; };
		00ED8C210D3E999300651393 /* views.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = views.xcodeproj; path = ../views.xcodeproj; sourceTree = SOURCE_ROOT; };
		00ED8C240D3E999300651393 /* zlib.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = zlib.xcodeproj; path = ../zlib.xcodeproj; sourceTree = SOURCE_ROOT; };
		0867D6ABFE840B52C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
		1870340FFE93FCAF11CA0CD7 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/main.nib; sourceTree = "<group>"; };
		20286C33FDCF999611CA2CEA /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
		8D0C4E960486CD37000505A6 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
		8D0C4E970486CD37000505A6 /* SampleCode.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SampleCode.app; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		8D0C4E910486CD37000505A6 /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				00ED8CD70D3E9FD900651393 /* libexpat.a in Frameworks */,
				00ED8CD80D3E9FDB00651393 /* libfreetype.a in Frameworks */,
				00ED8CDB0D3E9FE300651393 /* libjpeg.a in Frameworks */,
				00ED8CDC0D3E9FE500651393 /* liblibpng.a in Frameworks */,
				00ED8CDD0D3E9FE700651393 /* libports-mac.a in Frameworks */,
				00ED8CDE0D3E9FEA00651393 /* libports.a in Frameworks */,
				00ED8CE00D3E9FEF00651393 /* libzlib.a in Frameworks */,
				8D0C4E920486CD37000505A6 /* Carbon.framework in Frameworks */,
				0017F2CF0D6F3933008D9B31 /* libgraphics.a in Frameworks */,
				0017F2D00D6F393F008D9B31 /* libcorecg.a in Frameworks */,
				0017F2D60D6F3949008D9B31 /* libviews.a in Frameworks */,
				006860100D8A1C8B00CD71AA /* OpenGL.framework in Frameworks */,
				006860290D8A1DFB00CD71AA /* AGL.framework in Frameworks */,
				009A74250DA11C5D00876C03 /* libGL.a in Frameworks */,
				0008AEE10DABF08F00477EFB /* libgiflib.a in Frameworks */,
				00D12E4D0DAD3D0A003918C5 /* libanimator.a in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		0008AEDA0DABF01300477EFB /* Products */ = {
			isa = PBXGroup;
			children = (
				0008AEDE0DABF01400477EFB /* libgiflib.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		0013C78B0D94043200B41703 /* Products */ = {
			isa = PBXGroup;
			children = (
				0013C7920D94043200B41703 /* libanimator.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		009A74070DA11B1F00876C03 /* Products */ = {
			isa = PBXGroup;
			children = (
				009A740E0DA11B1F00876C03 /* libGL.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00B7E2D60EDCAF0E00F77EA2 /* Samples */ = {
			isa = PBXGroup;
			children = (
				00B7E3430EDCAFA600F77EA2 /* SkGeometry.h */,
				00B7E2D70EDCAF2000F77EA2 /* SampleAll.cpp */,
				00B7E2D80EDCAF2000F77EA2 /* SampleApp.cpp */,
				00B7E2D90EDCAF2000F77EA2 /* SampleArc.cpp */,
				00B7E2DA0EDCAF2000F77EA2 /* SampleBitmapRect.cpp */,
				00B7E2DB0EDCAF2000F77EA2 /* SampleCamera.cpp */,
				00B7E2DC0EDCAF2000F77EA2 /* SampleCircle.cpp */,
				00B7E2DD0EDCAF2000F77EA2 /* SampleCode.h */,
				00B7E2DE0EDCAF2000F77EA2 /* SampleCull.cpp */,
				00B7E2DF0EDCAF2000F77EA2 /* SampleDither.cpp */,
				00B7E2E00EDCAF2000F77EA2 /* SampleDrawLooper.cpp */,
				00B7E2E10EDCAF2000F77EA2 /* SampleEmboss.cpp */,
				00B7E2E20EDCAF2000F77EA2 /* SampleEncode.cpp */,
				00B7E2E30EDCAF2000F77EA2 /* SampleFillType.cpp */,
				00B7E2E40EDCAF2000F77EA2 /* SampleFilter.cpp */,
				00B7E2E50EDCAF2000F77EA2 /* SampleFilter2.cpp */,
				00B7E2E60EDCAF2000F77EA2 /* SampleFontCache.cpp */,
				00B7E2E70EDCAF2000F77EA2 /* SampleGL.cpp */,
				00B7E2E80EDCAF2000F77EA2 /* SampleImage.cpp */,
				00B7E2E90EDCAF2000F77EA2 /* SampleImageDir.cpp */,
				00B7E2EA0EDCAF2000F77EA2 /* SampleLayers.cpp */,
				00B7E2EB0EDCAF2000F77EA2 /* SampleLines.cpp */,
				00B7E2EC0EDCAF2000F77EA2 /* SampleMeasure.cpp */,
				00B7E2ED0EDCAF2000F77EA2 /* SampleNinePatch.cpp */,
				00B7E2EE0EDCAF2000F77EA2 /* SampleOverflow.cpp */,
				00B7E2EF0EDCAF2000F77EA2 /* SamplePageFlip.cpp */,
				00B7E2F00EDCAF2000F77EA2 /* SamplePatch.cpp */,
				00B7E2F10EDCAF2000F77EA2 /* SamplePath.cpp */,
				00B7E2F20EDCAF2000F77EA2 /* SamplePathEffects.cpp */,
				00B7E2F30EDCAF2000F77EA2 /* SamplePicture.cpp */,
				00B7E2F40EDCAF2000F77EA2 /* SamplePoints.cpp */,
				00B7E2F50EDCAF2000F77EA2 /* SamplePolyToPoly.cpp */,
				00B7E2F60EDCAF2000F77EA2 /* SampleRegion.cpp */,
				00B7E2F70EDCAF2000F77EA2 /* SampleShaders.cpp */,
				00B7E2F80EDCAF2000F77EA2 /* SampleStrokeText.cpp */,
				00B7E2F90EDCAF2000F77EA2 /* SampleTests.cpp */,
				00B7E2FA0EDCAF2000F77EA2 /* SampleText.cpp */,
				00B7E2FB0EDCAF2000F77EA2 /* SampleTextAlpha.cpp */,
				00B7E2FC0EDCAF2000F77EA2 /* SampleTextEffects.cpp */,
				00B7E2FD0EDCAF2000F77EA2 /* SampleTextOnPath.cpp */,
				00B7E2FE0EDCAF2000F77EA2 /* SampleTiling.cpp */,
				00B7E2FF0EDCAF2000F77EA2 /* SampleTypeface.cpp */,
				00B7E3000EDCAF2000F77EA2 /* SampleVertices.cpp */,
				00B7E3010EDCAF2000F77EA2 /* SampleXfermodes.cpp */,
				00B7E3020EDCAF2000F77EA2 /* vertexdump.cpp */,
			);
			name = Samples;
			sourceTree = "<group>";
		};
		00B7E3510EDCB02800F77EA2 /* tests */ = {
			isa = PBXGroup;
			children = (
				00152A810EE71EEC0068F9B2 /* SkDumpCanvas.h */,
				00152A7F0EE71EB60068F9B2 /* SkDumpCanvas.cpp */,
				0082BE790EE414DE00DEE451 /* SkSetPoly3To3.cpp */,
				0082BE7A0EE414DE00DEE451 /* SkSetPoly3To3_A.cpp */,
				0082BE7B0EE414DE00DEE451 /* SkSetPoly3To3_D.cpp */,
				00B7E3520EDCB03600F77EA2 /* test.cpp */,
				00B7E3530EDCB03600F77EA2 /* test.h */,
				00B7E3540EDCB03600F77EA2 /* test_drawcolor.cpp */,
				00B7E3550EDCB03600F77EA2 /* test_drawrect.cpp */,
			);
			name = tests;
			sourceTree = "<group>";
		};
		00ED8C070D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C2C0D3E999300651393 /* libcorecg.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C0A0D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C320D3E999300651393 /* libexpat.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C0D0D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C380D3E999300651393 /* libfreetype.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C130D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C440D3E999300651393 /* libgraphics.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C160D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C480D3E999300651393 /* libjpeg.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C190D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C4C0D3E999300651393 /* liblibpng.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C1C0D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C520D3E999300651393 /* libports-mac.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C1F0D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C580D3E999300651393 /* libports.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C220D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C5E0D3E999300651393 /* libviews.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		00ED8C250D3E999300651393 /* Products */ = {
			isa = PBXGroup;
			children = (
				00ED8C620D3E999300651393 /* libzlib.a */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		195DF8CFFE9D517E11CA2CBB /* Products */ = {
			isa = PBXGroup;
			children = (
				8D0C4E970486CD37000505A6 /* SampleCode.app */,
			);
			name = Products;
			sourceTree = "<group>";
		};
		20286C29FDCF999611CA2CEA /* SampleCode */ = {
			isa = PBXGroup;
			children = (
				00B7E3510EDCB02800F77EA2 /* tests */,
				00B7E2D60EDCAF0E00F77EA2 /* Samples */,
				0008AED90DABF01300477EFB /* giflib.xcodeproj */,
				009A74060DA11B1F00876C03 /* GL.xcodeproj */,
				0013C78A0D94043200B41703 /* animator.xcodeproj */,
				00ED8C060D3E999300651393 /* corecg.xcodeproj */,
				00ED8C090D3E999300651393 /* expat.xcodeproj */,
				00ED8C0C0D3E999300651393 /* freetype2.xcodeproj */,
				00ED8C120D3E999300651393 /* graphics.xcodeproj */,
				00ED8C150D3E999300651393 /* jpeg.xcodeproj */,
				00ED8C180D3E999300651393 /* libpng.xcodeproj */,
				00ED8C1B0D3E999300651393 /* ports-mac.xcodeproj */,
				00ED8C1E0D3E999300651393 /* ports.xcodeproj */,
				00ED8C210D3E999300651393 /* views.xcodeproj */,
				00ED8C240D3E999300651393 /* zlib.xcodeproj */,
				20286C2CFDCF999611CA2CEA /* Resources */,
				20286C32FDCF999611CA2CEA /* External Frameworks and Libraries */,
				195DF8CFFE9D517E11CA2CBB /* Products */,
			);
			name = SampleCode;
			sourceTree = "<group>";
		};
		20286C2CFDCF999611CA2CEA /* Resources */ = {
			isa = PBXGroup;
			children = (
				8D0C4E960486CD37000505A6 /* Info.plist */,
				0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */,
				02345980000FD03B11CA0E72 /* main.nib */,
			);
			name = Resources;
			sourceTree = "<group>";
		};
		20286C32FDCF999611CA2CEA /* External Frameworks and Libraries */ = {
			isa = PBXGroup;
			children = (
				006860280D8A1DFB00CD71AA /* AGL.framework */,
				0068600F0D8A1C8A00CD71AA /* OpenGL.framework */,
				20286C33FDCF999611CA2CEA /* Carbon.framework */,
			);
			name = "External Frameworks and Libraries";
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		8D0C4E890486CD37000505A6 /* SampleCode */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = C0E91AC508A95435008D54AB /* Build configuration list for PBXNativeTarget "SampleCode" */;
			buildPhases = (
				8D0C4E8C0486CD37000505A6 /* Resources */,
				8D0C4E8F0486CD37000505A6 /* Sources */,
				8D0C4E910486CD37000505A6 /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
				00ED8C9E0D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CA00D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CA20D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CA40D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CA80D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CAA0D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CAC0D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CAE0D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CB00D3E9AFA00651393 /* PBXTargetDependency */,
				00ED8CB20D3E9AFA00651393 /* PBXTargetDependency */,
				0013C7950D94044800B41703 /* PBXTargetDependency */,
				009A741D0DA11BAE00876C03 /* PBXTargetDependency */,
				0008AF100DABF9BD00477EFB /* PBXTargetDependency */,
			);
			name = SampleCode;
			productInstallPath = "$(HOME)/Applications";
			productName = SampleCode;
			productReference = 8D0C4E970486CD37000505A6 /* SampleCode.app */;
			productType = "com.apple.product-type.application";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		20286C28FDCF999611CA2CEA /* Project object */ = {
			isa = PBXProject;
			buildConfigurationList = C0E91AC908A95435008D54AB /* Build configuration list for PBXProject "SampleCode" */;
			compatibilityVersion = "Xcode 2.4";
			hasScannedForEncodings = 1;
			mainGroup = 20286C29FDCF999611CA2CEA /* SampleCode */;
			projectDirPath = "";
			projectReferences = (
				{
					ProductGroup = 0013C78B0D94043200B41703 /* Products */;
					ProjectRef = 0013C78A0D94043200B41703 /* animator.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C070D3E999300651393 /* Products */;
					ProjectRef = 00ED8C060D3E999300651393 /* corecg.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C0A0D3E999300651393 /* Products */;
					ProjectRef = 00ED8C090D3E999300651393 /* expat.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C0D0D3E999300651393 /* Products */;
					ProjectRef = 00ED8C0C0D3E999300651393 /* freetype2.xcodeproj */;
				},
				{
					ProductGroup = 0008AEDA0DABF01300477EFB /* Products */;
					ProjectRef = 0008AED90DABF01300477EFB /* giflib.xcodeproj */;
				},
				{
					ProductGroup = 009A74070DA11B1F00876C03 /* Products */;
					ProjectRef = 009A74060DA11B1F00876C03 /* GL.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C130D3E999300651393 /* Products */;
					ProjectRef = 00ED8C120D3E999300651393 /* graphics.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C160D3E999300651393 /* Products */;
					ProjectRef = 00ED8C150D3E999300651393 /* jpeg.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C190D3E999300651393 /* Products */;
					ProjectRef = 00ED8C180D3E999300651393 /* libpng.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C1C0D3E999300651393 /* Products */;
					ProjectRef = 00ED8C1B0D3E999300651393 /* ports-mac.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C1F0D3E999300651393 /* Products */;
					ProjectRef = 00ED8C1E0D3E999300651393 /* ports.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C220D3E999300651393 /* Products */;
					ProjectRef = 00ED8C210D3E999300651393 /* views.xcodeproj */;
				},
				{
					ProductGroup = 00ED8C250D3E999300651393 /* Products */;
					ProjectRef = 00ED8C240D3E999300651393 /* zlib.xcodeproj */;
				},
			);
			projectRoot = "";
			targets = (
				8D0C4E890486CD37000505A6 /* SampleCode */,
			);
		};
/* End PBXProject section */

/* Begin PBXReferenceProxy section */
		0008AEDE0DABF01400477EFB /* libgiflib.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libgiflib.a;
			remoteRef = 0008AEDD0DABF01400477EFB /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		0013C7920D94043200B41703 /* libanimator.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libanimator.a;
			remoteRef = 0013C7910D94043200B41703 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		009A740E0DA11B1F00876C03 /* libGL.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libGL.a;
			remoteRef = 009A740D0DA11B1F00876C03 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C2C0D3E999300651393 /* libcorecg.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libcorecg.a;
			remoteRef = 00ED8C2B0D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C320D3E999300651393 /* libexpat.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libexpat.a;
			remoteRef = 00ED8C310D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C380D3E999300651393 /* libfreetype.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libfreetype.a;
			remoteRef = 00ED8C370D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C440D3E999300651393 /* libgraphics.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libgraphics.a;
			remoteRef = 00ED8C430D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C480D3E999300651393 /* libjpeg.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libjpeg.a;
			remoteRef = 00ED8C470D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C4C0D3E999300651393 /* liblibpng.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = liblibpng.a;
			remoteRef = 00ED8C4B0D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C520D3E999300651393 /* libports-mac.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = "libports-mac.a";
			remoteRef = 00ED8C510D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C580D3E999300651393 /* libports.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libports.a;
			remoteRef = 00ED8C570D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C5E0D3E999300651393 /* libviews.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libviews.a;
			remoteRef = 00ED8C5D0D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
		00ED8C620D3E999300651393 /* libzlib.a */ = {
			isa = PBXReferenceProxy;
			fileType = archive.ar;
			path = libzlib.a;
			remoteRef = 00ED8C610D3E999300651393 /* PBXContainerItemProxy */;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
/* End PBXReferenceProxy section */

/* Begin PBXResourcesBuildPhase section */
		8D0C4E8C0486CD37000505A6 /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				8D0C4E8D0486CD37000505A6 /* InfoPlist.strings in Resources */,
				8D0C4E8E0486CD37000505A6 /* main.nib in Resources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		8D0C4E8F0486CD37000505A6 /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				00B7E3030EDCAF2000F77EA2 /* SampleAll.cpp in Sources */,
				00B7E3040EDCAF2000F77EA2 /* SampleApp.cpp in Sources */,
				00B7E3060EDCAF2000F77EA2 /* SampleBitmapRect.cpp in Sources */,
				00B7E3070EDCAF2000F77EA2 /* SampleCamera.cpp in Sources */,
				00B7E3090EDCAF2000F77EA2 /* SampleCull.cpp in Sources */,
				00B7E30B0EDCAF2000F77EA2 /* SampleDrawLooper.cpp in Sources */,
				00B7E30C0EDCAF2000F77EA2 /* SampleEmboss.cpp in Sources */,
				00B7E30D0EDCAF2000F77EA2 /* SampleEncode.cpp in Sources */,
				00B7E30F0EDCAF2000F77EA2 /* SampleFilter.cpp in Sources */,
				00B7E3100EDCAF2000F77EA2 /* SampleFilter2.cpp in Sources */,
				00B7E3110EDCAF2000F77EA2 /* SampleFontCache.cpp in Sources */,
				00B7E3130EDCAF2000F77EA2 /* SampleImage.cpp in Sources */,
				00B7E3140EDCAF2000F77EA2 /* SampleImageDir.cpp in Sources */,
				00B7E3150EDCAF2000F77EA2 /* SampleLayers.cpp in Sources */,
				00B7E3160EDCAF2000F77EA2 /* SampleLines.cpp in Sources */,
				00B7E3170EDCAF2000F77EA2 /* SampleMeasure.cpp in Sources */,
				00B7E3180EDCAF2000F77EA2 /* SampleNinePatch.cpp in Sources */,
				00B7E3190EDCAF2000F77EA2 /* SampleOverflow.cpp in Sources */,
				00B7E31A0EDCAF2000F77EA2 /* SamplePageFlip.cpp in Sources */,
				00B7E31B0EDCAF2000F77EA2 /* SamplePatch.cpp in Sources */,
				00B7E31C0EDCAF2000F77EA2 /* SamplePath.cpp in Sources */,
				00B7E31D0EDCAF2000F77EA2 /* SamplePathEffects.cpp in Sources */,
				00B7E31E0EDCAF2000F77EA2 /* SamplePicture.cpp in Sources */,
				00B7E31F0EDCAF2000F77EA2 /* SamplePoints.cpp in Sources */,
				00B7E3200EDCAF2000F77EA2 /* SamplePolyToPoly.cpp in Sources */,
				00B7E3220EDCAF2000F77EA2 /* SampleShaders.cpp in Sources */,
				00B7E3230EDCAF2000F77EA2 /* SampleStrokeText.cpp in Sources */,
				00B7E3240EDCAF2000F77EA2 /* SampleTests.cpp in Sources */,
				00B7E3250EDCAF2000F77EA2 /* SampleText.cpp in Sources */,
				00B7E3260EDCAF2000F77EA2 /* SampleTextAlpha.cpp in Sources */,
				00B7E3270EDCAF2000F77EA2 /* SampleTextEffects.cpp in Sources */,
				00B7E3280EDCAF2000F77EA2 /* SampleTextOnPath.cpp in Sources */,
				00B7E3290EDCAF2000F77EA2 /* SampleTiling.cpp in Sources */,
				00B7E32A0EDCAF2000F77EA2 /* SampleTypeface.cpp in Sources */,
				00B7E32B0EDCAF2000F77EA2 /* SampleVertices.cpp in Sources */,
				00B7E32C0EDCAF2000F77EA2 /* SampleXfermodes.cpp in Sources */,
				00B7E32D0EDCAF2000F77EA2 /* vertexdump.cpp in Sources */,
				00B7E3560EDCB03600F77EA2 /* test.cpp in Sources */,
				00B7E3570EDCB03600F77EA2 /* test_drawcolor.cpp in Sources */,
				00B7E3580EDCB03600F77EA2 /* test_drawrect.cpp in Sources */,
				0082BE7C0EE414DE00DEE451 /* SkSetPoly3To3.cpp in Sources */,
				0081D7800EE45EF100AB0A0A /* SampleRegion.cpp in Sources */,
				00152A800EE71EB60068F9B2 /* SkDumpCanvas.cpp in Sources */,
				00B7E3080EDCAF2000F77EA2 /* SampleCircle.cpp in Sources */,
				00B7E3050EDCAF2000F77EA2 /* SampleArc.cpp in Sources */,
				00B7E30A0EDCAF2000F77EA2 /* SampleDither.cpp in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXTargetDependency section */
		0008AF100DABF9BD00477EFB /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = giflib;
			targetProxy = 0008AF0F0DABF9BD00477EFB /* PBXContainerItemProxy */;
		};
		0013C7950D94044800B41703 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = animator;
			targetProxy = 0013C7940D94044800B41703 /* PBXContainerItemProxy */;
		};
		009A741D0DA11BAE00876C03 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = GL;
			targetProxy = 009A741C0DA11BAE00876C03 /* PBXContainerItemProxy */;
		};
		00ED8C9E0D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = "ports-mac";
			targetProxy = 00ED8C9D0D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CA00D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = ports;
			targetProxy = 00ED8C9F0D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CA20D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = jpeg;
			targetProxy = 00ED8CA10D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CA40D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = graphics;
			targetProxy = 00ED8CA30D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CA80D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = expat;
			targetProxy = 00ED8CA70D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CAA0D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = views;
			targetProxy = 00ED8CA90D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CAC0D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = corecg;
			targetProxy = 00ED8CAB0D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CAE0D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = zlib;
			targetProxy = 00ED8CAD0D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CB00D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = freetype;
			targetProxy = 00ED8CAF0D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
		00ED8CB20D3E9AFA00651393 /* PBXTargetDependency */ = {
			isa = PBXTargetDependency;
			name = libpng;
			targetProxy = 00ED8CB10D3E9AFA00651393 /* PBXContainerItemProxy */;
		};
/* End PBXTargetDependency section */

/* Begin PBXVariantGroup section */
		02345980000FD03B11CA0E72 /* main.nib */ = {
			isa = PBXVariantGroup;
			children = (
				1870340FFE93FCAF11CA0CD7 /* English */,
			);
			name = main.nib;
			sourceTree = "<group>";
		};
		0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */ = {
			isa = PBXVariantGroup;
			children = (
				0867D6ABFE840B52C02AAC07 /* English */,
			);
			name = InfoPlist.strings;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		006B85250EED8C4400938119 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_CW_ASM_SYNTAX = NO;
				GCC_DEBUGGING_SYMBOLS = full;
				GCC_ENABLE_ASM_KEYWORD = NO;
				GCC_ENABLE_CPP_EXCEPTIONS = NO;
				GCC_ENABLE_CPP_RTTI = NO;
				GCC_ENABLE_PASCAL_STRINGS = NO;
				GCC_ENABLE_SYMBOL_SEPARATION = NO;
				GCC_OPTIMIZATION_LEVEL = 2;
				GCC_PREFIX_HEADER = " ";
				GCC_PREPROCESSOR_DEFINITIONS = (
					SK_RELEASE,
					SK_BUILD_FOR_MAC,
				);
				GCC_THREADSAFE_STATICS = NO;
				GCC_USE_GCC3_PFE_SUPPORT = NO;
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				PREBINDING = NO;
				PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO;
				USER_HEADER_SEARCH_PATHS = "../../include/**";
			};
			name = Release;
		};
		006B85260EED8C4400938119 /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				COPY_PHASE_STRIP = NO;
				FRAMEWORK_SEARCH_PATHS = (
					"$(inherited)",
					"$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
				);
				FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(DEVELOPER_DIR)/SDKs/MacOSX10.5.sdk/System/Library/Frameworks\"";
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_ENABLE_FIX_AND_CONTINUE = YES;
				GCC_MODEL_TUNING = G5;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PRECOMPILE_PREFIX_HEADER = NO;
				GCC_PREFIX_HEADER = SampleCode_Prefix.pch;
				INFOPLIST_FILE = Info.plist;
				INSTALL_PATH = "$(HOME)/Applications";
				PRODUCT_NAME = SampleCode;
				WRAPPER_EXTENSION = app;
				ZERO_LINK = YES;
			};
			name = Release;
		};
		C0E91AC608A95435008D54AB /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				COPY_PHASE_STRIP = NO;
				FRAMEWORK_SEARCH_PATHS = (
					"$(inherited)",
					"$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
				);
				FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(DEVELOPER_DIR)/SDKs/MacOSX10.5.sdk/System/Library/Frameworks\"";
				GCC_DYNAMIC_NO_PIC = NO;
				GCC_ENABLE_FIX_AND_CONTINUE = YES;
				GCC_MODEL_TUNING = G5;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PRECOMPILE_PREFIX_HEADER = NO;
				GCC_PREFIX_HEADER = SampleCode_Prefix.pch;
				INFOPLIST_FILE = Info.plist;
				INSTALL_PATH = "$(HOME)/Applications";
				PRODUCT_NAME = SampleCode;
				WRAPPER_EXTENSION = app;
				ZERO_LINK = YES;
			};
			name = Debug;
		};
		C0E91ACA08A95435008D54AB /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_CW_ASM_SYNTAX = NO;
				GCC_DEBUGGING_SYMBOLS = full;
				GCC_ENABLE_ASM_KEYWORD = NO;
				GCC_ENABLE_CPP_EXCEPTIONS = NO;
				GCC_ENABLE_CPP_RTTI = NO;
				GCC_ENABLE_PASCAL_STRINGS = NO;
				GCC_ENABLE_SYMBOL_SEPARATION = NO;
				GCC_OPTIMIZATION_LEVEL = 0;
				GCC_PREFIX_HEADER = " ";
				GCC_PREPROCESSOR_DEFINITIONS = (
					SK_DEBUG,
					SK_BUILD_FOR_MAC,
				);
				GCC_THREADSAFE_STATICS = NO;
				GCC_USE_GCC3_PFE_SUPPORT = NO;
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				PREBINDING = NO;
				PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO;
				USER_HEADER_SEARCH_PATHS = "../../include/**";
			};
			name = Debug;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		C0E91AC508A95435008D54AB /* Build configuration list for PBXNativeTarget "SampleCode" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				C0E91AC608A95435008D54AB /* Debug */,
				006B85260EED8C4400938119 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Debug;
		};
		C0E91AC908A95435008D54AB /* Build configuration list for PBXProject "SampleCode" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				C0E91ACA08A95435008D54AB /* Debug */,
				006B85250EED8C4400938119 /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Debug;
		};
/* End XCConfigurationList section */
	};
	rootObject = 20286C28FDCF999611CA2CEA /* Project object */;
}
