code: def peek(self, n=None, constructor=list):
      
      return self.copy().take(n=n, constructor=constructor)
docs: Sees/peeks the next few items in the Stream, without removing them.
  
      Besides that this functions keeps the Stream items, it's the same to the
      ``Stream.take()`` method.
  
      See Also
      --------
      Stream.take :
        Returns the n first elements from the Stream, removing them.
  
      Note
      ----
      When applied in a StreamTeeHub, this method doesn't consume a copy.
      Data evaluation is done only once, i.e., after peeking the data is simply
      stored to be yielded again when asked for.