updated some functionalities