public function withA11y($title = null, $desc = null)
    {
        $clone = clone $this;

        $clone->dom->documentElement->setAttribute('role', 'img');

        $ids = [];

        if ($title) {
            self::getOrCreateNode($clone->dom->documentElement, 'title', $title)->setAttribute('id', $ids[] = uniqid('svg_title_'));
        }

        if ($desc) {
            self::getOrCreateNode($clone->dom->documentElement, 'desc', $desc)->setAttribute('id', $ids[] = uniqid('svg_desc_'));
        }

        if ($ids) {
            $clone->dom->documentElement->setAttribute('aria-labelledby', implode(' ', $ids));
        }

        return $clone;
    }