class GroupCombineNode extends SingleInputNode {

	@Override
	protected SemanticProperties getSemanticPropertiesForLocalPropertyFiltering() {

		// Local properties for GroupCombine may only be preserved on key fields.
		SingleInputSemanticProperties origProps =
				((SingleInputOperator<?,?,?>) getOperator()).getSemanticProperties();
		SingleInputSemanticProperties filteredProps = new SingleInputSemanticProperties();
		FieldSet readSet = origProps.getReadFields(0);
		if(readSet != null) {
			filteredProps.addReadFields(readSet);
		}

		// only add forward field information for key fields
		if(this.keys != null) {
			for (int f : this.keys) {
				FieldSet targets = origProps.getForwardingTargetFields(0, f);
				for (int t : targets) {
					filteredProps.addForwardedField(f, t);
				}
			}
		}
		return filteredProps;
	}

	public  GroupCombineNode(GroupCombineOperatorBase<?, ?, ?> operator);

}