adding functionalities and some css