|| (Device.SOUND_FORMAT.equals(key)) ) {
|| (Device.SOUND_FORMAT.equals(key)) || (Device.BUGS.equals(key)) ) {
	public void addComponent(PolishComponent component ) {		// 1. set the capabilities:		HashMap caps = component.getCapabilities();		for (Iterator iter = caps.keySet().iterator(); iter.hasNext();) {			String key = (String) iter.next();			//System.out.println("adding component-key " + key);			String currentValue = (String) this.capabilities.get( key);			//System.out.println("current value: " + currentValue);			String componentValue = (String) caps.get( key );			//System.out.println("component value: " + componentValue);			if (currentValue == null) {				// okay, this capability has not been defined so far:				addCapability( key, componentValue );			} else if ( (Device.JAVA_PACKAGE.equals(key) ) 					|| (Device.JAVA_PROTOCOL.equals(key)) 					|| (Device.VIDEO_FORMAT.equals(key))					|| (Device.SOUND_FORMAT.equals(key)) ) {				// add additional package/protocol definitions:				String newValue = currentValue + "," + componentValue;				addCapability(key, newValue);			} // else do not overwrite weaker capability		}				// 2. set all features (overwriting will do no harm):		Set feats = component.features.keySet();		for (Iterator iter = feats.iterator(); iter.hasNext();) {			String feature = (String) iter.next();			this.features.put( feature, Boolean.TRUE );		}				// 3. set the features-string:		if (component.featuresAsString != null) {			if (this.featuresAsString != null) {				this.featuresAsString += ", " + component.featuresAsString;			} else {				this.featuresAsString = component.featuresAsString;			}		}	}