adding support for inheritance