change const propagation implementation