l = [1,2,3,4]

def foo():
    yield l

    b = yield l

    c = [
        (yield l) , (
        yield l

    )]

    with (
        # Some comment
        yield
    ):
        pass

    if (yield):
        # comment
        pass


    (yield a, b) = (1, 2)

    # some comment
    for e in l : yield e # some comment

    for e in l:


        # some comment

        yield e

        # trail comment

    for e in l:
        # comment
        yield (((((((e)))))))  # Too many parentheses
        # comment


    for ridiculouslylongelementnameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee in l:
        yield ridiculouslylongelementnameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee


    for x in l: #comment
        yield x + (2 * 4) # trailing comment

    while (

        yield l
    ):
        pass

    yield from (yield l)

