Module(body=[ClassDef(name='X',
                      bases=[],
                      body=[FunctionDef(name='__init__',
                                        args=arguments(args=[Name(id='self',
                                                                  ctx=Param())],
                                                       vararg=None,
                                                       kwarg=None,
                                                       defaults=[]),
                                        body=[Assign(targets=[Attribute(value=Name(id='self',
                                                                                   ctx=Load()),
                                                                        attr='px',
                                                                        ctx=Store())],
                                                     value=Num(n=3))],
                                        decorator_list=[]),
                            FunctionDef(name='y',
                                        args=arguments(args=[Name(id='self',
                                                                  ctx=Param())],
                                                       vararg=None,
                                                       kwarg=None,
                                                       defaults=[]),
                                        body=[Assign(targets=[Name(id='l',
                                                                   ctx=Store())],
                                                     value=Str(s='xyz')),
                                              If(test=Compare(left=Call(func=Name(id='len',
                                                                                  ctx=Load()),
                                                                        args=[Name(id='l',
                                                                                   ctx=Load())],
                                                                        keywords=[],
                                                                        starargs=None,
                                                                        kwargs=None),
                                                              ops=[Eq()],
                                                              comparators=[Attribute(value=Name(id='self',
                                                                                                ctx=Load()),
                                                                                     attr='px',
                                                                                     ctx=Load())]),
                                                 body=[Print(dest=None,
                                                             values=[Str(s='OK')],
                                                             nl=True)],
                                                 orelse=[])],
                                        decorator_list=[])],
                      decorator_list=[]),
             Assign(targets=[Name(id='x',
                                  ctx=Store())],
                    value=Call(func=Name(id='X',
                                         ctx=Load()),
                               args=[],
                               keywords=[],
                               starargs=None,
                               kwargs=None)),
             Expr(value=Call(func=Attribute(value=Name(id='x',
                                                       ctx=Load()),
                                            attr='y',
                                            ctx=Load()),
                             args=[],
                             keywords=[],
                             starargs=None,
                             kwargs=None))])
