def print_upper_triangular_matrix(matrix):
    """Prints a CVRP data dict matrix
    
    Arguments
    ---------
    matrix : dict
        Description
        
    Note
    -----
    It is assummed that the first row of matrix contains all needed headers.
    """
    first = sorted(matrix.keys())[0]
    print('\t', end=' ')
    for i in matrix[first]:
        print('{}\t'.format(i), end=' ')
    print()
    indent_count = 0
    for i in matrix:
        print('{}\t'.format(i), end=' ')
        if indent_count:
            print('\t' * indent_count, end=' ')
        for j in sorted(matrix[i]):
            print('{}\t'.format(matrix[i][j]), end=' ')
        print()
        indent_count = indent_count + 1
