about to refactor back to separate commands