added model interface