preliminary interface work