rethinking of block interface
Bug fix