Module(body=[FunctionDef(name='f',
                         args=arguments(args=[Name(id='n',
                                                   ctx=Param())],
                                        vararg=None,
                                        kwarg=None,
                                        defaults=[]),
                         body=[Assign(targets=[Name(id='i',
                                                    ctx=Store())],
                                      value=Num(n=0)),
                               Expr(value=Yield(value=Name(id='i',
                                                           ctx=Load()))),
                               AugAssign(target=Name(id='i',
                                                     ctx=Store()),
                                         op=Add(),
                                         value=Num(n=1)),
                               Assign(targets=[Name(id='j',
                                                    ctx=Store())],
                                      value=Name(id='i',
                                                 ctx=Load())),
                               Expr(value=Yield(value=Name(id='i',
                                                           ctx=Load()))),
                               Expr(value=Yield(value=Name(id='j',
                                                           ctx=Load()))),
                               AugAssign(target=Name(id='j',
                                                     ctx=Store()),
                                         op=Mult(),
                                         value=Num(n=100)),
                               AugAssign(target=Name(id='i',
                                                     ctx=Store()),
                                         op=Add(),
                                         value=Name(id='j',
                                                    ctx=Load())),
                               Expr(value=Yield(value=Name(id='j',
                                                           ctx=Load()))),
                               Expr(value=Yield(value=Name(id='i',
                                                           ctx=Load()))),
                               Expr(value=Yield(value=BinOp(left=Name(id='n',
                                                                      ctx=Load()),
                                                            op=Add(),
                                                            right=Name(id='i',
                                                                       ctx=Load()))))],
                         decorator_list=[]),
             For(target=Name(id='i',
                             ctx=Store()),
                 iter=Call(func=Name(id='f',
                                     ctx=Load()),
                           args=[Num(n=10)],
                           keywords=[],
                           starargs=None,
                           kwargs=None),
                 body=[Assign(targets=[Name(id='j',
                                            ctx=Store())],
                              value=Num(n=999)),
                       Print(dest=None,
                             values=[Name(id='i',
                                          ctx=Load())],
                             nl=True)],
                 orelse=[])])
