a working hack (needs current trunk iocaml code)