refactored after renaming repository to a proper name, added worker