public function removeFilterValue(
        Result $result,
        string $filterName,
        string $value = null
    ): string {
        $urlParameters = $this->generateQueryUrlParameters($result);

        if (
            is_null($value) ||
            !isset($urlParameters[$filterName])
        ) {
            unset($urlParameters[$filterName]);
        } elseif (false !== ($key = array_search($value, $urlParameters[$filterName]))) {
            unset($urlParameters[$filterName][$key]);
        }

        return $this->createUrlByUrlParameters(
            $result,
            $urlParameters
        )['route'];
    }