<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_modules(self, memo=None, prefix=""):
 """Get modules. This function is internally used as the helper method for other methods. Args: memo (set, optional):
 Module set in order to memorize to visit. prefix (str, optional):
 Prefix to a specific parameter name. Yields: `Module`: The module class. """

        if memo is None:
            memo = set()

        if self not in memo:
            memo.add(self)
            yield prefix, self
            for k, v in self.__dict__.items():
                if not isinstance(v, Module):
                    continue
                name, module = k, v
                submodule_prefix = "{}/{}".format(prefix,
                                                  name) if prefix != "" else name
                for m in module.get_modules(memo, submodule_prefix):
                    yield m