can execute function
several bug fix