func newGraph() *graph {
	return &graph{
		idToNodes:     make(map[ID]Node),
		nodeToSources: make(map[ID]map[ID]float64),
		nodeToTargets: make(map[ID]map[ID]float64),
		//
		// without this
		// panic: assignment to entry in nil map
	}
}
func newGraph() *graph {
	return &graph{
		idToNodes:     make(map[ID]Node),
		nodeToSources: make(map[ID]map[ID]float64),
		nodeToTargets: make(map[ID]map[ID]float64),
		
		
		
	}
}
func newGraph ( ) * graph { return & graph { idToNodes : make ( map [ ID ] Node ) , nodeToSources : make ( map [ ID ] map [ ID ] float64 ) , nodeToTargets : make ( map [ ID ] map [ ID ] float64 ) , // // without this // panic: assignment to entry in nil map } }
// newGraph returns a new graph.
newGraph returns a new graph .