(plist, l, a, f)
plist is list of pens
    l is length of branch
    a is half of the angle between 2 branches
    f is factor by which branch is shortened
    from level to level.
plist is list of pens
    l is length of branch
    a is half of the angle between 2 branches
    f is factor by which branch is shortened
    from level to level.
plist is list of pens l is length of branch a is half of the angle between 2 branches f is factor by which branch is shortened from level to level .
def tree(plist, l, a, f):
    """ plist is list of pens
    l is length of branch
    a is half of the angle between 2 branches
    f is factor by which branch is shortened
    from level to level."""
    if l > 3:
        lst = []
        for p in plist:
            p.forward(l)
            q = p.clone()
            p.left(a)
            q.right(a)
            lst.append(p)
            lst.append(q)
        for x in tree(lst, l*f, a, f):
            yield None
def tree ( plist , l , a , f ) : if l > 3 : lst = [ ] for p in plist : p . forward ( l ) q = p . clone ( ) p . left ( a ) q . right ( a ) lst . append ( p ) lst . append ( q ) for x in tree ( lst , l * f , a , f ) : yield None