change the way to run task