code: public static final <VertexKey extends Comparable<VertexKey>, VertexValue, Message, EdgeValue>
  			VertexCentricIteration<VertexKey, VertexValue, Message, EdgeValue> withValuedEdges(
  					DataSet<Tuple3<VertexKey, VertexKey, EdgeValue>> edgesWithValue,
  					VertexUpdateFunction<VertexKey, VertexValue, Message> uf,
  					MessagingFunction<VertexKey, VertexValue, Message, EdgeValue> mf,
  					int maximumNumberOfIterations)
  	{
  		return new VertexCentricIteration<VertexKey, VertexValue, Message, EdgeValue>(uf, mf, edgesWithValue, maximumNumberOfIterations, true);
  	}
docs: Creates a new vertex-centric 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. Edges are represented as 2-tuples: (source-id, target-id)
  @param uf The function that updates the state of the vertices from the incoming messages.
  @param mf The function that turns changed vertex states into messages along the edges.
  
  @param <VertexKey> The type of the vertex key (the vertex identifier).
  @param <VertexValue> 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 <EdgeValue> The type of the values that are associated with the edges.
  
  @return An in stance of the vertex-centric graph computation operator.