Caml1999I0105 ''+(Bnf_spec#$Spec@%!t@@@@C&string@@@@A&"nt@@@@ @@@A'$prod@@@@F$unit@@@@A(&symbol@@@"NT @@@!T4@@@@A@@A))compare_t@  @@@@A#int@@@@@@**compare_nt@)@@.@@@@@@@+,compare_prod@(R@@.@@찲(@@@@@@@$#Bnf@,$Spec@H|@@@@{@@@AIx@@@@@@@AJw@@@@v@@@AKs@@@r@@@q(@@@@A@@@ALv@u@@z@@ᰲt@@@@@Mq@(@@۰-@@ܰ@@@@@Np@J@@ְ@@װ@@@@@@@-$TSet@O#elt@@@@w@@@AP!t@@@@@@AQ%empty@ @@@R(is_empty@  @@ѰE$bool@@@@@S#mem@2@@̰"@@Ͱ@@@@@T#add@$@@ǰ)4@@Ȱ7@@@@@U)singleton@6%@@İD@@@@V&remove@C2@@HS@@V@@@@@W%union@U`@@Ze@@h@@@@@X%inter@gr@@lw@@z@@@@@Y$diff@y@@~@@@@@@@Z'compare@@@@@A#int@@@@@@[%equal@@@@@@@@@@\&subset@@@@@@@@@@]$iter@İư@@F$unit@@@@Ѱ@@ @@@@@^$fold@ްల@@@@@谲@@@@@@_'for_all@@@@@@ @@@@@@@`&exists@  @@ @@@ @@@@@@@a&filter@"$@@}#@@~@,7@@:@@@@@b)partition@9;*@@t:@@u@vCN@@wT@@yX@@x@z@{@|@c(cardinal@Wb@@q@@r@s@d(elements@do@@mI$list@\@@n@@o@p@e'min_elt@x@@jj@@k@l@f'max_elt@@@gw@@h@i@g&choose@@@d@@e@f@h%split@@@\@@]@@`@@_@@^@a@b@c@@@.$TMap@i#key@@@@@@[@Aj!t@Р@Z@A@@A@@@Ak%empty@@X@@Y@l(is_empty@ @T@@UE$bool@@@V@W@m#add@9@@M@O)@@N- @@P@Q@R@S@n$find@+@@H0=@J@@I@K@L@o&remove@<)@@BAN@D@@CS@@E@F@G@p#mem@Q>@@<Vc@=@@>U@@?@@@A@q$iter@egT@@3l@7F$unit@@@4@5@6u @@8 @@9@:@;@r#map@@-@/@,@@. @@0@1@2@s$mapi@@@#@&@(@$@%@@' @@)@*@+@t$fold@@@@@@@@̠ @@  @ @!@"@u'compare@̰ΰ@A#int@@@@@ٰ@@߰@@@@@@@@v%equal@@ @@@@ @@ @@ @@ @ @ @@@@/%NTSet@w@@@@@@@Ax@@@@@@Ay@ @@@z@ @@@@@@{@(@@@@@@@@@|@!@@&-@@0@@@@@}@2#@@<@@@@~@>/@@CJ@@ﰲM@@@@@@OV@@T[@@갲^@@@@@@`g@@el@@尲o@@@@@@qx@@߰v}@@ల@@@@@@@@ڰ@@۰@@@@@@@@հ@@ְ@@@@@@@@а@@Ѱ@@@@@@@@ɰ@@@˰@@̰@@@@@@˰Ͱ@@Ұ@@@ðհ@@İ@@@@@ⰲ@@@@@갲@@@@@@@@@@@@@@@@@@@@@ @@ @@@@@ @@@@@@"$@@#@@@,3@@9@@=@@@@@@@?F@@@@@@@KR@@砰B@@@@@@@[b@@O@@@@@gn@@[@@@@@sz@@g@@@@@p@@@@@@@@@@@@@@@@0%NTMap@@@@@@@@A@Р@@A@@A@ @@@@@ڰ @@@@@@@@谲.@@|@~#@@}' @@@@@@@@@w6@y@@x@z@{@@'@@qF@s@@rK@@t@u@v@@#;@@k(Z@l@@m'@@n@o@p@@68P@@b=@f@@c@d@eCu @@g@@h@i@j@@PR@\@^@[V@@] @@_@`@a@@df~@@Rk@U@W@S@To@@V @@X@Y@Z@@}@@H@L@N@I@J@K @@M  @O@P@Q@@@B@@>@?@@Ҡ @@Aؠ@@C@@D@E@F@G@@@8@@4@5@6 @@7ð@@9@@:@;@<@=@@@1'ProdSet@@@@@@@2I$list@@@0@@1@3@A@@@@@@A@ @@/@@ذ @@,@@-@.@@䰲7@@'갲@@(@@)@*@+@@@@"-@@#0@@$@%@&@@#@@<@@ @!@@/@@J@@M@@@@@@$V@@)[@@^@@@@@@5g@@:l@@o@@@@@@Fx@@ K}@@ @@ @@@@W@@\@@@@@ @ @@h@@m@@l@@@@@@y@@~@@}@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@氲@@@@@鰲@@@@@@˰Ͱ@@߰@@@հ@@ⰲ@@@@@@㰲@@ذ@@@ڰ밲@@۰ @@@@@@@@ϰ@@@Ѱ3@@Ұ9@@Ԡ=@@@@@@@F@@̰@@@@@ R@@ȰB@@@@@@@0b@@ŰO@@@@@<n@@°[@@@@@Hz@@g@@@@@Tp@@Y@@@@_@@@@@@@@@@2'ProdMap@@@@@h@@d@@@@@@A@Р@@A@@A@ @@@@@ @@@@@@@@ɰ:@@ϰ@Ұ#@@' @@@@@@@ల@@尲6@@@@@@@'@@F@@@K@@@@@@;@@ Z@@@@@@@@@P@@@@@@@$u @@@@@@@@13@@@7@@ @@@@@@EG~@@{L@~@@|@}P@@ @@@@@@^`@@qe@uh@w@r@s@tk @@vq  @x@y@z@@wy@k|@@g@h@iҠ @@jؠ@@l@@m@n@o@p@@@a@@]@^@_ @@`@@b@@c@d@e@f@@@3'grammar@@@@@@A4,live_grammar@@@@@@A5%empty@@@\@6(add_prod@ l @@R q @@S w @@T } @@U@@V$@@W@X@Y@Z@[@7)remove_nt@ .@@M  @@N7@@O@P@Q@8%union@ A@@H F@@II@@J@K@L@9$diff@ S@@C X@@D[@@E@F@G@:%inter@ ưe@@> ˰j@@?m@@@@A@B@;/grammar_of_live@ ذ@@;{@@<@=@<2prune_unproductive@ 氲@@8@@9@:@=-prune_nonlive@ @@5@@6@7@>1prune_unreachable@ @@0  W 7@@1@@2@3@4@?6prune_unreachable_live@ ;@@+  j J@@,D@@-@.@/@@)make_sane@ &@@& + } ]@@'@@(@)@*@A.make_sane_live@ 9@@! >  p@@"j@@#@$@%@B0grammar_contents@ L@@!t!t@@@@@ @C0deriv_depth_info@ c@@!t e@@B!t o@@@@@@@@@D.nts_in_grammar@ #@@!t@@@@E-ts_in_grammar@ 3@@ !t@@@@F0prods_in_grammar@ C@@ R!t@@@@G/bounded_grammar@ R@@   @@  @@>0!t@@l@@@@@ @ @ @ @@@@L?(Bnf_spec0]$