multi-spring refactoring