modify the code