code: def get_output(self):
          
  
          if self.process.poll() is not None:
              self.close()
              yield None, None
  
          while not (self.stdout_queue.empty() and self.stderr_queue.empty()):
              if not self.stdout_queue.empty():
                  line = self.stdout_queue.get().decode('utf-8')
                  yield line, None
  
              if not self.stderr_queue.empty():
                  line = self.stderr_queue.get().decode('utf-8')
                  yield None, line
docs: :yield: stdout_line, stderr_line, running
  
          Generator that outputs lines captured from stdout and stderr
  
          These can be consumed to output on a widget in an IDE