updated intefaces to match specs