Improve create and update process