Add Single responsibility principle