function has not changed,just do some sort