added new functionality