add funcionality