block interface adapted