specs refactored