added support for statement abstract types