[{ s =
   (DefStmt
      ({ name =
         (EN
            (Id (("Foo", _),
               { id_resolved = ref (None);
                 id_resolved_alternatives = ref ([]); id_type = ref (None);
                 id_svalue = ref (Unknown); id_flags = ref (0);
                 id_info_id = _ }
               )));
         attrs =
         [(NamedAttr (_,
             (Id (("Inject", _),
                { id_resolved = ref (None);
                  id_resolved_alternatives = ref ([]); id_type = ref (None);
                  id_svalue = ref (Unknown); id_flags = ref (0);
                  id_info_id = _ }
                )),
             (_, [], _)))
           ];
         tparams = None },
       (ClassDef
          { ckind = (Class, _);
            cextends =
            [({ t =
                (TyN
                   (Id (("Bar", _),
                      { id_resolved = ref (None);
                        id_resolved_alternatives = ref ([]);
                        id_type = ref (None); id_svalue = ref (Unknown);
                        id_flags = ref (0); id_info_id = _ }
                      )));
                t_attrs = [] },
              None)];
            cimplements = []; cmixins = [];
            cparams =
            (_,
             [(Param
                 { pname = (Some ("cc", _));
                   ptype =
                   (Some { t =
                           (TyN
                              (Id (("String", _),
                                 { id_resolved = ref (None);
                                   id_resolved_alternatives = ref ([]);
                                   id_type = ref (None);
                                   id_svalue = ref (Unknown);
                                   id_flags = ref (0); id_info_id = _ }
                                 )));
                           t_attrs = [] });
                   pdefault = None; pattrs = [(KeywordAttr (Const, _))];
                   pinfo =
                   { id_resolved = ref ((Some (Parameter, _)));
                     id_resolved_alternatives = ref ([]);
                     id_type =
                     ref ((Some { t =
                                  (TyN
                                     (Id (("String", _),
                                        { id_resolved = ref (None);
                                          id_resolved_alternatives = ref ([]);
                                          id_type = ref (None);
                                          id_svalue = ref (Unknown);
                                          id_flags = ref (0); id_info_id = _
                                          }
                                        )));
                                  t_attrs = [] }));
                     id_svalue = ref (Unknown); id_flags = ref (0);
                     id_info_id = _ }
                   })
               ],
             _);
            cbody =
            (_,
             [(F
                 { s =
                   (DefStmt
                      ({ name =
                         (EN
                            (Id (("hello", _),
                               { id_resolved = ref (None);
                                 id_resolved_alternatives = ref ([]);
                                 id_type = ref (None);
                                 id_svalue = ref (Unknown);
                                 id_flags = ref (0); id_info_id = _ }
                               )));
                         attrs = []; tparams = None },
                       (FuncDef
                          { fkind = (Method, _); fparams = (_, [], _);
                            frettype =
                            (Some { t =
                                    (TyN
                                       (Id (("Unit", _),
                                          { id_resolved = ref (None);
                                            id_resolved_alternatives =
                                            ref ([]); id_type = ref (None);
                                            id_svalue = ref (Unknown);
                                            id_flags = ref (0);
                                            id_info_id = _ }
                                          )));
                                    t_attrs = [] });
                            fbody =
                            (FBExpr
                               { e =
                                 (Call (
                                    { e =
                                      (N
                                         (Id (("println", _),
                                            { id_resolved = ref (None);
                                              id_resolved_alternatives =
                                              ref ([]); id_type = ref (None);
                                              id_svalue = ref (Unknown);
                                              id_flags = ref (0);
                                              id_info_id = _ }
                                            )));
                                      e_id = 0; e_range = None;
                                      is_implicit_return = false;
                                      facts = <opaque> },
                                    (_,
                                     [(Arg
                                         { e = (L (String (_, ("hi", _), _)));
                                           e_id = 0; e_range = None;
                                           is_implicit_return = false;
                                           facts = <opaque> })
                                       ],
                                     _)
                                    ));
                                 e_id = 0; e_range = None;
                                 is_implicit_return = true; facts = <opaque>
                                 })
                            })));
                   s_range = None })
               ],
             _)
            })));
   s_range = None }
  ]