merge some new changes