code: @PublicEvolving
  	public <KS, OUT> SingleOutputStreamOperator<OUT> process(final KeyedBroadcastProcessFunction<KS, IN1, IN2, OUT> function) {
  
  		TypeInformation<OUT> outTypeInfo = TypeExtractor.getBinaryOperatorReturnType(
  				function,
  				KeyedBroadcastProcessFunction.class,
  				1,
  				2,
  				3,
  				TypeExtractor.NO_INDEX,
  				getType1(),
  				getType2(),
  				Utils.getCallLocationName(),
  				true);
  
  		return process(function, outTypeInfo);
  	}
docs: Assumes as inputs a {@link BroadcastStream} and a {@link KeyedStream} and applies the given
  {@link KeyedBroadcastProcessFunction} on them, thereby creating a transformed output stream.
  
  @param function The {@link KeyedBroadcastProcessFunction} that is called for each element in the stream.
  @param <KS> The type of the keys in the keyed stream.
  @param <OUT> The type of the output elements.
  @return The transformed {@link DataStream}.