Add doOnCancel + doWork