[{ s =
   (DirectiveStmt
      { d = (ImportAll (_, (DottedName [("System", _)]), _)); d_attrs = [] });
   s_range = None };
  { s =
    (DefStmt
       ({ name =
          (EN
             (Id (("HelloWorldForeach", _),
                { 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 = (Class, _); cextends = []; cimplements = [];
             cmixins = []; cparams = (_, [], _);
             cbody =
             (_,
              [(F
                  { s =
                    (DefStmt
                       ({ name =
                          (EN
                             (Id (("Main", _),
                                { id_resolved = ref (None);
                                  id_resolved_alternatives = ref ([]);
                                  id_type = ref (None);
                                  id_svalue = ref (Unknown);
                                  id_flags = ref (0); id_info_id = _ }
                                )));
                          attrs =
                          [(KeywordAttr (Public, _));
                            (KeywordAttr (Static, _))];
                          tparams = None },
                        (FuncDef
                           { fkind = (Method, _); fparams = (_, [], _);
                             frettype =
                             (Some { t =
                                     (TyN
                                        (Id (("void", _),
                                           { 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 =
                                         (DefStmt
                                            ({ name =
                                               (EN
                                                  (Id (("words", _),
                                                     { id_resolved =
                                                       ref ((Some (LocalVar,
                                                                   _)));
                                                       id_resolved_alternatives =
                                                       ref ([]);
                                                       id_type =
                                                       ref ((Some { t =
                                                                    (
                                                                    TyArray (
                                                                    (_, None,
                                                                    _),
                                                                    { 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 =
                                                                    [] }));
                                                                    t_attrs =
                                                                    [] }));
                                                       id_svalue =
                                                       ref (Unknown);
                                                       id_flags = ref (0);
                                                       id_info_id = _ }
                                                     )));
                                               attrs = []; tparams = None },
                                             (VarDef
                                                { vinit =
                                                  (Some { e =
                                                          (New (_,
                                                             { t =
                                                               (TyArray (
                                                                  (_, None, _),
                                                                  { 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 =
                                                                    [] }
                                                                  ));
                                                               t_attrs = [] },
                                                             { id_resolved =
                                                               ref (None);
                                                               id_resolved_alternatives =
                                                               ref ([]);
                                                               id_type =
                                                               ref (None);
                                                               id_svalue =
                                                               ref (Unknown);
                                                               id_flags =
                                                               ref (0);
                                                               id_info_id = _
                                                               },
                                                             (_,
                                                              [(Arg
                                                                  { e =
                                                                    (
                                                                    Container (
                                                                    Tuple,
                                                                    (_,
                                                                    [{ e =
                                                                    (L
                                                                    (String
                                                                    (_,
                                                                    ("hello",
                                                                    _), _)));
                                                                    e_id = 0;
                                                                    e_range =
                                                                    None;
                                                                    is_implicit_return =
                                                                    false;
                                                                    facts =
                                                                    <opaque>
                                                                    };
                                                                    { e =
                                                                    (L
                                                                    (String
                                                                    (_,
                                                                    ("world",
                                                                    _), _)));
                                                                    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_id = 0;
                                                          e_range = None;
                                                          is_implicit_return =
                                                          false;
                                                          facts = <opaque> });
                                                  vtype = None;
                                                  vtok = (Some _) })));
                                         s_range = None };
                                        { s =
                                          (For (_,
                                             (ForEach
                                                ((PatId (("word", _),
                                                    { id_resolved =
                                                      ref ((Some (LocalVar, _)));
                                                      id_resolved_alternatives =
                                                      ref ([]);
                                                      id_type = ref (None);
                                                      id_svalue =
                                                      ref (Unknown);
                                                      id_flags = ref (0);
                                                      id_info_id = _ }
                                                    )),
                                                 _,
                                                 { e =
                                                   (N
                                                      (Id (("words", _),
                                                         { id_resolved =
                                                           ref ((Some (
                                                           LocalVar, _)));
                                                           id_resolved_alternatives =
                                                           ref ([]);
                                                           id_type =
                                                           ref ((Some 
                                                           { t =
                                                             (TyArray (
                                                                (_, None, _),
                                                                { 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 =
                                                                  [] }
                                                                ));
                                                             t_attrs = [] }));
                                                           id_svalue =
                                                           ref (Unknown);
                                                           id_flags = ref (0);
                                                           id_info_id = _ }
                                                         )));
                                                   e_id = 0; e_range = None;
                                                   is_implicit_return = false;
                                                   facts = <opaque> })),
                                             { s =
                                               (Block
                                                  (_,
                                                   [{ s =
                                                      (ExprStmt (
                                                         { e =
                                                           (Call (
                                                              { e =
                                                                (DotAccess (
                                                                   { e =
                                                                    (N
                                                                    (Id (
                                                                    ("Console",
                                                                    _),
                                                                    { 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>
                                                                    },
                                                                   _,
                                                                   (FN
                                                                    (Id (
                                                                    ("WriteLine",
                                                                    _),
                                                                    { id_resolved =
                                                                    ref (None);
                                                                    id_resolved_alternatives =
                                                                    ref (
                                                                    []);
                                                                    id_type =
                                                                    ref ((Some 
                                                                    { t =
                                                                    (TyFun (
                                                                    [(OtherParam (
                                                                    ("TODO",
                                                                    _), []))],
                                                                    { t =
                                                                    (OtherType (
                                                                    ("TODO",
                                                                    _), 
                                                                    []));
                                                                    t_attrs =
                                                                    [] }));
                                                                    t_attrs =
                                                                    [] }));
                                                                    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 (
                                                                    ("word",
                                                                    _),
                                                                    { id_resolved =
                                                                    ref ((Some (
                                                                    LocalVar,
                                                                    _)));
                                                                    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_range = None }
                                                     ],
                                                   _));
                                               s_range = None }
                                             ));
                                          s_range = None }
                                        ],
                                      _));
                                  s_range = None })
                             })));
                    s_range = None })
                ],
              _)
             })));
    s_range = None }
  ]