it's better not to modify the value