# -*- coding: utf-8 -*-

def dijkstra_predecessor_and_distance(graph, source, weight='weight'):
    """
    Least-cost paths via Dijkstra's algorithm.
    """
	pass  # TODO: Please work from Lab 1 code


def predecessor_to_forwarding(predecessor, source):
    """ 
    Compute a forwarding table from a predecessor list. 
    """
	pass  # TODO
	
	
def dijkstra_generalized(graph, source, weight='weight', 
                         infinity=None, 
                         plus=None,
                         less=None,
                         min=None):
    """
    Least-cost or widest paths via Dijkstra's algorithm.
    """
	pass  # TODO: Please work from Lab 1 code
