key functionalities added