improvement on workflow