block interface work