adds more functionalities