[{ 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 = None },
       (FuncDef
          { fkind = (Function, _); fparams = (_, [], _);
            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 =
            (FBStmt
               { s =
                 (Block
                    (_,
                     [{ s =
                        (ExprStmt (
                           { e =
                             (ArrayAccess (
                                { e =
                                  (ArrayAccess (
                                     { e =
                                       (ArrayAccess (
                                          { e =
                                            (Call (
                                               { e =
                                                 (N
                                                    (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 = _ }
                                                       )));
                                                 e_id = 0; e_range = None;
                                                 is_implicit_return = false;
                                                 facts = <opaque> },
                                               (_, [], _)));
                                            e_id = 0; e_range = None;
                                            is_implicit_return = false;
                                            facts = <opaque> },
                                          (_,
                                           { e = (L (Int ((Some 1L), _)));
                                             e_id = 0; e_range = None;
                                             is_implicit_return = false;
                                             facts = <opaque> },
                                           _)
                                          ));
                                       e_id = 0; e_range = None;
                                       is_implicit_return = false;
                                       facts = <opaque> },
                                     (_,
                                      { e = (L (Int ((Some 2L), _)));
                                        e_id = 0; e_range = None;
                                        is_implicit_return = false;
                                        facts = <opaque> },
                                      _)
                                     ));
                                  e_id = 0; e_range = None;
                                  is_implicit_return = false;
                                  facts = <opaque> },
                                (_,
                                 { e = (L (Int ((Some 3L), _))); e_id = 0;
                                   e_range = None;
                                   is_implicit_return = false;
                                   facts = <opaque> },
                                 _)
                                ));
                             e_id = 0; e_range = None;
                             is_implicit_return = false; facts = <opaque> },
                           _));
                        s_range = None };
                       { s =
                         (ExprStmt (
                            { e =
                              (StmtExpr
                                 { s =
                                   (If (_,
                                      (Cond
                                         { e =
                                           (Call (
                                              { e = (Special ((Op Lt), _));
                                                e_id = 0; e_range = None;
                                                is_implicit_return = false;
                                                facts = <opaque> },
                                              (_,
                                               [(Arg
                                                   { e =
                                                     (N
                                                        (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 = _ }
                                                           )));
                                                     e_id = 0;
                                                     e_range = None;
                                                     is_implicit_return =
                                                     false; facts = <opaque>
                                                     });
                                                 (Arg
                                                    { e =
                                                      (N
                                                         (Id (("b", _),
                                                            { 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>
                                                      })
                                                 ],
                                               _)
                                              ));
                                           e_id = 0; e_range = None;
                                           is_implicit_return = false;
                                           facts = <opaque> }),
                                      { s =
                                        (Block
                                           (_,
                                            [{ s =
                                               (DefStmt
                                                  ({ name =
                                                     (EN
                                                        (Id (("max", _),
                                                           { id_resolved =
                                                             ref ((Some (
                                                             LocalVar, _)));
                                                             id_resolved_alternatives =
                                                             ref ([]);
                                                             id_type =
                                                             ref (None);
                                                             id_svalue =
                                                             ref (Unknown);
                                                             id_flags =
                                                             ref (4);
                                                             id_info_id = _ }
                                                           )));
                                                     attrs =
                                                     [(KeywordAttr (Const, _))
                                                       ];
                                                     tparams = None },
                                                   (VarDef
                                                      { vinit =
                                                        (Some { e =
                                                                (N
                                                                   (Id (
                                                                    ("b", _),
                                                                    { 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> });
                                                        vtype = None;
                                                        vtok = None })));
                                               s_range = None }
                                              ],
                                            _));
                                        s_range = None },
                                      None));
                                   s_range = None });
                              e_id = 0; e_range = None;
                              is_implicit_return = false; facts = <opaque> },
                            _));
                         s_range = None };
                       { s =
                         (DefStmt
                            ({ name =
                               (EN
                                  (Id (("a", _),
                                     { id_resolved =
                                       ref ((Some (LocalVar, _)));
                                       id_resolved_alternatives = ref ([]);
                                       id_type =
                                       ref ((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 = [] }));
                                       id_svalue = ref (Unknown);
                                       id_flags = ref (4); id_info_id = _ }
                                     )));
                               attrs = [(KeywordAttr (Const, _))];
                               tparams = None },
                             (VarDef
                                { vinit =
                                  (Some { e = (L (Int ((Some 1L), _)));
                                          e_id = 0; e_range = None;
                                          is_implicit_return = false;
                                          facts = <opaque> });
                                  vtype = None; vtok = None })));
                         s_range = None };
                       { s =
                         (DefStmt
                            ({ name =
                               (EN
                                  (Id (("b", _),
                                     { id_resolved =
                                       ref ((Some (LocalVar, _)));
                                       id_resolved_alternatives = ref ([]);
                                       id_type =
                                       ref ((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 = [] }));
                                       id_svalue = ref (Unknown);
                                       id_flags = ref (4); id_info_id = _ }
                                     )));
                               attrs = [(KeywordAttr (Const, _))];
                               tparams = None },
                             (VarDef
                                { vinit =
                                  (Some { e = (L (Int ((Some 2L), _)));
                                          e_id = 0; e_range = None;
                                          is_implicit_return = false;
                                          facts = <opaque> });
                                  vtype = None; vtok = None })));
                         s_range = None };
                       { s =
                         (ExprStmt (
                            { e =
                              (StmtExpr
                                 { s =
                                   (Try (_,
                                      { s =
                                        (Block
                                           (_,
                                            [{ s =
                                               (ExprStmt (
                                                  { e =
                                                    (L (Int ((Some 3L), _)));
                                                    e_id = 0; e_range = None;
                                                    is_implicit_return =
                                                    false; facts = <opaque> },
                                                  _));
                                               s_range = None }
                                              ],
                                            _));
                                        s_range = None },
                                      [(_,
                                        (CatchParam
                                           { pname = (Some ("e", _));
                                             ptype =
                                             (Some { t =
                                                     (TyN
                                                        (Id (
                                                           ("Exception", _),
                                                           { 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 = [];
                                             pinfo =
                                             { id_resolved =
                                               ref ((Some (LocalVar, _)));
                                               id_resolved_alternatives =
                                               ref ([]);
                                               id_type = ref (None);
                                               id_svalue = ref (Unknown);
                                               id_flags = ref (0);
                                               id_info_id = _ }
                                             }),
                                        { s =
                                          (Block
                                             (_,
                                              [{ s =
                                                 (ExprStmt (
                                                    { e =
                                                      (L (Int ((Some 3L), _)));
                                                      e_id = 0;
                                                      e_range = None;
                                                      is_implicit_return =
                                                      false; facts = <opaque>
                                                      },
                                                    _));
                                                 s_range = None }
                                                ],
                                              _));
                                          s_range = None })
                                        ],
                                      None, None));
                                   s_range = None });
                              e_id = 0; e_range = None;
                              is_implicit_return = false; facts = <opaque> },
                            _));
                         s_range = None };
                       { s =
                         (ExprStmt (
                            { e =
                              (StmtExpr
                                 { s =
                                   (OtherStmt (OS_Todo,
                                      [(TodoK ("return@", _));
                                        (E
                                           { e =
                                             (N
                                                (Id (("id", _),
                                                   { 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> })
                                        ]
                                      ));
                                   s_range = None });
                              e_id = 0; e_range = None;
                              is_implicit_return = false; facts = <opaque> },
                            _));
                         s_range = None }
                       ],
                     _));
                 s_range = None })
            })));
   s_range = None }
  ]