Generator-based operators for asynchronous iteration. It can be seen as an asynchronous version of itertools, although some aspects are slightly different. Essentially, all the provided operators return a unified interface called a stream. A stream is an enhanced asynchronous iterable providing the following features: - Operator pipe-lining - using pipe symbol '|' - Repeatability - every iteration creates a different iterator - Safe iteration context - using 'async with' and the 'stream' method - Simplified execution - get the last element from a stream using 'await' - Slicing and indexing - using square brackets '[]' - Concatenation - using addition symbol '+'