code: def seek(self, offset, from_what=0):
          
          if from_what == 0:  # From the begining
              if offset >= self.tell():
                  self.seek(offset - self.tell(), from_what=1)
              else:
                  raise NotImplementedError("Can't seek backwards")
          elif from_what == 1:  # From the cursor position
              if offset < 0:
                  raise NotImplementedError("Can't seek backwards")
              else:
                  self.read(offset)
          else:
              raise NotImplementedError("Can't seek from there")
          return self.tell()
docs: seek(offset, from_what=0) -> int.  Change stream position.
  
          Seek to byte offset pos relative to position indicated by whence:
               0  Start of stream (the default).  pos should be >= tell();
               1  Current position - negative pos not implemented;
               2  End of stream - not implemented.
          Returns the new absolute position.