refactor and update