code: def rawq_getchar(self):
          
          if not self.rawq:
              yield from self.fill_rawq()
              if self.eof:
                  raise EOFError
          c = self.rawq[self.irawq:self.irawq + 1]
          self.irawq = self.irawq + 1
          if self.irawq >= len(self.rawq):
              self.rawq = b''
              self.irawq = 0
          return c
docs: Get next char from raw queue.
  
          Raise EOFError when connection is closed.