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

/* Begin PBXBuildFile section */
		2220AF6109A447200030077C /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2220AF6009A447200030077C /* WebKit.framework */; };
		2220B04709A459ED0030077C /* Localized.r in Rez */ = {isa = PBXBuildFile; fileRef = 2220B04609A459ED0030077C /* Localized.r */; };
		84226A8E06823C4700780194 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84226A8D06823C4700780194 /* Carbon.framework */; };
		8454AD210680F60300DFAEA4 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 8454AD200680F60300DFAEA4 /* main.c */; };
		8D576314048677EA00EA77CD /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0AA1909FFE8422F4C02AAC07 /* CoreFoundation.framework */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
		0AA1909FFE8422F4C02AAC07 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = "<absolute>"; };
		2220AF6009A447200030077C /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = /System/Library/Frameworks/WebKit.framework; sourceTree = "<absolute>"; };
		2220B03809A459B20030077C /* English */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; name = English; path = English.lproj/Localized.r; sourceTree = "<group>"; };
		84226A8D06823C4700780194 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };
		8454AD200680F60300DFAEA4 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; };
		8D576316048677EA00EA77CD /* NPN_Invoke.plugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NPN_Invoke.plugin; sourceTree = BUILT_PRODUCTS_DIR; };
		8D576317048677EA00EA77CD /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
		8D576313048677EA00EA77CD /* Frameworks */ = {
			isa = PBXFrameworksBuildPhase;
			buildActionMask = 2147483647;
			files = (
				84226A8E06823C4700780194 /* Carbon.framework in Frameworks */,
				8D576314048677EA00EA77CD /* CoreFoundation.framework in Frameworks */,
				2220AF6109A447200030077C /* WebKit.framework in Frameworks */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
		089C166AFE841209C02AAC07 /* NetscapeMoviePlugIn */ = {
			isa = PBXGroup;
			children = (
				08FB77AFFE84173DC02AAC07 /* Source */,
				089C167CFE841241C02AAC07 /* Resources */,
				089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
				19C28FB6FE9D52B211CA2CBB /* Products */,
			);
			name = NetscapeMoviePlugIn;
			sourceTree = "<group>";
		};
		089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = {
			isa = PBXGroup;
			children = (
				84226A8D06823C4700780194 /* Carbon.framework */,
				0AA1909FFE8422F4C02AAC07 /* CoreFoundation.framework */,
				2220AF6009A447200030077C /* WebKit.framework */,
			);
			name = "External Frameworks and Libraries";
			sourceTree = "<group>";
		};
		089C167CFE841241C02AAC07 /* Resources */ = {
			isa = PBXGroup;
			children = (
				8D576317048677EA00EA77CD /* Info.plist */,
				2220B04609A459ED0030077C /* Localized.r */,
			);
			name = Resources;
			sourceTree = "<group>";
		};
		08FB77AFFE84173DC02AAC07 /* Source */ = {
			isa = PBXGroup;
			children = (
				8454AD200680F60300DFAEA4 /* main.c */,
			);
			name = Source;
			sourceTree = "<group>";
		};
		19C28FB6FE9D52B211CA2CBB /* Products */ = {
			isa = PBXGroup;
			children = (
				8D576316048677EA00EA77CD /* NPN_Invoke.plugin */,
			);
			name = Products;
			sourceTree = "<group>";
		};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
		8D57630D048677EA00EA77CD /* NPN_Invoke */ = {
			isa = PBXNativeTarget;
			buildConfigurationList = 149C298308902C53008A9EFC /* Build configuration list for PBXNativeTarget "NPN_Invoke" */;
			buildPhases = (
				8D576311048677EA00EA77CD /* Sources */,
				8333A742068B76EA00241F49 /* Rez */,
				8D57630F048677EA00EA77CD /* Resources */,
				8D576313048677EA00EA77CD /* Frameworks */,
			);
			buildRules = (
			);
			dependencies = (
			);
			name = NPN_Invoke;
			productInstallPath = "$(HOME)/Library/Bundles";
			productName = NetscapeMoviePlugIn;
			productReference = 8D576316048677EA00EA77CD /* NPN_Invoke.plugin */;
			productType = "com.apple.product-type.bundle";
		};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
		089C1669FE841209C02AAC07 /* Project object */ = {
			isa = PBXProject;
			buildConfigurationList = 149C298708902C53008A9EFC /* Build configuration list for PBXProject "NPN_Invoke" */;
			compatibilityVersion = "Xcode 2.4";
			developmentRegion = English;
			hasScannedForEncodings = 1;
			knownRegions = (
				English,
				Japanese,
				French,
				German,
			);
			mainGroup = 089C166AFE841209C02AAC07 /* NetscapeMoviePlugIn */;
			projectDirPath = "";
			projectRoot = "";
			targets = (
				8D57630D048677EA00EA77CD /* NPN_Invoke */,
			);
		};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
		8D57630F048677EA00EA77CD /* Resources */ = {
			isa = PBXResourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXResourcesBuildPhase section */

/* Begin PBXRezBuildPhase section */
		8333A742068B76EA00241F49 /* Rez */ = {
			isa = PBXRezBuildPhase;
			buildActionMask = 2147483647;
			files = (
				2220B04709A459ED0030077C /* Localized.r in Rez */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXRezBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
		8D576311048677EA00EA77CD /* Sources */ = {
			isa = PBXSourcesBuildPhase;
			buildActionMask = 2147483647;
			files = (
				8454AD210680F60300DFAEA4 /* main.c in Sources */,
			);
			runOnlyForDeploymentPostprocessing = 0;
		};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
		2220B04609A459ED0030077C /* Localized.r */ = {
			isa = PBXVariantGroup;
			children = (
				2220B03809A459B20030077C /* English */,
			);
			name = Localized.r;
			sourceTree = "<group>";
		};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
		149C298408902C53008A9EFC /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ARCHS = (
					ppc,
					i386,
				);
				FRAMEWORK_SEARCH_PATHS = "$(FRAMEWORK_SEARCH_PATHS)";
				GCC_DEBUGGING_SYMBOLS = full;
				INFOPLIST_FILE = Info.plist;
				INSTALL_PATH = "/Library/Internet Plug-Ins";
				PRODUCT_NAME = NPN_Invoke;
				WRAPPER_EXTENSION = plugin;
			};
			name = Debug;
		};
		149C298508902C53008A9EFC /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				ARCHS = (
					ppc,
					i386,
				);
				FRAMEWORK_SEARCH_PATHS = "$(FRAMEWORK_SEARCH_PATHS)";
				GCC_DEBUGGING_SYMBOLS = full;
				INFOPLIST_FILE = Info.plist;
				INSTALL_PATH = "/Library/Internet Plug-Ins";
				PRODUCT_NAME = NPN_Invoke;
				WRAPPER_EXTENSION = plugin;
			};
			name = Release;
		};
		149C298808902C53008A9EFC /* Debug */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				PREBINDING = NO;
				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
			};
			name = Debug;
		};
		149C298908902C53008A9EFC /* Release */ = {
			isa = XCBuildConfiguration;
			buildSettings = {
				GCC_WARN_ABOUT_RETURN_TYPE = YES;
				GCC_WARN_UNUSED_VARIABLE = YES;
				PREBINDING = NO;
				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
			};
			name = Release;
		};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
		149C298308902C53008A9EFC /* Build configuration list for PBXNativeTarget "NPN_Invoke" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				149C298408902C53008A9EFC /* Debug */,
				149C298508902C53008A9EFC /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
		149C298708902C53008A9EFC /* Build configuration list for PBXProject "NPN_Invoke" */ = {
			isa = XCConfigurationList;
			buildConfigurations = (
				149C298808902C53008A9EFC /* Debug */,
				149C298908902C53008A9EFC /* Release */,
			);
			defaultConfigurationIsVisible = 0;
			defaultConfigurationName = Release;
		};
/* End XCConfigurationList section */
	};
	rootObject = 089C1669FE841209C02AAC07 /* Project object */;
}
