<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def _print_docs(self, ret):
        '''
        Print out the docstrings for all of the functions on the minions
        '''
        import salt.output
        docs = {}
        if not ret:
            self.exit(2, 'No minions found to gather docs from\n')
        if isinstance(ret, six.string_types):
            self.exit(2, '{0}\n'.format(ret))
        for host in ret:
            if isinstance(ret[host], six.string_types) \
                    and (ret[host].startswith("Minion did not return")
                         or ret[host] == 'VALUE_TRIMMED'):
                continue
            for fun in ret[host]:
                if fun not in docs and ret[host][fun]:
                    docs[fun] = ret[host][fun]
        if self.options.output:
            for fun in sorted(docs):
                salt.output.display_output({fun: docs[fun]}, 'nested', self.config)
        else:
            for fun in sorted(docs):
                salt.utils.stringutils.print_cli('{0}:'.format(fun))
                salt.utils.stringutils.print_cli(docs[fun])
                salt.utils.stringutils.print_cli('')