<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def process_shells_ordered(self, shells):
 """Processing a list of shells one after the other."""

        output = []
        for shell in shells:
            entry = shell['entry']
            config = ShellConfig(script=entry['script'], title=entry['title'] if 'title' in entry else '',
                                 model=shell['model'], env=shell['env'], item=shell['item'],
                                 dry_run=shell['dry_run'], debug=shell['debug'], strict=shell['strict'],
                                 variables=shell['variables'],
                                 temporary_scripts_path=shell['temporary_scripts_path'])
            result = Adapter(self.process_shell(get_creator_by_name(shell['creator']), entry, config))
            output += result.output
            self.__handle_variable(entry, result.output)
            if not result.success:
                return {'success': False, 'output': output}
        return {'success': True, 'output': output}