new changes  and fix