updates/refactoring dependencies