code: def scroll(self, rect, dx, dy, attr=None, fill=' '):
          u'''Scroll a rectangle.'''
          if attr is None:
              attr = self.attr
          x0, y0, x1, y1 = rect
          source = SMALL_RECT(x0, y0, x1 - 1, y1 - 1)
          dest = self.fixcoord(x0 + dx, y0 + dy)
          style = CHAR_INFO()
          style.Char.AsciiChar = ensure_str(fill[0])
          style.Attributes = attr
  
          return self.ScrollConsoleScreenBufferW(self.hout, byref(source), 
                                            byref(source), dest, byref(style)f scroll(self, rect, dx, dy, attr=None, fill=' '):
          u'''Scroll a rectangle.'''
          if attr is None:
              attr = self.attr
          x0, y0, x1, y1 = rect
          source = SMALL_RECT(x0, y0, x1 - 1, y1 - 1)
          dest = self.fixcoord(x0 + dx, y0 + dy)
          style = CHAR_INFO()
          style.Char.AsciiChar = ensure_str(fill[0])
          style.Attributes = attr
  
          return self.ScrollConsoleScreenBufferW(self.hout, byref(source), 
                                            byref(source), dest, byref(style))
docs: u'''Scroll a rectangle.