fully implemented multiblock