refactor dispatch brick, block