public function map(\Closure $callback, $context = []): self
    {
        $collection = new static();

        foreach ($this->props as $key => $value) {
            $collection->add($key, $callback($value, $key, $context));
        }

        return $collection;
    }