simulation control works by means of a block execution callback;
it's committed as it is to have a working reference - needs cleaning;