refactor solo