change before you value calculate