some functionalities added