refactor the push with manifest code.