Refactored factory-call
Changed user-interface