�
��g�$ � � � d dl mZ d dlZd dlmZ d dlmZmZ d dlm Z m
Z
mZmZm
Z
mZmZ d dlmZ n
# e$ r dZY nw xY wd dlmZ d dlmZ d d lmZ d
gZ ej d� � Zdd
d�Zded � d�Z ed�� � d� � � Zd6d�Zd7d�Z d8d�Z!d9d#�Z"d:d'�Z#d;d+�Z$d<d-�Z%d=d/�Z&d>d3�Z' e ej( d4� � � � d?d5�� � Z)dS )@� )�annotationsN)� lru_cache)�chain�count)�Dict�Iterable�Iterator�List�Optional�Set�Tuple)�etree)�ttLib)�_add_method)�SVGDocument�
subset_glyphsz^glyph(\d+)$zhttp://www.w3.org/2000/svgzhttp://www.w3.org/1999/xlink)�svg�xlink�{r z}href)�maxsizec �8 � t j | t �� � S )N)�
namespaces)r �XPath�
NAMESPACES)�paths �d/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/fontTools/subset/svg.py�xpathr ! s � � �;�t�
�3�3�3�3� �tree�
etree.Element�return�Dict[str, etree.Element]c �F � d� t d� � | � � D � � S )Nc �* � i | ]}|j d |��S )�id)�attrib)�.0�els r �
<dictcomp>z(group_elements_by_id.<locals>.<dictcomp>+ s � �F�F�F�B�B�I�d�O�R�F�F�Fr z//svg:*[@id])r )r s r �group_elements_by_idr* '