def METHOD_NAME(self):
    """
    Returns the extended Dynkin diagram for affine type A.
    EXAMPLES::
        sage: a = CartanType(['A',3,1]).dynkin_diagram(); a                         # needs sage.graphs
         0
         O-------+
         |       |
         |       |
         O---O---O
         1   2   3
         A3~
        sage: a.edges(sort=True)                                                    # needs sage.graphs
        [(0, 1, 1),
         (0, 3, 1),
         (1, 0, 1),
         (1, 2, 1),
         (2, 1, 1),
         (2, 3, 1),
         (3, 0, 1),
         (3, 2, 1)]
        sage: a = DynkinDiagram(['A',1,1]); a                                       # needs sage.graphs
        O<=>O
        0   1
        A1~
        sage: a.edges(sort=True)                                                    # needs sage.graphs
        [(0, 1, 2), (1, 0, 2)]
    """
    from .METHOD_NAME import DynkinDiagram_class
    n = self.n
    g = DynkinDiagram_class(self)
    if n == 1:
        g.add_edge(0, 1, 2)
        g.add_edge(1, 0, 2)
    else:
        for i in range(1, n):
            g.add_edge(i, i+1)
        g.add_edge(0, 1)
        g.add_edge(0, n)
    return g