// !$*UTF8*$!
{
	archiveVersion = 1;
	classes = {
	};
	objectVersion = 39;
	objects = {
		014CEA460018CE2711CA2923 = {
			buildSettings = {
			};
			isa = PBXBuildStyle;
			name = Development;
		};
		08FB7793FE84155DC02AAC07 = {
			buildSettings = {
			};
			buildStyles = (
				014CEA460018CE2711CA2923,
			);
			hasScannedForEncodings = 1;
			isa = PBXProject;
			mainGroup = 08FB7794FE84155DC02AAC07;
			projectDirPath = "";
			targets = (
				8DD76FA90486AB0100D96B5E,
			);
		};
		08FB7794FE84155DC02AAC07 = {
			children = (
				08FB7795FE84155DC02AAC07,
				1AB674ADFE9D54B511CA2CBB,
			);
			isa = PBXGroup;
			name = CompilerId@id_lang@;
			refType = 4;
			sourceTree = "<group>";
		};
		08FB7795FE84155DC02AAC07 = {
			children = (
				2C18F0B415DC1DC700593670,
			);
			isa = PBXGroup;
			name = Source;
			refType = 4;
			sourceTree = "<group>";
		};
		1AB674ADFE9D54B511CA2CBB = {
			children = (
				8DD76F6C0486A84900D96B5E,
			);
			isa = PBXGroup;
			name = Products;
			refType = 4;
			sourceTree = "<group>";
		};
		2C18F0B415DC1DC700593670 = {
			fileEncoding = 30;
			isa = PBXFileReference;
			explicitFileType = @id_type@;
			path = @id_src@;
			refType = 4;
			sourceTree = "<group>";
		};
		2C18F0B615DC1E0300593670 = {
			fileRef = 2C18F0B415DC1DC700593670;
			isa = PBXBuildFile;
			settings = {
			};
		};
		2C8FEB8E15DC1A1A00E56A5D = {
			isa = PBXShellScriptBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			inputPaths = (
			);
			outputPaths = (
			);
			runOnlyForDeploymentPostprocessing = 0;
			shellPath = /bin/sh;
			shellScript = "echo \"GCC_VERSION=$GCC_VERSION\"";
		};
		8DD76FA90486AB0100D96B5E = {
			buildPhases = (
				2C18F0B515DC1DCE00593670,
				2C8FEB8E15DC1A1A00E56A5D,
			);
			buildRules = (
			);
			buildSettings = {
				PRODUCT_NAME = CompilerId@id_lang@;
				SYMROOT = .;
			};
			dependencies = (
			);
			isa = PBXNativeTarget;
			name = CompilerId@id_lang@;
			productName = CompilerId@id_lang@;
			productReference = 8DD76F6C0486A84900D96B5E;
			productType = "com.apple.product-type.tool";
		};
		2C18F0B515DC1DCE00593670 = {
			buildActionMask = 2147483647;
			files = (
				2C18F0B615DC1E0300593670,
			);
			isa = PBXSourcesBuildPhase;
			runOnlyForDeploymentPostprocessing = 0;
		};
		8DD76F6C0486A84900D96B5E = {
			explicitFileType = "compiled.mach-o.executable";
			includeInIndex = 0;
			isa = PBXFileReference;
			path = CompilerId@id_lang@;
			refType = 3;
			sourceTree = BUILT_PRODUCTS_DIR;
		};
	};
	rootObject = 08FB7793FE84155DC02AAC07;
}
