+module T = RecommTypes
+module R = RecommPcsAnd
+
+let step k st outs ins =
+ if st <> T.OO then k st outs ins else
+ match ins with
+ | "ylt" :: tl -> k T.OK ("ylt" :: outs) tl
+ | "yle" :: tl -> k T.OK ("yle" :: outs) tl
+ | "ylminus" :: tl -> k T.OK ("ylminus" :: outs) tl
+ | "yminus" :: tl -> k T.OK ("ylminus" :: outs) tl
+ | "yplus" :: tl -> k T.OK ("yplus" :: outs) tl
+ | "ypred" :: tl -> k T.OK ("ypred" :: outs) tl
+ | "ysucc" :: tl -> k T.OK ("ysucc" :: outs) tl
+ | "nlt" :: tl -> k T.OK ("nlt" :: outs) tl
+ | "nle" :: tl -> k T.OK ("nle" :: outs) tl
+ | "nmax" :: tl -> k T.OK ("nmax" :: outs) tl
+ | "nminus" :: tl -> k T.OK ("nminus" :: outs) tl
+ | "nplus" :: tl -> k T.OK ("nplus" :: outs) tl
+ | "npred" :: tl -> k T.OK ("npred" :: outs) tl
+ | "nsucc" :: tl -> k T.OK ("nsucc" :: outs) tl
+ | "ntri" :: tl -> k T.OK ("ntri" :: outs) tl
+ | "niter" :: tl -> k T.OK ("niter" :: outs) tl
+ | _ -> k T.OO outs ins
+
+let main =
+ R.register_b step