refactoring w/ solo added