handle failures
make real interface handle failures