changes the dependencies and the return type.