fix bug and change func