[{ s =
   (DefStmt
      ({ name =
         (EN
            (Id (("Test", _),
               { 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 },
       (ClassDef
          { ckind = (Trait, _); cextends = []; cimplements = [];
            cmixins = []; cparams = (_, [], _);
            cbody =
            (_,
             [(F
                 { 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 = [];
                         tparams =
                         (Some (_,
                                [(TP
                                    { tp_id = ("T", _); tp_attrs = [];
                                      tp_bounds = []; tp_default = None;
                                      tp_variance = None })
                                  ],
                                _))
                         },
                       (FuncDef
                          { fkind = (Method, _);
                            fparams =
                            (_,
                             [(Param
                                 { pname = (Some ("x", _));
                                   ptype =
                                   (Some { t =
                                           (TyFun (
                                              [(Param
                                                  { pname = None;
                                                    ptype =
                                                    (Some { t =
                                                            (TyApply (
                                                               { t =
                                                                 (TyN
                                                                    (
                                                                    Id (
                                                                    ("A", _),
                                                                    { 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 = []
                                                                 },
                                                               (_,
                                                                [(TA
                                                                    { t =
                                                                    (TyApply (
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    (">:", _),
                                                                    { 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 =
                                                                    [] },
                                                                    (_,
                                                                    [(TA
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("?", _),
                                                                    { 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 =
                                                                    [] });
                                                                    (TA
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("T", _),
                                                                    { 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 =
                                                                    [] })], _)
                                                                    ));
                                                                    t_attrs =
                                                                    [] })
                                                                  ],
                                                                _)
                                                               ));
                                                            t_attrs = [] });
                                                    pdefault = None;
                                                    pattrs = [];
                                                    pinfo =
                                                    { id_resolved =
                                                      ref ((Some (Parameter,
                                                                  _)));
                                                      id_resolved_alternatives =
                                                      ref ([]);
                                                      id_type = ref (None);
                                                      id_svalue =
                                                      ref (Unknown);
                                                      id_flags = ref (0);
                                                      id_info_id = _ }
                                                    })
                                                ],
                                              { t =
                                                (TyN
                                                   (Id (("T2", _),
                                                      { 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 = [] }
                                              ));
                                           t_attrs = [] });
                                   pdefault = None; pattrs = [];
                                   pinfo =
                                   { id_resolved =
                                     ref ((Some (Parameter, _)));
                                     id_resolved_alternatives = ref ([]);
                                     id_type =
                                     ref ((Some { t =
                                                  (TyFun (
                                                     [(Param
                                                         { pname = None;
                                                           ptype =
                                                           (Some { t =
                                                                   (TyApply (
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("A", _),
                                                                    { 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 =
                                                                    [] },
                                                                    (_,
                                                                    [(TA
                                                                    { t =
                                                                    (TyApply (
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    (">:", _),
                                                                    { 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 =
                                                                    [] },
                                                                    (_,
                                                                    [(TA
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("?", _),
                                                                    { 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 =
                                                                    [] });
                                                                    (TA
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("T", _),
                                                                    { 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 =
                                                                    [] })], _)
                                                                    ));
                                                                    t_attrs =
                                                                    [] })], _)
                                                                    ));
                                                                   t_attrs =
                                                                   [] });
                                                           pdefault = None;
                                                           pattrs = [];
                                                           pinfo =
                                                           { id_resolved =
                                                             ref ((Some (
                                                             Parameter, _)));
                                                             id_resolved_alternatives =
                                                             ref ([]);
                                                             id_type =
                                                             ref (None);
                                                             id_svalue =
                                                             ref (Unknown);
                                                             id_flags =
                                                             ref (0);
                                                             id_info_id = _ }
                                                           })
                                                       ],
                                                     { t =
                                                       (TyN
                                                          (Id (("T2", _),
                                                             { 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 = [] }
                                                     ));
                                                  t_attrs = [] }));
                                     id_svalue = ref (Unknown);
                                     id_flags = ref (0); id_info_id = _ }
                                   })
                               ],
                             _);
                            frettype =
                            (Some { t =
                                    (TyN
                                       (Id (("Int", _),
                                          { 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 =
                                 (Lambda
                                    { fkind = (Arrow, _);
                                      fparams =
                                      (_,
                                       [(Param
                                           { pname = (Some ("x", _));
                                             ptype =
                                             (Some { t =
                                                     (TyApply (
                                                        { t =
                                                          (TyN
                                                             (Id (("A", _),
                                                                { 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 = [] },
                                                        (_,
                                                         [(TA
                                                             { t =
                                                               (TyApply (
                                                                  { t =
                                                                    (
                                                                    TyN
                                                                    (Id (
                                                                    (">:", _),
                                                                    { 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 =
                                                                    [] },
                                                                  (_,
                                                                   [(TA
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("?", _),
                                                                    { 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 =
                                                                    [] });
                                                                    (TA
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("T", _),
                                                                    { 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 =
                                                                    [] })],
                                                                   _)
                                                                  ));
                                                               t_attrs = [] })
                                                           ],
                                                         _)
                                                        ));
                                                     t_attrs = [] });
                                             pdefault = None; pattrs = [];
                                             pinfo =
                                             { id_resolved =
                                               ref ((Some (Parameter, _)));
                                               id_resolved_alternatives =
                                               ref ([]);
                                               id_type =
                                               ref ((Some { t =
                                                            (TyApply (
                                                               { t =
                                                                 (TyN
                                                                    (
                                                                    Id (
                                                                    ("A", _),
                                                                    { 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 = []
                                                                 },
                                                               (_,
                                                                [(TA
                                                                    { t =
                                                                    (TyApply (
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    (">:", _),
                                                                    { 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 =
                                                                    [] },
                                                                    (_,
                                                                    [(TA
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("?", _),
                                                                    { 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 =
                                                                    [] });
                                                                    (TA
                                                                    { t =
                                                                    (TyN
                                                                    (Id (
                                                                    ("T", _),
                                                                    { 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 =
                                                                    [] })], _)
                                                                    ));
                                                                    t_attrs =
                                                                    [] })
                                                                  ],
                                                                _)
                                                               ));
                                                            t_attrs = [] }));
                                               id_svalue = ref (Unknown);
                                               id_flags = ref (0);
                                               id_info_id = _ }
                                             })
                                         ],
                                       _);
                                      frettype = None;
                                      fbody =
                                      (FBStmt
                                         { s =
                                           (ExprStmt (
                                              { e = (L (Int ((Some 3L), _)));
                                                e_id = 0; e_range = None;
                                                is_implicit_return = true;
                                                facts = <opaque> },
                                              _));
                                           s_range = None })
                                      });
                                 e_id = 0; e_range = None;
                                 is_implicit_return = false; facts = <opaque>
                                 })
                            })));
                   s_range = None })
               ],
             _)
            })));
   s_range = None }
  ]