Refactored for composer