resolve confrict from tim branch(apply #6)