public function distinctKey(callable $keySelector, callable $comparer = null): Observable
    {
        return $this->lift(function () use ($keySelector, $comparer) {
            return new DistinctOperator($keySelector, $comparer);
        });
    }