abstruct class basic
interface basic
override basic