class ['a] meta_engine : 'a #engine -> ['a final_state] engine
['a]
'a #engine ->
['a final_state]
engine