if (exported.length == 0 && imported == null)
if (exported.length == 0 && imported == null && dynamicImported == null)
	private static ImportPackageSpecification[] createImportPackages(ExportPackageDescription[] exported, ArrayList providedExports, ManifestElement[] imported, ManifestElement[] dynamicImported, int manifestVersion) throws BundleException {		ArrayList allImports = null;		if (manifestVersion < 2) {			// add implicit imports for each exported package if manifest verions is less than 2.			if (exported.length == 0 && imported == null)				return null;			allImports = new ArrayList(exported.length + (imported == null ? 0 : imported.length));			for (int i = 0; i < exported.length; i++) {				if (providedExports.contains(exported[i].getName()))					continue;				ImportPackageSpecificationImpl result = new ImportPackageSpecificationImpl();				result.setName(exported[i].getName());				result.setVersionRange(getVersionRange(exported[i].getVersion().toString()));				result.setResolution(ImportPackageSpecification.RESOLUTION_STATIC);				allImports.add(result);			}		}		else {			allImports = new ArrayList(imported == null ? 0 :imported.length);		}		// add dynamics first so they will get overriden by static imports if		// the same package is dyanamically imported and statically imported.		if (dynamicImported != null) 			for (int i = 0; i < dynamicImported.length; i++)				addImportPackages(dynamicImported[i], allImports, manifestVersion, true);		if (imported != null)			for (int i = 0; i < imported.length; i++)				addImportPackages(imported[i], allImports, manifestVersion, false);		return (ImportPackageSpecification[]) allImports.toArray(new ImportPackageSpecification[allImports.size()]);	}