adding support for complex capabilities