refactor dependencies into separate file