api change,uncompleted;internal function depart