changes similarity:need to modify: