module fnparser. accumulate fndefgram. first (idlst _1790) (id _1799). first tcomma comma. first (te _1739) ntt. first (te _1707) formt. first telparen lparen. first (te _1645) lparen. first (te _1498) (id _1507). first (te _1461) typet. first (kep _573) kindt. first (tep _519) typet. first (fe _479) falset. first (fe _479) trutht. first (fe _479) natt. first (fe _479) succt. first (fe _479) zerot. first (fe _479) negt. first (lamt _1096) (id _1132). first (fe _479) lparen. first (fe _479) sigmat. first (fe _479) pit. first (fe _479) (id _628). first (cl _387) kindt. first (cl _387) typet. first (cl _387) (id _628). first (cl _387) pit. first (cl _387) sigmat. first (cl _387) lparen. first (cl _387) negt. first (cl _387) zerot. first (cl _387) succt. first (cl _387) natt. first (cl _387) trutht. first (cl _387) falset. first (dl _378) (id _628). first (dl _378) pit. first (dl _378) sigmat. first (dl _378) lparen. first (dl _378) negt. first (dl _378) zerot. first (dl _378) succt. first (dl _378) natt. first (dl _378) trutht. first (dl _378) falset. first (dl _378) typet. first (dl _378) kindt. first (fm _321) fnmodt. first (fm _264) definitiont. first X X :- terminal X. parse [definitiont,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: bofs :: nil), first (id _15188) A, !, parse [A,definitiont,B|Alpha] Beta Result Str. parse [id _15188,definitiont,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: bofs :: nil), first (dott) A, !, parse [A,id _15188,definitiont,B|Alpha] Beta Result Str. parse [dott,id _15188,definitiont,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: bofs :: nil), first (dl _15200) A, !, parse [A,dott,id _15188,definitiont,B|Alpha] Beta Result Str. parse [fnmodt,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: bofs :: nil), first (id _15245) A, !, parse [A,fnmodt,B|Alpha] Beta Result Str. parse [id _15245,fnmodt,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: bofs :: nil), first (dott) A, !, parse [A,id _15245,fnmodt,B|Alpha] Beta Result Str. parse [dott,id _15245,fnmodt,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: bofs :: nil), first (dl _15257) A, !, parse [A,dott,id _15245,fnmodt,B|Alpha] Beta Result Str. parse [cl _15342,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _19913 :: nil), first (dl _15351) A, !, parse [A,cl _15342,B|Alpha] Beta Result Str. parse [fe _15392,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _20743 :: nil), first (dott) A, !, parse [A,fe _15392,B|Alpha] Beta Result Str. parse [tep _15432,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _22114 :: nil), first (te _15440) A, !, parse [A,tep _15432,B|Alpha] Beta Result Str. parse [te _15440,tep _15432,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _22114 :: nil), first (dott) A, !, parse [A,te _15440,tep _15432,B|Alpha] Beta Result Str. parse [kep _15486,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _23485 :: nil), first (te _15494) A, !, parse [A,kep _15486,B|Alpha] Beta Result Str. parse [te _15494,kep _15486,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _23485 :: nil), first (dott) A, !, parse [A,te _15494,kep _15486,B|Alpha] Beta Result Str. parse [fe _15582,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _27559 :: fe _28903 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (fe _15591) A, !, parse [A,fe _15582,B|Alpha] Beta Result Str. parse [fe _15633,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _30201 :: fe _31545 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (comma) A, !, parse [A,fe _15633,B|Alpha] Beta Result Str. parse [comma,fe _15633,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _30201 :: fe _31545 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (fe _15645) A, !, parse [A,comma,fe _15633,B|Alpha] Beta Result Str. parse [fe _15693,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _32843 :: fe _34187 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (semicolon) A, !, parse [A,fe _15693,B|Alpha] Beta Result Str. parse [semicolon,fe _15693,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _32843 :: fe _34187 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (fe _15705) A, !, parse [A,semicolon,fe _15693,B|Alpha] Beta Result Str. parse [fe _15753,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _35485 :: fe _36829 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (impt) A, !, parse [A,fe _15753,B|Alpha] Beta Result Str. parse [impt,fe _15753,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _35485 :: fe _36829 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (fe _15765) A, !, parse [A,impt,fe _15753,B|Alpha] Beta Result Str. parse [fe _15813,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _38127 :: fe _39471 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (impbyt) A, !, parse [A,fe _15813,B|Alpha] Beta Result Str. parse [impbyt,fe _15813,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _38127 :: fe _39471 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (fe _15825) A, !, parse [A,impbyt,fe _15813,B|Alpha] Beta Result Str. parse [pit,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _40769 :: fe _42113 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (lamt _15877) A, !, parse [A,pit,B|Alpha] Beta Result Str. parse [sigmat,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _43411 :: fe _44755 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (lamt _15923) A, !, parse [A,sigmat,B|Alpha] Beta Result Str. parse [lparen,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _46053 :: fe _47397 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (fe _15968) A, !, parse [A,lparen,B|Alpha] Beta Result Str. parse [fe _15968,lparen,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _46053 :: fe _47397 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (rparen) A, !, parse [A,fe _15968,lparen,B|Alpha] Beta Result Str. parse [id _16045,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: pit :: sigmat :: dott :: cl _51506 :: fe _52850 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (slasht) A, !, parse [A,id _16045,B|Alpha] Beta Result Str. parse [slasht,id _16045,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: pit :: sigmat :: dott :: cl _51506 :: fe _52850 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (fe _16057) A, !, parse [A,slasht,id _16045,B|Alpha] Beta Result Str. parse [negt,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _56068 :: fe _57412 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), first (fe _16096) A, !, parse [A,negt,B|Alpha] Beta Result Str. parse [typet,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _71928 :: nil), first (idlst _16302) A, !, parse [A,typet,B|Alpha] Beta Result Str. parse [kindt,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: dott :: cl _72891 :: nil), first (idlst _16344) A, !, parse [A,kindt,B|Alpha] Beta Result Str. parse [te _16461,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: tep _76083 :: kep _76035 :: te _75993 :: arrowt :: telparen :: nil), first (te _16470) A, !, parse [A,te _16461,B|Alpha] Beta Result Str. parse [te _16512,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: tep _77143 :: kep _77095 :: te _77053 :: arrowt :: telparen :: nil), first (arrowt) A, !, parse [A,te _16512,B|Alpha] Beta Result Str. parse [arrowt,te _16512,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: tep _77143 :: kep _77095 :: te _77053 :: arrowt :: telparen :: nil), first (te _16524) A, !, parse [A,arrowt,te _16512,B|Alpha] Beta Result Str. parse [telparen,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: tep _78203 :: kep _78155 :: te _78113 :: arrowt :: telparen :: nil), first (te _16569) A, !, parse [A,telparen,B|Alpha] Beta Result Str. parse [te _16569,telparen,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: tep _78203 :: kep _78155 :: te _78113 :: arrowt :: telparen :: nil), first (rparen) A, !, parse [A,te _16569,telparen,B|Alpha] Beta Result Str. parse [idlst _16755,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: typet :: kindt :: nil), first (tcomma) A, !, parse [A,idlst _16755,B|Alpha] Beta Result Str. parse [tcomma,idlst _16755,B|Alpha] [A|Beta] Result "shift" :- memb B (bols :: typet :: kindt :: nil), first (id _16767) A, !, parse [A,tcomma,idlst _16755,B|Alpha] Beta Result Str. parse [bofs] [A|B] R "shift" :- first (fm _112856) A, parse [A,bofs] B R Str. startparse START [bols] [A|B] R "shift" :- first (START) A, parse [A,bols] B R Str,!. parse [Sx,bofs] [eofs] Sx "accept" :- start_symbol Sx. parse [Sx,bols] [eols] Sx "accept" :- !. parse [dl _15200,dott,id _15188,definitiont,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: bofs :: nil), memb Sym (eols :: eofs :: nil), first Sym A, !, (_15177 = fndefmod _15188 _15200), parse [fm _15177,B|Alpha] [A|Beta] Result Str. parse [dl _15257,dott,id _15245,fnmodt,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: bofs :: nil), memb Sym (eols :: eofs :: nil), first Sym A, !, (_15177 = fnmodule _15245 _15257), parse [fm _15177,B|Alpha] [A|Beta] Result Str. parse [cl _15300,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _19144 :: nil), memb Sym (eols :: eofs :: nil), first Sym A, !, (_15291 = _15300 :: nil), parse [dl _15291,B|Alpha] [A|Beta] Result Str. parse [dl _15351,cl _15342,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _19913 :: nil), memb Sym (eols :: eofs :: nil), first Sym A, !, (_15291 = _15342 :: _15351), parse [dl _15291,B|Alpha] [A|Beta] Result Str. parse [dott,fe _15392,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _20743 :: nil), memb Sym (eols :: eofs :: dl _21761 :: nil), first Sym A, !, (_15384 = _15392), parse [cl _15384,B|Alpha] [A|Beta] Result Str. parse [dott,te _15440,tep _15432,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _22114 :: nil), memb Sym (eols :: eofs :: dl _23132 :: nil), first Sym A, !, (_15384 = typedef _15432 _15440), parse [cl _15384,B|Alpha] [A|Beta] Result Str. parse [dott,te _15494,kep _15486,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _23485 :: nil), memb Sym (eols :: eofs :: dl _24503 :: nil), first Sym A, !, (_15384 = kinddef _15486 _15494), parse [cl _15384,B|Alpha] [A|Beta] Result Str. parse [id _15541,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _24917 :: fe _26261 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _27066 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = freevar _15541), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [fe _15591,fe _15582,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _27559 :: fe _28903 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _29708 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = (_15582 @ _15591)), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [fe _15645,comma,fe _15633,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _30201 :: fe _31545 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _32350 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = (and @ _15633 @ _15645)), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [fe _15705,semicolon,fe _15693,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _32843 :: fe _34187 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _34992 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = (or @ _15693 @ _15705)), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [fe _15765,impt,fe _15753,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _35485 :: fe _36829 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _37634 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = (imp @ _15753 @ _15765)), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [fe _15825,impbyt,fe _15813,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _38127 :: fe _39471 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _40276 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = (impby @ _15813 @ _15825)), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [lamt _15877,pit,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _40769 :: fe _42113 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _42918 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = (forall @ _15877)), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [lamt _15923,sigmat,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _43411 :: fe _44755 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _45560 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = (some @ _15923)), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [rparen,fe _15968,lparen,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _46053 :: fe _47397 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _48202 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = _15968), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [lamt _16009,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _48695 :: fe _50039 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _50844 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_15532 = _16009), parse [fe _15532,B|Alpha] [A|Beta] Result Str. parse [fe _16057,slasht,id _16045,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: pit :: sigmat :: dott :: cl _51506 :: fe _52850 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _53881 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (formlam _16045 _16057 _16037), parse [lamt _16037,B|Alpha] [A|Beta] Result Str. parse [fe _16096,negt,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _56068 :: fe _57412 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _58217 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_16084 = (neg @ _16096)), parse [fe _16084,B|Alpha] [A|Beta] Result Str. parse [zerot,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _58710 :: fe _60054 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _60859 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_16084 = zero), parse [fe _16084,B|Alpha] [A|Beta] Result Str. parse [succt,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _61352 :: fe _62696 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _63501 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_16084 = succ), parse [fe _16084,B|Alpha] [A|Beta] Result Str. parse [natt,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _63994 :: fe _65338 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _66143 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_16084 = nat), parse [fe _16084,B|Alpha] [A|Beta] Result Str. parse [trutht,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _66636 :: fe _67980 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _68785 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_16084 = truth), parse [fe _16084,B|Alpha] [A|Beta] Result Str. parse [falset,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _69278 :: fe _70622 :: comma :: semicolon :: impt :: impbyt :: lparen :: slasht :: negt :: nil), memb Sym (eols :: dott :: fe _71427 :: comma :: semicolon :: impt :: impbyt :: rparen :: nil), first Sym A, !, (_16084 = false), parse [fe _16084,B|Alpha] [A|Beta] Result Str. parse [idlst _16302,typet,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _71928 :: nil), memb Sym (eols :: te _72483 :: nil), first Sym A, !, (_16290 = _16302), parse [tep _16290,B|Alpha] [A|Beta] Result Str. parse [idlst _16344,kindt,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: dott :: cl _72891 :: nil), memb Sym (eols :: te _73446 :: nil), first Sym A, !, (_16332 = _16344), parse [kep _16332,B|Alpha] [A|Beta] Result Str. parse [typet,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: tep _73963 :: kep _73915 :: te _73873 :: arrowt :: telparen :: nil), memb Sym (eols :: dott :: te _74426 :: arrowt :: rparen :: nil), first Sym A, !, (_16374 = typesym "type"), parse [te _16374,B|Alpha] [A|Beta] Result Str. parse [id _16420,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: tep _75023 :: kep _74975 :: te _74933 :: arrowt :: telparen :: nil), memb Sym (eols :: dott :: te _75486 :: arrowt :: rparen :: nil), first Sym A, !, (_16374 = typesym _16420), parse [te _16374,B|Alpha] [A|Beta] Result Str. parse [te _16470,te _16461,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: tep _76083 :: kep _76035 :: te _75993 :: arrowt :: telparen :: nil), memb Sym (eols :: dott :: te _76546 :: arrowt :: rparen :: nil), first Sym A, !, (_16374 = tapp _16461 _16470), parse [te _16374,B|Alpha] [A|Beta] Result Str. parse [te _16524,arrowt,te _16512,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: tep _77143 :: kep _77095 :: te _77053 :: arrowt :: telparen :: nil), memb Sym (eols :: dott :: te _77606 :: arrowt :: rparen :: nil), first Sym A, !, (_16374 = (_16512 arr _16524)), parse [te _16374,B|Alpha] [A|Beta] Result Str. parse [rparen,te _16569,telparen,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: tep _78203 :: kep _78155 :: te _78113 :: arrowt :: telparen :: nil), memb Sym (eols :: dott :: te _78666 :: arrowt :: rparen :: nil), first Sym A, !, (_16374 = _16569), parse [te _16374,B|Alpha] [A|Beta] Result Str. parse [lparen,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: tep _79319 :: kep _79271 :: te _79229 :: arrowt :: telparen :: nil), memb Sym (eols :: te _79462 :: nil), first Sym A, !, (true), parse [telparen,B|Alpha] [A|Beta] Result Str. parse [formt,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: tep _79979 :: kep _79931 :: te _79889 :: arrowt :: telparen :: nil), memb Sym (eols :: dott :: te _80442 :: arrowt :: rparen :: nil), first Sym A, !, (_16620 = form), parse [te _16620,B|Alpha] [A|Beta] Result Str. parse [ntt,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: tep _81039 :: kep _80991 :: te _80949 :: arrowt :: telparen :: nil), memb Sym (eols :: dott :: te _81502 :: arrowt :: rparen :: nil), first Sym A, !, (_16620 = nt), parse [te _16620,B|Alpha] [A|Beta] Result Str. parse [comma,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: idlst _81700 :: nil), memb Sym (eols :: id _81803 :: nil), first Sym A, !, (true), parse [tcomma,B|Alpha] [A|Beta] Result Str. parse [id _16712,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: typet :: kindt :: nil), memb Sym (eols :: te _82163 :: tcomma :: nil), first Sym A, !, (_16703 = _16712 :: nil), parse [idlst _16703,B|Alpha] [A|Beta] Result Str. parse [id _16767,tcomma,idlst _16755,B|Alpha] [A|Beta] Result "reduce" :- memb B (bols :: typet :: kindt :: nil), memb Sym (eols :: te _82779 :: tcomma :: nil), first Sym A, !, (_16703 = _16767 :: _16755), parse [idlst _16703,B|Alpha] [A|Beta] Result Str. parse V I R "error" :- !, finderrline V I,print "Remaining Input = ", print_tokens 10 I, !, fail.