[{ s =
   (DefStmt
      ({ name =
         (EN
            (Id (("user", _),
               { 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 = (_, [], _) })));
   s_range = None };
  { s =
    (DefStmt
       ({ name =
          (EN
             (Id (("group", _),
                { 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 (("member", _),
                                { 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 },
                        (VarDef
                           { vinit =
                             (Some { e =
                                     (Container (Array,
                                        (_,
                                         [{ e =
                                            (N
                                               (Id (("user", _),
                                                  { 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> });
                             vtype = None; vtok = None })));
                    s_range = None })
                ],
              _)
             })));
    s_range = None };
  { s =
    (DefStmt
       ({ name =
          (EN
             (Id (("document", _),
                { 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 (("simple", _),
                                { 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 },
                        (VarDef
                           { vinit =
                             (Some { e =
                                     (Container (Array,
                                        (_,
                                         [{ e =
                                            (N
                                               (Id (("user", _),
                                                  { 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> });
                             vtype = None; vtok = None })));
                    s_range = None });
                (F
                   { s =
                     (DefStmt
                        ({ name =
                           (EN
                              (Id (("with_wildcard", _),
                                 { 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 },
                         (VarDef
                            { vinit =
                              (Some { e =
                                      (Container (Array,
                                         (_,
                                          [{ e =
                                             (Call (
                                                { e =
                                                  (N
                                                     (Id (("Wildcard", _),
                                                        { 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 (("user", _),
                                                             { 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_id = 0; e_range = None;
                                      is_implicit_return = false;
                                      facts = <opaque> });
                              vtype = None; vtok = None })));
                     s_range = None });
                (F
                   { s =
                     (DefStmt
                        ({ name =
                           (EN
                              (Id (("with_relation_ref", _),
                                 { 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 },
                         (VarDef
                            { vinit =
                              (Some { e =
                                      (Container (Array,
                                         (_,
                                          [{ e =
                                             (Call (
                                                { e =
                                                  (N
                                                     (Id (("RelationRef", _),
                                                        { 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 (("group", _),
                                                             { 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 (
                                                              ("member", _),
                                                              { 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_id = 0; e_range = None;
                                      is_implicit_return = false;
                                      facts = <opaque> });
                              vtype = None; vtok = None })));
                     s_range = None });
                (F
                   { s =
                     (DefStmt
                        ({ name =
                           (EN
                              (Id (("multiple_types", _),
                                 { 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 },
                         (VarDef
                            { vinit =
                              (Some { e =
                                      (Container (Array,
                                         (_,
                                          [{ e =
                                             (N
                                                (Id (("user", _),
                                                   { 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 =
                                              (Call (
                                                 { e =
                                                   (N
                                                      (Id (
                                                         ("RelationRef", _),
                                                         { 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 (("group", _),
                                                              { 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 (
                                                               ("member", _),
                                                               { 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_id = 0; e_range = None;
                                      is_implicit_return = false;
                                      facts = <opaque> });
                              vtype = None; vtok = None })));
                     s_range = None });
                (F
                   { s =
                     (DefStmt
                        ({ name =
                           (EN
                              (Id (("complex", _),
                                 { 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 },
                         (VarDef
                            { vinit =
                              (Some { e =
                                      (Container (Array,
                                         (_,
                                          [{ e =
                                             (N
                                                (Id (("user", _),
                                                   { 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 =
                                              (Call (
                                                 { e =
                                                   (N
                                                      (Id (("Wildcard", _),
                                                         { 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 (("user", _),
                                                              { 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 =
                                              (Call (
                                                 { e =
                                                   (N
                                                      (Id (
                                                         ("RelationRef", _),
                                                         { 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 (("group", _),
                                                              { 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 (
                                                               ("member", _),
                                                               { 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_id = 0; e_range = None;
                                      is_implicit_return = false;
                                      facts = <opaque> });
                              vtype = None; vtok = None })));
                     s_range = None });
                (F
                   { s =
                     (DefStmt
                        ({ name =
                           (EN
                              (Id (("owner", _),
                                 { 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 },
                         (VarDef
                            { vinit =
                              (Some { e =
                                      (Container (Array,
                                         (_,
                                          [{ e =
                                             (N
                                                (Id (("user", _),
                                                   { 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> });
                              vtype = None; vtok = None })));
                     s_range = None });
                (F
                   { s =
                     (DefStmt
                        ({ name =
                           (EN
                              (Id (("with_boolean", _),
                                 { 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 },
                         (VarDef
                            { vinit =
                              (Some { e =
                                      (Call (
                                         { e = (Special ((Op And), _));
                                           e_id = 0; e_range = None;
                                           is_implicit_return = false;
                                           facts = <opaque> },
                                         (_,
                                          [(Arg
                                              { e =
                                                (Container (Array,
                                                   (_,
                                                    [{ e =
                                                       (N
                                                          (Id (("user", _),
                                                             { 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 =
                                                        (Call (
                                                           { e =
                                                             (N
                                                                (Id (
                                                                   ("RelationRef",
                                                                    _),
                                                                   { 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 (
                                                                    ("group",
                                                                    _),
                                                                    { 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 (
                                                                    ("member",
                                                                    _),
                                                                    { 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_id = 0; e_range = None;
                                                is_implicit_return = false;
                                                facts = <opaque> });
                                            (Arg
                                               { e =
                                                 (N
                                                    (Id (("owner", _),
                                                       { 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> });
                              vtype = None; vtok = None })));
                     s_range = None })
                ],
              _)
             })));
    s_range = None }
  ]