add test and modify method