ResolverExport[] detachFragment(ResolverBundle fragment) {
ResolverExport[] detachFragment(ResolverBundle fragment, ResolverConstraint reason) {
	ResolverExport[] detachFragment(ResolverBundle fragment) {		if (isFragment())			return new ResolverExport[0];		initFragments();		if (!fragments.remove(fragment))			return new ResolverExport[0];		fragment.getHost().removeMatchingBundle(this);		fragmentImports.remove(fragment.bundleID);		fragmentRequires.remove(fragment.bundleID);		ArrayList removedExports = (ArrayList) fragmentExports.remove(fragment.bundleID);		return removedExports == null ? new ResolverExport[0] : (ResolverExport[]) removedExports.toArray(new ResolverExport[removedExports.size()]);	}