def feed(self, chars, render_it=True, no_wait=False):
        """Consumes a string and advance the state as necessary.

        :param str chars: a string to feed from.
        """
        # To avoid the \xc2 deadlock from bytes string
        if not isinstance(chars, six.text_type):
            chars = chars.decode('utf-8', errors='ignore')

        with self.main_screen.acquire_lock():
            for char in chars:
                self.consume(char)

        if render_it:
            self.stash.renderer.render(no_wait=no_wait)
Consumes a string and advance the state as necessary.

        :param str chars: a string to feed from.
        
system/shstreams.py