code: public static <K, VV, Message, EV> ScatterGatherIteration<K, VV, Message, EV> withEdges(
  			DataSet<Edge<K, EV>> edgesWithValue, ScatterFunction<K, VV, Message, EV> sf,
  			GatherFunction<K, VV, Message> gf, int maximumNumberOfIterations) {
  
  		return new ScatterGatherIteration<>(sf, gf, edgesWithValue, maximumNumberOfIterations);
  	}
docs: Creates a new scatter-gather iteration operator for graphs where the edges are associated with a value (such as
  a weight or distance).
  
  @param edgesWithValue The data set containing edges.
  @param sf The function that turns changed vertex states into messages along the edges.
  @param gf The function that updates the state of the vertices from the incoming messages.
  
  @param <K> The type of the vertex key (the vertex identifier).
  @param <VV> The type of the vertex value (the state of the vertex).
  @param <Message> The type of the message sent between vertices along the edges.
  @param <EV> The type of the values that are associated with the edges.
  
  @return An in stance of the scatter-gather graph computation operator.